public function testCanLoadMultipleModules() { $moduleManager = new Manager(array('BarModule', 'BazModule')); $moduleManager->loadModules(); $loadedModules = $moduleManager->getLoadedModules(); $this->assertInstanceOf('BarModule\\Module', $loadedModules['BarModule']); $this->assertInstanceOf('BazModule\\Module', $loadedModules['BazModule']); $config = $moduleManager->getMergedConfig(); // use convenience method $this->assertSame('foo', $config->bar); $this->assertSame('bar', $config->baz); }
/** * Constructor * * Populates $config from the $modules "getMergedConfig" method. * * @param ModuleManager $modules * @return void */ public function __construct(ModuleManager $modules) { $this->modules = $modules; $this->config = $modules->getMergedConfig(); }
public function testCanMergeConfigFromGlob() { $moduleManager = new Manager(array('SomeModule')); $moduleManager->loadModules(); $moduleManager->getConfigListener()->mergeGlobDirectory(dirname(__DIR__) . '/_files/*.{ini,json,php,xml,yaml}'); $config = $moduleManager->getMergedConfig(false); $this->assertTrue($config['php']); }
public function testGlobMergingHonorsProvidedEnvironment() { $moduleManager = new Manager(array('SomeModule')); $options = new ListenerOptions(array('application_environment' => 'testing')); $moduleManager->setDefaultListenerOptions($options); $configListener = $moduleManager->getConfigListener(); $configListener->addConfigGlobPaths(new ArrayObject(array(__DIR__ . '/_files/good/*.ini', __DIR__ . '/_files/good/*.json', __DIR__ . '/_files/good/*.php', __DIR__ . '/_files/good/*.xml', __DIR__ . '/_files/good/*.yml'))); $moduleManager->loadModules(); // Test as object $configObject = $moduleManager->getMergedConfig(); $this->assertSame('testing', $configObject->ini); $this->assertSame('testing', $configObject->php); $this->assertSame('testing', $configObject->json); $this->assertSame('testing', $configObject->xml); $this->assertSame('testing', $configObject->yml); }
public function testCanCacheMerchedConfig() { $options = new ManagerOptions(array( 'cache_config' => true, 'cache_dir' => $this->tmpdir, )); // build the cache $moduleManager = new Manager(array('BarModule', 'BazModule'), $options); $config = $moduleManager->getMergedConfig(); $this->assertSame('foo', $config->bar); $this->assertSame('bar', $config->baz); // use the cache $moduleManager = new Manager(array('BarModule', 'BazModule'), $options); $config = $moduleManager->getMergedConfig(); $this->assertSame('foo', $config->bar); $this->assertSame('bar', $config->baz); }
public function testCanMergeConfigFromArrayOfGlobs() { $moduleManager = new Manager(array('SomeModule')); $moduleManager->getConfigListener()->addConfigGlobPaths(new \ArrayObject(array(dirname(__DIR__) . '/_files/*.ini', dirname(__DIR__) . '/_files/*.json', dirname(__DIR__) . '/_files/*.php', dirname(__DIR__) . '/_files/*.xml', dirname(__DIR__) . '/_files/*.yaml'))); $moduleManager->loadModules(); // Test as object $configObject = $moduleManager->getMergedConfig()->all; $this->assertSame('yes', $configObject->ini); $this->assertSame('yes', $configObject->php); $this->assertSame('yes', $configObject->json); $this->assertSame('yes', $configObject->xml); $this->assertTrue($configObject->yaml); }