Exemplo n.º 1
0
 /**
  * @test
  * @dataProvider getSecsToExpireProvider
  */
 public function getSecsToExpireShouldReturnDoesNotEpired($seconds, $minSecs, $maxSecs)
 {
     $keyValue = new KeyValue('irrelevantKey', 'irrelevantValue', 'irrelevantNamespace');
     $keyValue->setExpirationInSeconds($seconds);
     $secsToExpire = $keyValue->getSecsToExpire();
     $this->assertThat($minSecs, $this->lessThanOrEqual($secsToExpire));
     $this->assertThat($maxSecs, $this->greaterThanOrEqual($secsToExpire));
 }
 /**
  * {@inheritDoc}
  */
 public function set($key, $value, $namespace = KeyValue::DEFAULT_NAMESPACE, $expirationDateTime = KeyValue::NO_EXPIRE)
 {
     $effectiveKey = $this->buildKey($key, $namespace);
     $this->redisClient->set($effectiveKey, serialize($value));
     $keyValue = new KeyValue($key, $value, $namespace, $expirationDateTime);
     if ($expirationDateTime !== KeyValue::NO_EXPIRE) {
         $this->redisClient->expire($effectiveKey, $keyValue->getSecsToExpire());
     }
     return $keyValue;
 }