Ejemplo n.º 1
0
 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);
 }
Ejemplo n.º 2
0
 /**
  * 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();
 }
Ejemplo n.º 3
0
 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']);
 }
Ejemplo n.º 4
0
 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);
 }
Ejemplo n.º 5
0
    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);
    }
Ejemplo n.º 6
0
 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);
 }