1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122
|
module Lint
module ValueTypes
def test_exists
assert_equal false, r.exists("foo")
r.set("foo", "s1")
assert_equal true, r.exists("foo")
end
def test_type
assert_equal "none", r.type("foo")
r.set("foo", "s1")
assert_equal "string", r.type("foo")
end
def test_keys
r.set("f", "s1")
r.set("fo", "s2")
r.set("foo", "s3")
assert_equal ["f","fo", "foo"], r.keys("f*").sort
end
def test_expire
r.set("foo", "s1")
assert r.expire("foo", 2)
assert_in_range 0..2, r.ttl("foo")
end
def test_pexpire
target_version "2.5.4" do
r.set("foo", "s1")
assert r.pexpire("foo", 2000)
assert_in_range 0..2, r.ttl("foo")
end
end
def test_expireat
r.set("foo", "s1")
assert r.expireat("foo", (Time.now + 2).to_i)
assert_in_range 0..2, r.ttl("foo")
end
def test_pexpireat
target_version "2.5.4" do
r.set("foo", "s1")
assert r.pexpireat("foo", (Time.now + 2).to_i * 1_000)
assert_in_range 0..2, r.ttl("foo")
end
end
def test_persist
r.set("foo", "s1")
r.expire("foo", 1)
r.persist("foo")
assert(-1 == r.ttl("foo"))
end
def test_ttl
r.set("foo", "s1")
r.expire("foo", 2)
assert_in_range 0..2, r.ttl("foo")
end
def test_pttl
target_version "2.5.4" do
r.set("foo", "s1")
r.expire("foo", 2)
assert_in_range 1..2000, r.pttl("foo")
end
end
def test_dump_and_restore
target_version "2.5.7" do
r.set("foo", "a")
v = r.dump("foo")
r.del("foo")
assert r.restore("foo", 1000, v)
assert_equal "a", r.get("foo")
assert [0, 1].include? r.ttl("foo")
r.rpush("bar", ["b", "c", "d"])
w = r.dump("bar")
r.del("bar")
assert r.restore("bar", 1000, w)
assert_equal ["b", "c", "d"], r.lrange("bar", 0, -1)
assert [0, 1].include? r.ttl("bar")
end
end
def test_move
r.select 14
r.flushdb
r.set "bar", "s3"
r.select 15
r.set "foo", "s1"
r.set "bar", "s2"
assert r.move("foo", 14)
assert_equal nil, r.get("foo")
assert !r.move("bar", 14)
assert_equal "s2", r.get("bar")
r.select 14
assert_equal "s1", r.get("foo")
assert_equal "s3", r.get("bar")
end
end
end
|