コード例 #1
0
 /**
  * @test Functional
  */
 public function findIdentifiersByTagReturnsAllIdentifiersTagedWithSpecifiedTag()
 {
     $this->setUpBackend();
     $firstIdentifier = 'identifier' . uniqid();
     $secondIdentifier = 'identifier' . uniqid();
     $thirdIdentifier = 'identifier' . uniqid();
     $tagsForFirstIdentifier = array('thisTag');
     $tagsForSecondIdentifier = array('thatTag');
     $tagsForThirdIdentifier = array('thisTag', 'thatTag');
     $this->backend->set($firstIdentifier, 'data', $tagsForFirstIdentifier);
     $this->backend->set($secondIdentifier, 'data', $tagsForSecondIdentifier);
     $this->backend->set($thirdIdentifier, 'data', $tagsForThirdIdentifier);
     $expectedResult = array($firstIdentifier, $thirdIdentifier);
     $actualResult = $this->backend->findIdentifiersByTag('thisTag');
     sort($actualResult);
     $this->assertSame($expectedResult, $actualResult);
 }
コード例 #2
0
 /**
  * @test
  */
 public function removeRemovesEntryFromCache()
 {
     for ($i = 0; $i < 10; $i++) {
         $this->backend->set('entry_' . $i, 'foo', array('tag1'));
     }
     $this->assertCount(10, $this->backend->findIdentifiersByTag('tag1'));
     $this->assertEquals('foo', $this->backend->get('entry_1'));
     $actualEntries = array();
     foreach ($this->backend as $key => $value) {
         $actualEntries[] = $key;
     }
     $this->assertCount(10, $actualEntries);
     $this->backend->remove('entry_3');
     $this->assertCount(9, $this->backend->findIdentifiersByTag('tag1'));
     $this->assertFalse($this->backend->get('entry_3'));
     $actualEntries = array();
     foreach ($this->backend as $key => $value) {
         $actualEntries[] = $key;
     }
     $this->assertCount(9, $actualEntries);
 }
コード例 #3
0
 /**
  * @test
  */
 public function findIdentifiersByTagInvokesRedis()
 {
     $this->redis->expects($this->once())->method('sMembers')->with('Foo_Cache:tag:some_tag')->will($this->returnValue(array('entry_1', 'entry_2')));
     $this->assertEquals(array('entry_1', 'entry_2'), $this->backend->findIdentifiersByTag('some_tag'));
 }