<?php function v() { //call_user_func_array('var_dump', func_get_args()); } include '../../vendor/autoload.php'; use Requtize\Config\Config; use Requtize\Config\Loader\PhpLoader; use Requtize\Config\Loader\IniLoader; use Requtize\Config\Loader\YamlLoader; $config1 = new Config(); $config1->appendFromLoader(new PhpLoader(realpath('../resources/full-same-php.php'))); $config2 = new Config(); $config2->appendFromLoader(new IniLoader(realpath('../resources/full-same-ini.ini'))); $config3 = new Config(); $config3->appendFromLoader(new YamlLoader(realpath('../resources/full-same-yaml.yaml'))); v('PHP', $config1->all(), 'INI', $config2->all(), 'YAML', $config3->all()); v('--', '--', '----------------------------------------------------', '--', '--', $config1->get('float'), $config1->get('string'), $config1->get('first.keyTwo'), $config1->get('first.innerOne.innerTwo.innerThree'), $config1->get('database.bkp2.pass')); v('--', '--', '----------------------------------------------------', '--', '--', $config2->get('float'), $config2->get('string'), $config2->get('first.keyTwo'), $config2->get('first.innerOne.innerTwo.innerThree'), $config2->get('database.bkp2.pass')); v('--', '--', '----------------------------------------------------', '--', '--', $config3->get('float'), $config3->get('string'), $config3->get('first.keyTwo'), $config3->get('first.innerOne.innerTwo.innerThree'), $config3->get('database.bkp2.pass')); v('--', '--', '------------------------MERGED-CONFIGS----------------------------', '--', '--', $config1->merge($config2)->merge($config3)->all()); //$config1->setCacheFilepath(__DIR__.'/!cache-file')->saveToCache(); echo 'asd'; $configCached = new Config(__DIR__ . '/!cache-file'); $configCached->appendFromLoader(new PhpLoader(realpath('../resources/full-same-php.php'))); $configCached->appendFromLoader(new IniLoader(realpath('../resources/full-same-ini.ini'))); $configCached->appendFromLoader(new YamlLoader(realpath('../resources/full-same-yaml.yaml'))); v('--', '--', '------------------------CACHED-CONFIGS----------------------------', '--', '--', $configCached->all()); $configCached->saveToCache();
public function testResolveImports() { $config = new Config(); $file1 = <<<EOF <?php return [ 'child1' => 'value-from-child-1' ]; EOF; $child1 = pathinfo($this->createTmpFile($file1), PATHINFO_BASENAME); $file2 = <<<EOF <?php return [ 'child2' => 'value-from-child-2' ]; EOF; $child2 = pathinfo($this->createTmpFile($file2), PATHINFO_BASENAME); $file3 = <<<EOF <?php return [ 'child3' => 'value-from-child-3' ]; EOF; $child3 = pathinfo($this->createTmpFile($file3), PATHINFO_BASENAME); $file4 = <<<EOF <?php return [ 'child4' => 'value-from-child-4' ]; EOF; $child4 = pathinfo($this->createTmpFile($file4), PATHINFO_BASENAME); $file = <<<EOF <?php return [ 'parent' => 'value-from-parent', 'imports' => [ 'files' => [ '{$child1}', '{$child2}', '{$child3}', '{$child4}' ] ] ]; EOF; $path = $this->createTmpFile($file); $config->appendFromLoader(new PhpLoader($path)); $this->assertEquals('value-from-parent', $config->get('parent')); $this->assertEquals('value-from-child-1', $config->get('child1')); $this->assertEquals('value-from-child-2', $config->get('child2')); $this->assertEquals('value-from-child-3', $config->get('child3')); $this->assertEquals('value-from-child-4', $config->get('child4')); }