/**
  * @param string $key
  * @param mixed $value
  * @dataProvider hasKeyProvider
  */
 public function testHasKeyMemoryCache($key, $value)
 {
     $this->memoryCache->save($key, $value);
     $this->assertTrue($this->smartCache->hasKey($key));
 }
 /**
  * @param string $key
  * @param mixed $value
  * @dataProvider hasKeyProvider
  */
 public function testHasKeyMemoryCache($key, $value)
 {
     $this->memoryCacheMock->hasKey($key)->once()->andReturn(true);
     $this->memoryCacheMock->freeze();
     $this->fileCacheMock->hasKey($key)->never();
     $this->fileCacheMock->freeze();
     $smartCache = new SmartCache($this->fileCacheMock, $this->memoryCacheMock);
     $this->assertTrue($smartCache->hasKey($key));
     $this->memoryCacheMock->assertExpectations();
     $this->fileCacheMock->assertExpectations();
 }