/** * Test adding and removing compiler passes * * @return void * @author Dan Cox */ public function test_addRemovePasses() { $register = new DICompilerPassRegister(); $register->add('TestClass'); $register->add(['Test2', 'Test3']); $register->remove('Test2'); $this->assertEquals(['TestClass', 'Test3'], $register->getPasses()); }
/** * Loads registered compiler passes * * @return void * @author Dan Cox */ public function loadRegisterCompilerPasses() { $passes = DICompilerPassRegister::getPasses(); foreach ($passes as $pass) { $reflection = new \ReflectionClass($pass); $this->DI->addCompilerPass($reflection->newInstance()); } }