diff options
author | dogukanteber <47397379+dogukanteber@users.noreply.github.com> | 2022-03-14 16:03:06 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-03-14 15:03:06 +0200 |
commit | eac3a34d162aa83c3094cbab80d535ca92fdf972 (patch) | |
tree | 717a39d921220fb4ae97b111964064829fe68903 /tests | |
parent | 2c405855021ccc8d4a45fa1aae352ddb303baae0 (diff) | |
download | redis-py-eac3a34d162aa83c3094cbab80d535ca92fdf972.tar.gz |
Add support for EXPIREAT command's options (#2024)
* Add support for EXPIREAT command's options
* Fix linter errors
* Make changes on method arguments
* Fix linter errors
* add variables to the function header
Co-authored-by: Chayim <chayim@users.noreply.github.com>
Co-authored-by: dvora-h <dvora.heller@redis.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/test_commands.py | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/tests/test_commands.py b/tests/test_commands.py index c8bcc9c..ae1adb1 100644 --- a/tests/test_commands.py +++ b/tests/test_commands.py @@ -1106,6 +1106,43 @@ class TestRedisCommands: r.expireat("a", 33177117420) assert r.expiretime("a") == 33177117420 + @skip_if_server_version_lt("7.0.0") + def test_expireat_option_nx(self, r): + assert r.set("key", "val") is True + expire_at = redis_server_time(r) + datetime.timedelta(minutes=1) + assert r.expireat("key", expire_at, nx=True) is True + expire_at = redis_server_time(r) + datetime.timedelta(minutes=2) + assert r.expireat("key", expire_at, nx=True) is False + + @skip_if_server_version_lt("7.0.0") + def test_expireat_option_xx(self, r): + assert r.set("key", "val") is True + expire_at = redis_server_time(r) + datetime.timedelta(minutes=1) + assert r.expireat("key", expire_at, xx=True) is False + assert r.expireat("key", expire_at) is True + expire_at = redis_server_time(r) + datetime.timedelta(minutes=2) + assert r.expireat("key", expire_at, xx=True) is True + + @skip_if_server_version_lt("7.0.0") + def test_expireat_option_gt(self, r): + expire_at = redis_server_time(r) + datetime.timedelta(minutes=2) + assert r.set("key", "val") is True + assert r.expireat("key", expire_at) is True + expire_at = redis_server_time(r) + datetime.timedelta(minutes=1) + assert r.expireat("key", expire_at, gt=True) is False + expire_at = redis_server_time(r) + datetime.timedelta(minutes=3) + assert r.expireat("key", expire_at, gt=True) is True + + @skip_if_server_version_lt("7.0.0") + def test_expireat_option_lt(self, r): + expire_at = redis_server_time(r) + datetime.timedelta(minutes=2) + assert r.set("key", "val") is True + assert r.expireat("key", expire_at) is True + expire_at = redis_server_time(r) + datetime.timedelta(minutes=3) + assert r.expireat("key", expire_at, lt=True) is False + expire_at = redis_server_time(r) + datetime.timedelta(minutes=1) + assert r.expireat("key", expire_at, lt=True) is True + def test_get_and_set(self, r): # get and set can't be tested independently of each other assert r.get("a") is None |