public function testBefore() { $manager = new Manager(); $manager->getInitializer()->before('Common\\Module', function ($module) { $module->state = 'zzz'; }); $module = $manager->get('Common\\Module'); $this->assertSame($module->new_state, 'zzz!'); }
public function testCache() { $manager = new Manager(); $startTime = microtime(1); $manager->get('Inject\\FullClassName'); $manager->get('Inject\\ShortClassName'); $manager->get('Inject\\ByNamespace'); $manager->call('Common\\Application', 'extractModuleFromManager'); $parsingTime = microtime(1) - $startTime; $data = $manager->get('Cti\\Di\\Cache')->getData(); $manager = new Manager(); $manager->get('Cti\\Di\\Cache')->setData($data); $startTime = microtime(1); $manager->get('Inject\\FullClassName'); $manager->get('Inject\\ShortClassName'); $manager->get('Inject\\ByNamespace'); $manager->call('Common\\Application', 'extractModuleFromManager'); $cachedTime = microtime(1) - $startTime; $this->assertGreaterThan($cachedTime, $parsingTime); $this->assertNull($manager->get('Cti\\Di\\Cache')->get(2, array(3))); }
public function registerCommands(Console $console, Manager $manager) { foreach ($this->getClasses('Command') as $class) { $console->add($manager->get($class)); } }
public function testEmptyClass() { $this->setExpectedException('Exception'); $m = new Manager(); $m->get(''); }
public function extractModuleFromManager(Manager $manager) { return $manager->get('Common\\Module'); }