@@ -66,6 +66,20 @@ def test_expire
66
66
r . set ( "foo" , "s1" )
67
67
assert r . expire ( "foo" , 2 )
68
68
assert_in_range 0 ..2 , r . ttl ( "foo" )
69
+
70
+ target_version "7.0.0" do
71
+ r . set ( "bar" , "s2" )
72
+ refute r . expire ( "bar" , 5 , xx : true )
73
+ assert r . expire ( "bar" , 5 , nx : true )
74
+ refute r . expire ( "bar" , 5 , nx : true )
75
+ assert r . expire ( "bar" , 5 , xx : true )
76
+
77
+ r . expire ( "bar" , 10 )
78
+ refute r . expire ( "bar" , 15 , lt : true )
79
+ refute r . expire ( "bar" , 5 , gt : true )
80
+ assert r . expire ( "bar" , 15 , gt : true )
81
+ assert r . expire ( "bar" , 5 , lt : true )
82
+ end
69
83
end
70
84
71
85
def test_pexpire
@@ -74,12 +88,40 @@ def test_pexpire
74
88
assert r . pexpire ( "foo" , 2000 )
75
89
assert_in_range 0 ..2 , r . ttl ( "foo" )
76
90
end
91
+
92
+ target_version "7.0.0" do
93
+ r . set ( "bar" , "s2" )
94
+ refute r . pexpire ( "bar" , 5_000 , xx : true )
95
+ assert r . pexpire ( "bar" , 5_000 , nx : true )
96
+ refute r . pexpire ( "bar" , 5_000 , nx : true )
97
+ assert r . pexpire ( "bar" , 5_000 , xx : true )
98
+
99
+ r . pexpire ( "bar" , 10_000 )
100
+ refute r . pexpire ( "bar" , 15_000 , lt : true )
101
+ refute r . pexpire ( "bar" , 5_000 , gt : true )
102
+ assert r . pexpire ( "bar" , 15_000 , gt : true )
103
+ assert r . pexpire ( "bar" , 5_000 , lt : true )
104
+ end
77
105
end
78
106
79
107
def test_expireat
80
108
r . set ( "foo" , "s1" )
81
109
assert r . expireat ( "foo" , ( Time . now + 2 ) . to_i )
82
110
assert_in_range 0 ..2 , r . ttl ( "foo" )
111
+
112
+ target_version "7.0.0" do
113
+ r . set ( "bar" , "s2" )
114
+ refute r . expire_at ( "bar" , ( Time . now + 5 ) . to_i , xx : true )
115
+ assert r . expire_at ( "bar" , ( Time . now + 5 ) . to_i , nx : true )
116
+ refute r . expire_at ( "bar" , ( Time . now + 5 ) . to_i , nx : true )
117
+ assert r . expire_at ( "bar" , ( Time . now + 5 ) . to_i , xx : true )
118
+
119
+ r . expire_at ( "bar" , 10 )
120
+ refute r . expire_at ( "bar" , ( Time . now + 15 ) . to_i , lt : true )
121
+ refute r . expire_at ( "bar" , ( Time . now + 5 ) . to_i , gt : true )
122
+ assert r . expire_at ( "bar" , ( Time . now + 15 ) . to_i , gt : true )
123
+ assert r . expire_at ( "bar" , ( Time . now + 5 ) . to_i , lt : true )
124
+ end
83
125
end
84
126
85
127
def test_pexpireat
@@ -88,6 +130,20 @@ def test_pexpireat
88
130
assert r . pexpireat ( "foo" , ( Time . now + 2 ) . to_i * 1_000 )
89
131
assert_in_range 0 ..2 , r . ttl ( "foo" )
90
132
end
133
+
134
+ target_version "7.0.0" do
135
+ r . set ( "bar" , "s2" )
136
+ refute r . expire_at ( "bar" , ( Time . now + 5 ) . to_i * 1_000 , xx : true )
137
+ assert r . expire_at ( "bar" , ( Time . now + 5 ) . to_i * 1_000 , nx : true )
138
+ refute r . expire_at ( "bar" , ( Time . now + 5 ) . to_i * 1_000 , nx : true )
139
+ assert r . expire_at ( "bar" , ( Time . now + 5 ) . to_i * 1_000 , xx : true )
140
+
141
+ r . expire_at ( "bar" , 10 )
142
+ refute r . expire_at ( "bar" , ( Time . now + 15 ) . to_i * 1_000 , lt : true )
143
+ refute r . expire_at ( "bar" , ( Time . now + 5 ) . to_i * 1_000 , gt : true )
144
+ assert r . expire_at ( "bar" , ( Time . now + 15 ) . to_i * 1_000 , gt : true )
145
+ assert r . expire_at ( "bar" , ( Time . now + 5 ) . to_i * 1_000 , lt : true )
146
+ end
91
147
end
92
148
93
149
def test_persist
0 commit comments