1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
|
--TEST--
Memcached multi fetch cas & set cas
--SKIPIF--
<?php if (!extension_loaded("memcached")) print "skip"; ?>
--FILE--
<?php
include dirname (__FILE__) . '/config.inc';
$m = memc_get_instance ();
$data = array(
'cas_test_1' => 1,
'cas_test_2' => 2,
);
foreach ($data as $key => $v) {
$m->delete($key);
}
$cas_tokens = array();
$m->setMulti($data, 10);
$actual = $m->getMulti(array_keys($data), $cas_tokens);
foreach ($data as $key => $v) {
if (is_null($cas_tokens[$key])) {
echo "missing cas token(s)\n";
echo "data: ";
var_dump($data);
echo "actual data: ";
var_dump($actual);
echo "cas tokens: ";
var_dump($cas_tokens);
return;
}
$v = $m->cas($cas_tokens[$key], $key, 11);
if (!$v) {
echo "Error setting key: $key value: 11 with CAS: ", $cas_tokens[$key], "\n";
return;
}
$v = $m->get($key);
if ($v !== 11) {
echo "Wanted $key to be 11, value is: ";
var_dump($v);
return;
}
}
if (array_keys($actual) !== array_keys($data)) {
echo "missing value(s)\n";
echo "data :";
var_dump($data);
echo "actual data: ";
var_dump($actual);
return;
}
$actual = $m->getMulti(array_keys($data), 2);
if (array_keys($actual) !== array_keys($data)) {
echo "Failed to getMulti \$cas_token passed by value (2)\n";
return;
}
$actual = $m->getMulti(array_keys($data), null);
if (array_keys($actual) !== array_keys($data)) {
echo "Failed to getMulti \$cas_token passed by value (null)\n";
return;
}
$actual = $m->getMulti(array_keys($data), $cas_tokens = array(2, 4));
if (array_keys($actual) !== array_keys($data) || $cas_tokens !== array(2, 4)) {
echo "Failed to getMulti \$cas_token passed by value (\$cas_tokens = array(2, 4))\n";
return;
}
echo "OK\n";
?>
--EXPECT--
OK
|