From d135d8282d685d02ff68b69f1f1cde83a1124d75 Mon Sep 17 00:00:00 2001 From: Romain Neutron Date: Mon, 21 Sep 2015 17:02:29 +0200 Subject: [PATCH] [Config] Fix enum default value in Yaml dumper --- .../Component/Config/Definition/Dumper/YamlReferenceDumper.php | 2 +- .../Config/Tests/Definition/Dumper/XmlReferenceDumperTest.php | 2 ++ .../Config/Tests/Definition/Dumper/YamlReferenceDumperTest.php | 1 + .../Tests/Fixtures/Configuration/ExampleConfiguration.php | 1 + 4 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/Symfony/Component/Config/Definition/Dumper/YamlReferenceDumper.php b/src/Symfony/Component/Config/Definition/Dumper/YamlReferenceDumper.php index 83587fb49c..f9da698e09 100644 --- a/src/Symfony/Component/Config/Definition/Dumper/YamlReferenceDumper.php +++ b/src/Symfony/Component/Config/Definition/Dumper/YamlReferenceDumper.php @@ -88,7 +88,7 @@ class YamlReferenceDumper } } elseif ($node instanceof EnumNode) { $comments[] = 'One of '.implode('; ', array_map('json_encode', $node->getValues())); - $default = '~'; + $default = $node->hasDefaultValue() ? Inline::dump($node->getDefaultValue()) : '~'; } else { $default = '~'; diff --git a/src/Symfony/Component/Config/Tests/Definition/Dumper/XmlReferenceDumperTest.php b/src/Symfony/Component/Config/Tests/Definition/Dumper/XmlReferenceDumperTest.php index 699751da7a..ff043f1862 100644 --- a/src/Symfony/Component/Config/Tests/Definition/Dumper/XmlReferenceDumperTest.php +++ b/src/Symfony/Component/Config/Tests/Definition/Dumper/XmlReferenceDumperTest.php @@ -37,6 +37,7 @@ class XmlReferenceDumperTest extends \PHPUnit_Framework_TestCase return str_replace("\n", PHP_EOL, << + diff --git a/src/Symfony/Component/Config/Tests/Definition/Dumper/YamlReferenceDumperTest.php b/src/Symfony/Component/Config/Tests/Definition/Dumper/YamlReferenceDumperTest.php index 4775235e16..74b0f623f4 100644 --- a/src/Symfony/Component/Config/Tests/Definition/Dumper/YamlReferenceDumperTest.php +++ b/src/Symfony/Component/Config/Tests/Definition/Dumper/YamlReferenceDumperTest.php @@ -43,6 +43,7 @@ acme_root: - elem1 - elem2 scalar_required: ~ # Required + enum_with_default: this # One of "this"; "that" enum: ~ # One of "this"; "that" # some info diff --git a/src/Symfony/Component/Config/Tests/Fixtures/Configuration/ExampleConfiguration.php b/src/Symfony/Component/Config/Tests/Fixtures/Configuration/ExampleConfiguration.php index df43e8bb1d..68aa0c0593 100644 --- a/src/Symfony/Component/Config/Tests/Fixtures/Configuration/ExampleConfiguration.php +++ b/src/Symfony/Component/Config/Tests/Fixtures/Configuration/ExampleConfiguration.php @@ -34,6 +34,7 @@ class ExampleConfiguration implements ConfigurationInterface ->scalarNode('scalar_array_empty')->defaultValue(array())->end() ->scalarNode('scalar_array_defaults')->defaultValue(array('elem1', 'elem2'))->end() ->scalarNode('scalar_required')->isRequired()->end() + ->enumNode('enum_with_default')->values(array('this', 'that'))->defaultValue('this')->end() ->enumNode('enum')->values(array('this', 'that'))->end() ->arrayNode('array') ->info('some info')