--TEST-- Cache_Lite::Cache_Lite (hashed level 2) --INI-- track_errors=Off --FILE-- tmpDir() . '/', 'lifeTime' => 60, 'hashedDirectoryLevel' => 2 ); $Cache_Lite = new Cache_Lite($options); multipleCallCache(); // Hack to clean cache directory structure /** * rm() -- Vigorously erase files and directories. * * @param $fileglob mixed If string, must be a file name (foo.txt), glob pattern (*.txt), or directory name. * If array, must be an array of file names, glob patterns, or directories. */ function rm($fileglob) { if (is_string($fileglob)) { if (is_file($fileglob)) { return unlink($fileglob); } else if (is_dir($fileglob)) { $ok = rm("$fileglob/*"); if (! $ok) { return false; } return rmdir($fileglob); } else { $matching = glob($fileglob); if ($matching === false) { trigger_error(sprintf('No files match supplied glob %s', $fileglob), E_USER_WARNING); return false; } $rcs = array_map('rm', $matching); if (in_array(false, $rcs)) { return false; } } } else if (is_array($fileglob)) { $rcs = array_map('rm', $fileglob); if (in_array(false, $rcs)) { return false; } } else { trigger_error('Param #1 must be filename or glob pattern, or array of filenames or glob patterns', E_USER_ERROR); return false; } return true; } rm(tmpDir() . '/cache_*'); ?> --GET-- --POST-- --EXPECT-- ==> First call (cache should be missed) Cache Missed ! 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 Done ! ==> Second call (cache should be hit) Cache Hit ! 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 Done ! ==> Third call (cache should be hit) Cache Hit ! 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 Done ! ==> We remove cache Done ! ==> Fourth call (cache should be missed) Cache Missed ! 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 Done ! ==> #5 Call with another id (cache should be missed) Cache Missed ! 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 Done ! ==> We remove cache Done !