/
githubmirror
/
symfony
Обзор
Документация
Войти
/
githubmirror
/
symfony
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
8.2
src/Symfony/Component/Config/Tests/Definition/FinalizationTest.php
74 строки
2 KB
Fabien Potencier
Merge branch '4.1' into 4.2
16 янв 2019, 23:31
16 янв 2019, 23:31
c0323bd
Код
Авторство
О чём код?
<?php /* * This file is part of the Symfony package. * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Config\Tests\Definition; use PHPUnit\Framework\TestCase; use Symfony\Component\Config\Definition\Builder\TreeBuilder; use Symfony\Component\Config\Definition\NodeInterface; use Symfony\Component\Config\Definition\Processor; class FinalizationTest extends TestCase { public function testUnsetKeyWithDeepHierarchy() { $tb = new TreeBuilder('config', 'array'); $tree = $tb ->getRootNode() ->children() ->node('level1', 'array') ->canBeUnset() ->children() ->node('level2', 'array') ->canBeUnset() ->children() ->node('somevalue', 'scalar')->end() ->node('anothervalue', 'scalar')->end() ->end() ->end() ->node('level1_scalar', 'scalar')->end() ->end() ->end() ->end() ->end() ->buildTree() ; $a = [ 'level1' => [ 'level2' => [ 'somevalue' => 'foo', 'anothervalue' => 'bar', ], 'level1_scalar' => 'foo', ], ]; $b = [ 'level1' => [ 'level2' => false, ], ]; $this->assertEquals([ 'level1' => [ 'level1_scalar' => 'foo', ], ], $this->process($tree, [$a, $b])); } protected function process(NodeInterface $tree, array $configs) { $processor = new Processor(); return $processor->process($tree, $configs); } }