require_once dirname(__FILE__) . '/../lib/redis.pool.php'; require_once dirname(__FILE__) . '/../lib/redis_list.peer.php'; require_once dirname(__FILE__) . '/test.lib.php'; # Config redis_pool::add_servers(array('master' => array('127.0.0.1', 6379))); class mock_list_peer extends redis_list_peer { } # Tests $p = new mock_list_peer(); $p->clear('list'); $p->insert('list', array('id' => 1, 'type' => 'image')); $p->insert('list', array('id' => 2, 'type' => 'text')); $p->insert('list', array('id' => 3, 'type' => 'video')); $p->insert('list', array('id' => 4, 'type' => 'video')); $v = $p->get_list('list'); test::assert_value(count($v), 4, 'Adding, reading'); test::assert_value($p->length('list'), 4); test::assert_value($v[1]['id'], 2); test::assert_value($v[3]['type'], 'video'); $v = $p->get_list('list', array(), 1); test::assert_value(count($v), 1); test::assert_value($v[0]['id'], 1); test::assert_value($v[0]['type'], 'image'); $v = $p->get_list('list', array(), 1, 2); test::assert_value(count($v), 1); test::assert_value($v[0]['id'], 3); test::assert_value($v[0]['type'], 'video'); $p->clear('list'); $p->insert('list', array('id' => 1, 'type' => 'image'), false); $p->insert('list', array('id' => 2, 'type' => 'text'), false);
<?php require_once 'common.php'; class mock_list_peer extends redis_list_peer { } # Benchmark $p = new mock_list_peer(); bench_mark::start('Adding 10000 items to list'); $p->clear('list'); for ($i = 0; $i < 10000; $i++) { $p->insert('list', array('value' => md5($i), 'type' => rand(0, 1))); } bench_mark::stop(); bench_mark::start('Simple list retrievement 10000 times'); for ($i = 0; $i < 10000; $i++) { $p->get_list('list', null, rand(10, 20), rand(0, 500)); } bench_mark::stop();