public function testHasChanged()
 {
     $tempFile = dirname(__FILE__) . '/temp/foo.txt';
     @unlink($tempFile);
     $fw = fopen($tempFile, "w");
     fwrite($fw, "test");
     fclose($fw);
     clearstatcache();
     $dependency = new CDirectoryCacheDependency(dirname($tempFile));
     $dependency->evaluateDependency();
     $str = serialize($dependency);
     // test directory not changed
     sleep(2);
     $dependency = unserialize($str);
     $this->assertFalse($dependency->hasChanged);
     // change file
     $fw = fopen($tempFile, "w");
     fwrite($fw, "test again");
     fclose($fw);
     clearstatcache();
     // test file changed
     sleep(2);
     $dependency->evaluateDependency();
     $dependency = unserialize($str);
     $this->assertTrue($dependency->hasChanged);
     @unlink($tempFile);
 }
 public function generateDependentData()
 {
     self::$generateDependentDataCalled++;
     return parent::generateDependentData();
 }