[DependencyInjection] fixed XmlDumper (corrected validity)

This commit is contained in:
Martin Hason 2011-01-14 18:06:22 +01:00 committed by Fabien Potencier
parent 4460b49802
commit 6011073e7c
2 changed files with 9 additions and 5 deletions

View File

@ -47,8 +47,8 @@ class XmlDumper extends Dumper
$container->setAttribute('xsi:schemaLocation', 'http://www.symfony-project.org/schema/dic/services http://www.symfony-project.org/schema/dic/services/services-1.0.xsd');
$this->addParameters($container);
$this->addInterfaceInjectors($container);
$this->addServices($container);
$this->addInterfaceInjectors($container);
$this->document->appendChild($container);
$xml = $this->document->saveXML();
@ -195,8 +195,9 @@ class XmlDumper extends Dumper
$withKeys = array_keys($parameters) !== range(0, count($parameters) - 1);
foreach ($parameters as $key => $value) {
$element = $this->document->createElement($type);
if ($withKeys)
if ($withKeys) {
$element->setAttribute('key', $key);
}
if (is_array($value)) {
$element->setAttribute('type', 'collection');

View File

@ -83,6 +83,9 @@ class XmlDumperTest extends \PHPUnit_Framework_TestCase
<parameter key=\"cla\">Fo</parameter>
<parameter key=\"ss\">Class</parameter>
</parameters>
<services>
<service id=\"foo\" class=\"%cla%o%ss%\"/>
</services>
<interfaces>
<interface class=\"FooClass\">
<call method=\"setBar\">
@ -90,11 +93,11 @@ class XmlDumperTest extends \PHPUnit_Framework_TestCase
</call>
</interface>
</interfaces>
<services>
<service id=\"foo\" class=\"%cla%o%ss%\"/>
</services>
</container>
", $classBody);
$dom = new \DOMDocument();
$dom->loadXML($classBody);
$this->assertTrue($dom->schemaValidate(__DIR__ . '/../../../../../../src/Symfony/Component/DependencyInjection/Loader/schema/dic/services/services-1.0.xsd'));
}
public function testDumpAnonymousServices()