ArrayCacheTest.php 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. <?php
  2. namespace Doctrine\Tests\Common\Cache;
  3. use Doctrine\Common\Cache\ArrayCache;
  4. use Doctrine\Common\Cache\Cache;
  5. class ArrayCacheTest extends CacheTest
  6. {
  7. protected function _getCacheDriver()
  8. {
  9. return new ArrayCache();
  10. }
  11. public function testGetStats()
  12. {
  13. $cache = $this->_getCacheDriver();
  14. $cache->fetch('test1');
  15. $cache->fetch('test2');
  16. $cache->fetch('test3');
  17. $cache->save('test1', 123);
  18. $cache->save('test2', 123);
  19. $cache->fetch('test1');
  20. $cache->fetch('test2');
  21. $cache->fetch('test3');
  22. $stats = $cache->getStats();
  23. $this->assertEquals(2, $stats[Cache::STATS_HITS]);
  24. $this->assertEquals(5, $stats[Cache::STATS_MISSES]); // +1 for internal call to DoctrineNamespaceCacheKey
  25. $this->assertNotNull($stats[Cache::STATS_UPTIME]);
  26. $this->assertNull($stats[Cache::STATS_MEMORY_USAGE]);
  27. $this->assertNull($stats[Cache::STATS_MEMORY_AVAILABLE]);
  28. $cache->delete('test1');
  29. $cache->delete('test2');
  30. $cache->fetch('test1');
  31. $cache->fetch('test2');
  32. $cache->fetch('test3');
  33. $stats = $cache->getStats();
  34. $this->assertEquals(2, $stats[Cache::STATS_HITS]);
  35. $this->assertEquals(8, $stats[Cache::STATS_MISSES]); // +1 for internal call to DoctrineNamespaceCacheKey
  36. }
  37. protected function isSharedStorage()
  38. {
  39. return false;
  40. }
  41. }