Exemplo n.º 1
0
 /**
  * @dataProvider poolProvider
  * @param PoolInterface $pool
  */
 public function testGetItems(PoolInterface $pool)
 {
     $pool->clear();
     // Prep some data
     $pool->getItem('test1')->set(1);
     $pool->getItem('test2')->set(2);
     $pool->getItem('test3')->set(3);
     // Check we have 3 cache hits
     /** @var ItemCollection $items */
     $items = $pool->getItems(['test1', 'test2', 'test3']);
     $this->assertCount(3, $items);
     $index = 0;
     /** @var $item ItemInterface */
     foreach ($items as $key => $item) {
         $index++;
         $this->assertTrue($item instanceof ItemInterface);
         $this->assertTrue($item->isHit());
         $this->assertEquals('test' . $index, $key);
         $this->assertEquals($index, $item->get());
     }
     $this->assertEquals(3, $index);
     $item = $items->getItem('test2');
     $this->assertTrue($item instanceof ItemInterface);
     $this->assertEquals(2, $item->get());
     $pool->clear();
     $items = $pool->getItems(['test1', 'test2', 'test3']);
     $this->assertEquals(0, $items->count());
     $item = $items->getItem('test2');
     $this->assertNull($item);
 }