_removeCacheDir($tmpDir); mkdir($tmpDir); $this->cacheDir = $tmpDir; } protected function _removeCacheDir($dir) { if (!file_exists($dir)) { return true; } if (!is_dir($dir) || is_link($dir)) { return unlink($dir); } foreach (scandir($dir) as $item) { if ($item == '.' || $item == '..') { continue; } $this->_removeCacheDir($dir . '/' . $item); } return rmdir($dir); } /** * tests the Memory Manager creation * */ public function testCreation() { /** 'None' backend */ $memoryManager = Zend_Memory::factory('None'); $this->assertTrue($memoryManager instanceof Zend_Memory_Manager); unset($memoryManager); /** 'File' backend */ $backendOptions = array('cache_dir' => $this->cacheDir); // Directory where to put the cache files $memoryManager = Zend_Memory::factory('File', $backendOptions); $this->assertTrue($memoryManager instanceof Zend_Memory_Manager); unset($memoryManager); } /** * @group ZF-9883 * @dataProvider Zend_Memory_MemoryTest::providerCacheBackend */ public function testFactoryCacheBackendStandards($backend) { try { $memoryManager = Zend_Memory::factory($backend); } catch(Zend_Cache_Exception $exception) { $this->markTestSkipped($exception->getMessage()); } $this->assertTrue($memoryManager instanceof Zend_Memory_Manager); } /** * @group ZF-9883 */ public function providerCacheBackend() { return array( array('Apc'), array('File'), array('Libmemcached'), array('Memcached'), array('Sqlite'), array('TwoLevels'), array('Xcache'), array('ZendPlatform'), array('ZendServer_Disk'), array('ZendServer_ShMem') ); } } if (PHPUnit_MAIN_METHOD == 'Zend_Memory_MemoryTest::main') { Zend_Memory_MemoryTest::main(); }