public function testGetInstanceWithWrongConfiguredParameterThrowsException() { $this->setExpectedException('rg\\injektor\\InjectionException', 'Invalid argument without class typehint class: [rg\\injektor\\DICTestClassNoTypeHint] method: [__construct] argument: [two]'); $config = new Configuration(null, ''); $config->setClassConfig('rg\\injektor\\DICTestClassNoTypeHint', array('params' => array('one' => array('value' => 'foo')))); $dic = $this->getContainer($config); $dic->getInstanceOfClass('rg\\injektor\\DICTestClassNoTypeHint'); }
public function testSetConfig() { $config = new Configuration(null, ''); $config->setClassConfig('foo', array('bar')); $this->assertEquals(array('bar'), $config->getClassConfig('foo')); }
public function testConfiguredProvidedByWithParameters() { $config = new Configuration(null, __DIR__ . '/_factories'); $config->setClassConfig('rg\\injektor\\DICTestInterface', ['provider' => ['class' => 'rg\\injektor\\DICSimpleTestProvider', 'parameters' => ['name' => 'impl1']]]); $dic = $this->getContainer($config); /** @var DICTestInterfaceDependency $instance */ $instance = $dic->getInstanceOfClass('rg\\injektor\\DICTestInterfaceDependency'); $this->assertInstanceOf('rg\\injektor\\DICTestSimpleProvidedDecorator', $instance->dependency); $this->assertInstanceOf('rg\\injektor\\DICTestProvidedInterfaceImpl1', $instance->dependency->getProvidedClass()); }