|
@@ -47,6 +47,20 @@ class StringSetTest extends PredisCommandTestCase
|
|
|
$this->assertSame($expected, $command->getArguments());
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * @group disconnected
|
|
|
+ */
|
|
|
+ public function testFilterArgumentsRedisWithModifiers()
|
|
|
+ {
|
|
|
+ $arguments = array('foo', 'bar', 'EX', '10', 'NX');
|
|
|
+ $expected = array('foo', 'bar', 'EX', '10', 'NX');
|
|
|
+
|
|
|
+ $command = $this->getCommand();
|
|
|
+ $command->setArguments($arguments);
|
|
|
+
|
|
|
+ $this->assertSame($expected, $command->getArguments());
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* @group disconnected
|
|
|
*/
|
|
@@ -66,4 +80,57 @@ class StringSetTest extends PredisCommandTestCase
|
|
|
$this->assertSame(1, $redis->exists('foo'));
|
|
|
$this->assertSame('bar', $redis->get('foo'));
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * @group connected
|
|
|
+ * @requiresRedisVersion >= 2.6.12
|
|
|
+ */
|
|
|
+ public function testSetStringValueWithModifierEX()
|
|
|
+ {
|
|
|
+ $redis = $this->getClient();
|
|
|
+
|
|
|
+ $this->assertEquals('OK', $redis->set('foo', 'bar', 'ex', 1));
|
|
|
+ $this->assertSame(1, $redis->ttl('foo'));
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * @group connected
|
|
|
+ * @requiresRedisVersion >= 2.6.12
|
|
|
+ */
|
|
|
+ public function testSetStringValueWithModifierPX()
|
|
|
+ {
|
|
|
+ $redis = $this->getClient();
|
|
|
+
|
|
|
+ $this->assertEquals('OK', $redis->set('foo', 'bar', 'px', 1000));
|
|
|
+
|
|
|
+ $pttl = $redis->pttl('foo');
|
|
|
+ $this->assertGreaterThan(0, $pttl);
|
|
|
+ $this->assertLessThanOrEqual(1000, $pttl);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * @group connected
|
|
|
+ * @requiresRedisVersion >= 2.6.12
|
|
|
+ */
|
|
|
+ public function testSetStringValueWithModifierNX()
|
|
|
+ {
|
|
|
+ $redis = $this->getClient();
|
|
|
+
|
|
|
+ $this->assertEquals('OK', $redis->set('foo', 'bar', 'NX'));
|
|
|
+ $this->assertNull($redis->set('foo', 'bar', 'NX'));
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * @group connected
|
|
|
+ * @requiresRedisVersion >= 2.6.12
|
|
|
+ */
|
|
|
+ public function testSetStringValueWithModifierXX()
|
|
|
+ {
|
|
|
+ $redis = $this->getClient();
|
|
|
+
|
|
|
+ $this->assertEquals('OK', $redis->set('foo', 'bar'));
|
|
|
+
|
|
|
+ $this->assertEquals('OK', $redis->set('foo', 'barbar', 'XX'));
|
|
|
+ $this->assertNull($redis->set('foofoo', 'barbar', 'XX'));
|
|
|
+ }
|
|
|
}
|