parent
c025ca9266
commit
6ab4ce942b
5 changed files with 708 additions and 336 deletions
1017
composer.lock
generated
1017
composer.lock
generated
File diff suppressed because it is too large
Load diff
|
@ -1,8 +0,0 @@
|
||||||
{
|
|
||||||
"version": 2,
|
|
||||||
"services": {
|
|
||||||
"foo": {
|
|
||||||
"image": "bar"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
4
spec/fixtures/read-configuration/invalid.yml
vendored
Normal file
4
spec/fixtures/read-configuration/invalid.yml
vendored
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
version
|
||||||
|
services:
|
||||||
|
foo:
|
||||||
|
image: bar
|
|
@ -19,7 +19,7 @@ describe('Reading configuration', function () {
|
||||||
|
|
||||||
it('should report if YAML is invalid', function () {
|
it('should report if YAML is invalid', function () {
|
||||||
expect(function () {
|
expect(function () {
|
||||||
readConfiguration(__DIR__.'/fixtures/read-configuration/invalid.json');
|
readConfiguration(__DIR__.'/fixtures/read-configuration/invalid.yml');
|
||||||
})
|
})
|
||||||
->toThrow(new InvalidArgumentException());
|
->toThrow(new InvalidArgumentException());
|
||||||
});
|
});
|
||||||
|
|
|
@ -5,6 +5,7 @@ namespace PMSIpilot\DockerComposeViz;
|
||||||
use Fhaculty\Graph\Edge;
|
use Fhaculty\Graph\Edge;
|
||||||
use Fhaculty\Graph\Graph;
|
use Fhaculty\Graph\Graph;
|
||||||
use Fhaculty\Graph\Vertex;
|
use Fhaculty\Graph\Vertex;
|
||||||
|
use InvalidArgumentException;
|
||||||
use Symfony\Component\Console\Output\OutputInterface;
|
use Symfony\Component\Console\Output\OutputInterface;
|
||||||
use Symfony\Component\Yaml\Exception\ParseException;
|
use Symfony\Component\Yaml\Exception\ParseException;
|
||||||
use Symfony\Component\Yaml\Yaml;
|
use Symfony\Component\Yaml\Yaml;
|
||||||
|
@ -15,10 +16,6 @@ const WITHOUT_PORTS = 4;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @internal
|
* @internal
|
||||||
*
|
|
||||||
* @param OutputInterface $output
|
|
||||||
*
|
|
||||||
* @return callable
|
|
||||||
*/
|
*/
|
||||||
function logger(OutputInterface $output): callable
|
function logger(OutputInterface $output): callable
|
||||||
{
|
{
|
||||||
|
@ -31,19 +28,17 @@ function logger(OutputInterface $output): callable
|
||||||
* @public
|
* @public
|
||||||
*
|
*
|
||||||
* @param string $path Path to a YAML file
|
* @param string $path Path to a YAML file
|
||||||
*
|
|
||||||
* @return array
|
|
||||||
*/
|
*/
|
||||||
function readConfiguration(string $path): array
|
function readConfiguration(string $path): array
|
||||||
{
|
{
|
||||||
if (false === file_exists($path)) {
|
if (false === file_exists($path)) {
|
||||||
throw new \InvalidArgumentException(sprintf('File "%s" does not exist', $path));
|
throw new InvalidArgumentException(sprintf('File "%s" does not exist', $path));
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
return Yaml::parse(file_get_contents($path));
|
return Yaml::parse(file_get_contents($path));
|
||||||
} catch (ParseException $exception) {
|
} catch (ParseException $exception) {
|
||||||
throw new \InvalidArgumentException(sprintf('File "%s" does not contain valid YAML', $path));
|
throw new InvalidArgumentException(sprintf('File "%s" does not contain valid YAML', $path), $exception->getCode(), $exception);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -461,8 +456,6 @@ function addNetwork(Graph $graph, string $name, string $type = null)
|
||||||
* @param string|null $alias Alias associated to the linked element
|
* @param string|null $alias Alias associated to the linked element
|
||||||
* @param bool|null $bidirectional Biderectional or not
|
* @param bool|null $bidirectional Biderectional or not
|
||||||
* @param bool|null $condition Wether the alias represents a condition or not
|
* @param bool|null $condition Wether the alias represents a condition or not
|
||||||
*
|
|
||||||
* @return Edge\Directed
|
|
||||||
*/
|
*/
|
||||||
function addRelation(Vertex $from, Vertex $to, string $type, string $alias = null, bool $bidirectional = false, bool $condition = false): Edge\Directed
|
function addRelation(Vertex $from, Vertex $to, string $type, string $alias = null, bool $bidirectional = false, bool $condition = false): Edge\Directed
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue