public function testClear() { $r = new cfhCompile_ClassRegistry(); $this->assertNull($r->fetch('Test')); $r->register($this->mockClass); $this->assertSame($this->mockClass, $r->fetch('Test')); $this->assertEquals(1, $r->count()); $r->clear(); $this->assertNull($r->fetch('Test')); $this->assertEquals(0, $r->count()); }
protected function checkDependancysAndWrite(cfhCompile_Class_Interface $class) { $canWrite = TRUE; foreach ($class->getDependancys() as $depend) { if (!isset($this->classesWritten[$depend])) { $canWrite = FALSE; if (!isset($this->classChildren[$depend])) { $this->classChildren[$depend] = array(); } $this->classChildren[$depend][] = $class->getName(); } } if ($canWrite) { $this->write($class); if (isset($this->classChildren[$class->getName()])) { foreach ($this->classChildren[$class->getName()] as $child) { $this->checkDependancysAndWrite($this->classRegistry->fetch($child)); } } unset($this->classChildren[$class->getName()]); } }