示例#1
0
 public function testLoadConfigThroughArgumentAlias()
 {
     $injector = new Injector(ConfigFactory::createFromArray(['standardAliases' => ['BrightNucleus\\Config\\ConfigInterface' => 'BrightNucleus\\Config\\Config', 'BNConfigFoo' => 'BrightNucleus\\Injector\\Test\\ConfigClass'], 'argumentProviders' => ['config' => ['interface' => ConfigInterface::class, 'mappings' => ['BrightNucleus\\Injector\\Test\\ConfigClass' => function ($alias, $interface) {
         return ConfigFactory::createSubConfig(__DIR__ . '/fixtures/ConfigFile.php', substr(strrchr($alias, '\\'), 1));
     }]]]]));
     $obj = $injector->make('BNConfigFoo');
     $this->assertEquals('testValue', $obj->check('randomString'));
     $this->assertEquals('testValue', $obj->check('randomString'));
     $this->assertEquals(42, $obj->check('positiveInteger'));
     $this->assertEquals(-256, $obj->check('negativeInteger'));
     $this->assertEquals(true, $obj->check('positiveBoolean'));
     $this->assertEquals(false, $obj->check('negativeBoolean'));
 }
 /**
  * Test whether a subconfig can be immediately created through the ConfigFactory.
  *
  * @covers \BrightNucleus\Config\ConfigFactory::createSubConfig
  *
  * @since  0.4.5
  */
 public function testCreateSubConfig()
 {
     $config = ConfigFactory::createSubConfig(__DIR__ . '/fixtures/deep_config_file.php', 'vendor', 'package');
     $this->assertInstanceOf('\\BrightNucleus\\Config\\ConfigInterface', $config);
     $this->assertInstanceOf('\\BrightNucleus\\Config\\AbstractConfig', $config);
     $this->assertInstanceOf('\\BrightNucleus\\Config\\Config', $config);
     $this->assertTrue($config->hasKey('section_1', 'test_key_1'));
 }