Пример #1
0
 public function testCaching()
 {
     $this->_themeObject->getCSSURL("style.css");
     $themename = $this->_themeObject->__toString();
     $pathname = "cache/themes/{$themename}/css/style.css";
     // test if it's in the local cache
     $this->assertTrue(isset($this->_themeObject->_cssCache['style.css']));
     $this->assertEquals($this->_themeObject->_cssCache['style.css'], $pathname);
     // destroy object
     $this->_themeObject->__destruct();
     unset($this->_themeObject);
     // now recreate object
     SugarThemeRegistry::add($this->_themeDef);
     $this->_themeObject = SugarThemeRegistry::get($this->_themeDef['dirName']);
     // should still be in local cache
     $this->assertTrue(isset($this->_themeObject->_cssCache['style.css']));
     $this->assertEquals($this->_themeObject->_cssCache['style.css'], $pathname);
     // now, let's tell the theme we want to clear the cache on destroy
     $this->_themeObject->clearCache();
     // destroy object
     $this->_themeObject->__destruct();
     unset($this->_themeObject);
     // now recreate object
     SugarThemeRegistry::add($this->_themeDef);
     $this->_themeObject = SugarThemeRegistry::get($this->_themeDef['dirName']);
     // should not be in local cache
     $this->assertFalse(isset($this->_themeObject->_cssCache['style.css']));
 }