You are here

public function XmlFileLoaderTest::testLoadImports in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 vendor/symfony/dependency-injection/Tests/Loader/XmlFileLoaderTest.php \Symfony\Component\DependencyInjection\Tests\Loader\XmlFileLoaderTest::testLoadImports()

File

vendor/symfony/dependency-injection/Tests/Loader/XmlFileLoaderTest.php, line 117

Class

XmlFileLoaderTest

Namespace

Symfony\Component\DependencyInjection\Tests\Loader

Code

public function testLoadImports() {
  $container = new ContainerBuilder();
  $resolver = new LoaderResolver(array(
    new IniFileLoader($container, new FileLocator(self::$fixturesPath . '/xml')),
    new YamlFileLoader($container, new FileLocator(self::$fixturesPath . '/xml')),
    $loader = new XmlFileLoader($container, new FileLocator(self::$fixturesPath . '/xml')),
  ));
  $loader
    ->setResolver($resolver);
  $loader
    ->load('services4.xml');
  $actual = $container
    ->getParameterBag()
    ->all();
  $expected = array(
    'a string',
    'foo' => 'bar',
    'values' => array(
      0,
      'integer' => 4,
      100 => null,
      'true',
      true,
      false,
      'on',
      'off',
      'float' => 1.3,
      1000.3,
      'a string',
      array(
        'foo',
        'bar',
      ),
    ),
    'mixedcase' => array(
      'MixedCaseKey' => 'value',
    ),
    'constant' => PHP_EOL,
    'bar' => '%foo%',
    'imported_from_ini' => true,
    'imported_from_yaml' => true,
  );
  $this
    ->assertEquals(array_keys($expected), array_keys($actual), '->load() imports and merges imported files');

  // Bad import throws no exception due to ignore_errors value.
  $loader
    ->load('services4_bad_import.xml');
}