1
0
mirror of https://github.com/mrclay/minify.git synced 2025-02-24 00:44:32 +01:00
minify/min_unit_tests/test_Minify_Cache_Memcache.php
2012-09-30 17:51:34 -04:00

50 lines
1.4 KiB
PHP

<?php
require_once '_inc.php';
function test_Minify_Cache_Memcache()
{
$prefix = 'Minify_Cache_Memcache : ';
$thisFileActive = (__FILE__ === realpath($_SERVER['SCRIPT_FILENAME']));
if (! function_exists('memcache_set')) {
if ($thisFileActive) {
echo "NOTE: {$prefix}PHP lacks memcache support\n";
}
return;
}
$mc = new Memcache;
if (! @$mc->connect('localhost', 11211)) {
if ($thisFileActive) {
echo "NOTE: {$prefix}Could not connect to localhost:11211\n";
}
return;
}
$data = str_repeat(md5(time()) . 'í', 100); // 3400 bytes in UTF-8
$id = 'Minify_test_memcache';
$cache = new Minify_Cache_Memcache($mc);
assertTrue(true === $cache->store($id, $data), $prefix . 'store');
assertTrue(countBytes($data) === $cache->getSize($id), $prefix . 'getSize');
assertTrue(true === $cache->isValid($id, $_SERVER['REQUEST_TIME'] - 10), $prefix . 'isValid');
ob_start();
$cache->display($id);
$displayed = ob_get_contents();
ob_end_clean();
assertTrue($data === $displayed, $prefix . 'display');
assertTrue($data === $cache->fetch($id), $prefix . 'fetch');
if (function_exists('gzencode')) {
$data = gzencode($data);
$id .= ".gz";
$cache->store($id, $data);
assertTrue($data === $cache->fetch($id), $prefix . 'store/fetch gzencoded string');
}
}
test_Minify_Cache_Memcache();