[ Index ]

PHP Cross Reference of Limb3

title

Body

[close]

/cache/tests/cases/ -> lmbCacheCompositePersisterTest.class.php (source)

   1  <?php
   2  /*
   3   * Limb PHP Framework
   4   *
   5   * @link http://limb-project.com 
   6   * @copyright  Copyright &copy; 2004-2007 BIT(http://bit-creative.com)
   7   * @license    LGPL http://www.gnu.org/copyleft/lesser.html 
   8   */
   9  lmb_require('limb/cache/src/lmbCachePersister.interface.php');
  10  lmb_require('limb/cache/src/lmbCacheMemoryPersister.class.php');
  11  lmb_require('limb/cache/src/lmbCacheCompositePersister.class.php');
  12  
  13  Mock :: generate('lmbCachePersister', 'MockCachePersister');
  14  
  15  class lmbCacheCompositePersisterTest extends UnitTestCase
  16  {
  17    var $cache;
  18  
  19    function setUp()
  20    {
  21      $this->cache = new lmbCacheCompositePersister();
  22    }
  23  
  24    function testGetFailure()
  25    {
  26      $this->assertEqual($this->cache->get(1, 'group'), LIMB_CACHE_NULL_RESULT);
  27    }
  28  
  29    function testGetSuccess()
  30    {
  31      $p1 = new MockCachePersister();
  32      $p2 = new MockCachePersister();
  33  
  34      $this->cache->registerPersister($p1);
  35      $this->cache->registerPersister($p2);
  36  
  37      $p1->expectOnce('get', array($key = 1, $group = 'some_group'));
  38      $p1->setReturnValue('get', $value = 'value');
  39  
  40      $p2->expectNever('get');
  41  
  42      $this->assertEqual($value, $this->cache->get($key, $group));
  43    }
  44  
  45    function testGetSuccessCacheValueForUpperPersister()
  46    {
  47      $p1 = new MockCachePersister();
  48      $p2 = new MockCachePersister();
  49  
  50      $this->cache->registerPersister($p1);
  51      $this->cache->registerPersister($p2);
  52  
  53      $p1->expectOnce('get');
  54      $p1->setReturnValue('get', LIMB_CACHE_NULL_RESULT, array($key = 1, $group = 'some_group'));
  55  
  56      $p2->expectOnce('get');
  57      $p2->setReturnValue('get', $value = 'value', array($key, $group));
  58  
  59      $p1->expectOnce('put', array($key, $value, $group));
  60  
  61      $this->assertEqual($value, $this->cache->get($key, $group));
  62    }
  63  
  64    function testPutValue()
  65    {
  66      $p1 = new MockCachePersister();
  67      $p2 = new MockCachePersister();
  68  
  69      $this->cache->registerPersister($p1);
  70      $this->cache->registerPersister($p2);
  71  
  72      $p1->expectOnce('put', array($key = 1, $value = 'whatever', $group = 'some_group'));
  73      $p2->expectOnce('put', array($key, $value, $group));
  74  
  75      $this->cache->put($key, $value, $group);
  76    }
  77  
  78    function testFlushValue()
  79    {
  80      $p1 = new MockCachePersister();
  81      $p2 = new MockCachePersister();
  82  
  83      $this->cache->registerPersister($p1);
  84      $this->cache->registerPersister($p2);
  85  
  86      $p1->expectOnce('flushValue', array($key = 1, $group = 'some_group'));
  87      $p2->expectOnce('flushValue', array($key, $group));
  88  
  89      $this->cache->flushValue($key, $group);
  90    }
  91  
  92    function testFlushGroup()
  93    {
  94      $p1 = new MockCachePersister();
  95      $p2 = new MockCachePersister();
  96  
  97      $this->cache->registerPersister($p1);
  98      $this->cache->registerPersister($p2);
  99  
 100      $p1->expectOnce('flushGroup', array($group = 'some_group'));
 101      $p2->expectOnce('flushGroup', array($group));
 102  
 103      $this->cache->flushGroup($group);
 104    }
 105  
 106    function testFlushAll()
 107    {
 108      $p1 = new MockCachePersister();
 109      $p2 = new MockCachePersister();
 110  
 111      $this->cache->registerPersister($p1);
 112      $this->cache->registerPersister($p2);
 113  
 114      $p1->expectOnce('flushAll', array());
 115      $p2->expectOnce('flushAll', array());
 116  
 117      $this->cache->flushAll();
 118    }
 119  
 120    function testRealGet()
 121    {
 122      $p1 = new lmbCacheMemoryPersister();
 123      $p2 = new lmbCacheMemoryPersister();
 124      $p3 = new lmbCacheMemoryPersister();
 125  
 126      $p3->put($key = 1, $value='yahoo', $group = 'group');
 127  
 128      $this->cache->registerPersister($p1);
 129      $this->cache->registerPersister($p2);
 130      $this->cache->registerPersister($p3);
 131  
 132      $cache_value = $this->cache->get($key, $group);
 133  
 134      $this->assertEqual($value, $cache_value);
 135    }
 136  }
 137  
 138  ?>


Generated: Sat Nov 22 03:48:54 2008 Cross-referenced by PHPXref 0.7