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
|
# frozen_string_literal: true
require_relative "helper"
class TestSorting < Minitest::Test
include Helper::Client
def test_sort
r.set("foo:1", "s1")
r.set("foo:2", "s2")
r.rpush("bar", "1")
r.rpush("bar", "2")
assert_equal ["s1"], r.sort("bar", get: "foo:*", limit: [0, 1])
assert_equal ["s2"], r.sort("bar", get: "foo:*", limit: [0, 1], order: "desc alpha")
end
def test_sort_with_an_array_of_gets
r.set("foo:1:a", "s1a")
r.set("foo:1:b", "s1b")
r.set("foo:2:a", "s2a")
r.set("foo:2:b", "s2b")
r.rpush("bar", "1")
r.rpush("bar", "2")
assert_equal [["s1a", "s1b"]], r.sort("bar", get: ["foo:*:a", "foo:*:b"], limit: [0, 1])
assert_equal [["s2a", "s2b"]], r.sort("bar", get: ["foo:*:a", "foo:*:b"], limit: [0, 1], order: "desc alpha")
assert_equal [["s1a", "s1b"], ["s2a", "s2b"]], r.sort("bar", get: ["foo:*:a", "foo:*:b"])
end
def test_sort_with_store
r.set("foo:1", "s1")
r.set("foo:2", "s2")
r.rpush("bar", "1")
r.rpush("bar", "2")
r.sort("bar", get: "foo:*", store: "baz")
assert_equal ["s1", "s2"], r.lrange("baz", 0, -1)
end
def test_sort_with_an_array_of_gets_and_with_store
r.set("foo:1:a", "s1a")
r.set("foo:1:b", "s1b")
r.set("foo:2:a", "s2a")
r.set("foo:2:b", "s2b")
r.rpush("bar", "1")
r.rpush("bar", "2")
r.sort("bar", get: ["foo:*:a", "foo:*:b"], store: 'baz')
assert_equal ["s1a", "s1b", "s2a", "s2b"], r.lrange("baz", 0, -1)
end
end
|