public function testInjectToProperties() { $obj = $this->container->newInstance('Fixture\\InjectToProperties', ['arg1', 'arg2']); $this->assertEquals('arg1', $obj->arg1); $this->assertSame($this->container['cfg'], $obj->cfg); $this->assertEquals($this->container['num'], $obj->number); $this->assertEquals($this->container['num'], $obj->number2); $this->assertEquals('arg2', $obj->arg2); $this->assertSame($this->container[$this->momongaId], $obj->momonga); }
public function testWrapStatic() { $c = new Container(); $c->wrap('Fixture\\Wrapped', ['psps'], function ($invocation, $args) { list($a) = $args; ++$a; return $invocation($a); }); $wrapped = $c->newInstance('Fixture\\Wrapped'); $this->assertEquals(42, $wrapped::psps(20)); }