* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Cache\Tests\Simple; use Symfony\Component\Cache\Simple\FilesystemCache; use Symfony\Component\Cache\Simple\TraceableCache; /** * @group time-sensitive */ class TraceableCacheTest extends CacheTestCase { protected $skippedTests = array( 'testPrune' => 'TraceableCache just proxies', ); public function createSimpleCache($defaultLifetime = 0) { return new TraceableCache(new FilesystemCache('', $defaultLifetime)); } public function testGetMissTrace() { $pool = $this->createSimpleCache(); $pool->get('k'); $calls = $pool->getCalls(); $this->assertCount(1, $calls); $call = $calls[0]; $this->assertSame('get', $call->name); $this->assertSame(array('k' => false), $call->result); $this->assertSame(0, $call->hits); $this->assertSame(1, $call->misses); $this->assertNotEmpty($call->start); $this->assertNotEmpty($call->end); } public function testGetHitTrace() { $pool = $this->createSimpleCache(); $pool->set('k', 'foo'); $pool->get('k'); $calls = $pool->getCalls(); $this->assertCount(2, $calls); $call = $calls[1]; $this->assertSame(1, $call->hits); $this->assertSame(0, $call->misses); } public function testGetMultipleMissTrace() { $pool = $this->createSimpleCache(); $pool->set('k1', 123); $values = $pool->getMultiple(array('k0', 'k1')); foreach ($values as $value) { } $calls = $pool->getCalls(); $this->assertCount(2, $calls); $call = $calls[1]; $this->assertSame('getMultiple', $call->name); $this->assertSame(array('k1' => true, 'k0' => false), $call->result); $this->assertSame(1, $call->misses); $this->assertNotEmpty($call->start); $this->assertNotEmpty($call->end); } public function testHasMissTrace() { $pool = $this->createSimpleCache(); $pool->has('k'); $calls = $pool->getCalls(); $this->assertCount(1, $calls); $call = $calls[0]; $this->assertSame('has', $call->name); $this->assertSame(array('k' => false), $call->result); $this->assertNotEmpty($call->start); $this->assertNotEmpty($call->end); } public function testHasHitTrace() { $pool = $this->createSimpleCache(); $pool->set('k', 'foo'); $pool->has('k'); $calls = $pool->getCalls(); $this->assertCount(2, $calls); $call = $calls[1]; $this->assertSame('has', $call->name); $this->assertSame(array('k' => true), $call->result); $this->assertNotEmpty($call->start); $this->assertNotEmpty($call->end); } public function testDeleteTrace() { $pool = $this->createSimpleCache(); $pool->delete('k'); $calls = $pool->getCalls(); $this->assertCount(1, $calls); $call = $calls[0]; $this->assertSame('delete', $call->name); $this->assertSame(array('k' => true), $call->result); $this->assertSame(0, $call->hits); $this->assertSame(0, $call->misses); $this->assertNotEmpty($call->start); $this->assertNotEmpty($call->end); } public function testDeleteMultipleTrace() { $pool = $this->createSimpleCache(); $arg = array('k0', 'k1'); $pool->deleteMultiple($arg); $calls = $pool->getCalls(); $this->assertCount(1, $calls); $call = $calls[0]; $this->assertSame('deleteMultiple', $call->name); $this->assertSame(array('keys' => $arg, 'result' => true), $call->result); $this->assertSame(0, $call->hits); $this->assertSame(0, $call->misses); $this->assertNotEmpty($call->start); $this->assertNotEmpty($call->end); } public function testTraceSetTrace() { $pool = $this->createSimpleCache(); $pool->set('k', 'foo'); $calls = $pool->getCalls(); $this->assertCount(1, $calls); $call = $calls[0]; $this->assertSame('set', $call->name); $this->assertSame(array('k' => true), $call->result); $this->assertSame(0, $call->hits); $this->assertSame(0, $call->misses); $this->assertNotEmpty($call->start); $this->assertNotEmpty($call->end); } public function testSetMultipleTrace() { $pool = $this->createSimpleCache(); $pool->setMultiple(array('k' => 'foo')); $calls = $pool->getCalls(); $this->assertCount(1, $calls); $call = $calls[0]; $this->assertSame('setMultiple', $call->name); $this->assertSame(array('keys' => array('k'), 'result' => true), $call->result); $this->assertSame(0, $call->hits); $this->assertSame(0, $call->misses); $this->assertNotEmpty($call->start); $this->assertNotEmpty($call->end); } } __halt_compiler();----SIGNATURE:----dfJZALWfzokR6ZCsjmcpUTzHBxkG49SNAlOkDa/js0vkN+DCwZNrKMpS+ZGHHkqMX5A1L4XZ094Y7xhOqDXm8xktHC+PG1y+qrxJmuXkUZbUKuqYu/It/RCExxfSM9C+Eoi02m/reIkj8K+f8PRvFwX8x2eAXE317o6x5REHTPMLnHnPLe7E7Y/3HpdfVum7968IKq4Pu6Q/djBUPhQYl1KQsULL8v+aqb6UVc+d5cAzRoTVDwWyf/BKisaJ/FRLlbW0eCUbEKnEFR3kkI/fYpScCtxLuJ2n6sHQux3j8Qpiu2G2jnTG6hGpEYlJlHuFkv4iVcSJi2K9ebjUVgyEQBAQg3DMAhNDkuhirhL1i847bEd5s+saYTick6E5e/34O+jBy4DsfJFAHkD+Ge9jsm2U2q+duFCn9AwPtOBwvL/59xQ+tg42lx24/5SUCDVJd0q8z63efiQeaSwmE9Kem/CN1F5MC/YG/MaqgOwoPT8B7FXvZVQBeMrxa4FuvXIjPaIc569Orn7cA+XCPud+lTbWuh7For6M0ftJc0qki7saaM+khCe4nHNW9krsR0OVzdqa1JgUWF1N4Sx03TpdREU0fiiM/eAlHSTi4KFMbYLDOb1bs1W/2KX9FD37a8yOF6couF00PhXCDVCCH6u88nCxORLrL4/0IM3QVXrqsSc=----ATTACHMENT:----NDc4NjUyNTUyMDQxNTY0MiAzMTUzMDkwOTA0MjQ1ODg3IDE5MjU2NTA0NTMzNDYwNzU=