Packages
exq
0.4.4
0.23.0
0.22.0
0.21.0
0.20.0
0.19.0
0.18.0
0.17.0
0.16.2
0.16.1
0.16.0
0.15.0
0.14.0
0.13.5
0.13.4
0.13.3
0.13.2
0.13.1
0.13.0
0.12.2
0.12.1
0.12.0
0.11.0
0.10.1
0.10.0
0.9.1
0.9.0
0.8.7
0.8.6
0.8.5
0.8.4
0.8.3
0.8.2
0.8.1
0.8.0
0.7.3
0.7.2
0.7.1
0.7.0
0.6.5
0.6.4
0.6.3
0.6.2
0.6.1
0.6.0
0.5.0
0.4.4
0.4.3
0.4.2
0.4.1
0.4.0
0.3.0
0.2.3
0.2.2
0.2.1
0.2.0
0.1.4
0.1.3
0.1.2
0.1.1
0.1.0
0.0.2
Exq is a job processing library compatible with Resque / Sidekiq for the Elixir language.
Current section
Files
Jump to
Current section
Files
test/redis_test.exs
Code.require_file "test_helper.exs", __DIR__
defmodule Exq.RedisTest do
use ExUnit.Case
alias Exq.Redis.Connection
setup_all do
ExqTestUtil.reset_config
TestRedis.setup
on_exit fn ->
ExqTestUtil.reset_config
TestRedis.teardown
end
end
setup do
on_exit fn ->
Connection.flushdb! :testredis
end
:ok
end
test "info" do
Mix.Config.persist([exq: [host: '127.0.0.1', port: 6379, password: '', database: 0, reconnect_on_sleep: 100, redis_timeout: 5000]])
{host, port, database, password, reconnect_on_sleep, redis_timeout} = Connection.info
assert host == '127.0.0.1'
assert port == 6379
assert password == ''
assert database == 0
assert reconnect_on_sleep == 100
assert redis_timeout == 5000
Mix.Config.persist([exq: [host: '127.1.1.1', password: 'password']])
{host, _, _, password, _, _} = Connection.info
assert host == '127.1.1.1'
assert password == 'password'
Mix.Config.persist([exq: [password: "string_password"]])
{_, _, _, password, _, _} = Connection.info
assert password == 'string_password'
Mix.Config.persist([exq: [password: nil]])
{_, _, _, password, _, _} = Connection.info
assert password == ''
end
test "smembers empty" do
m = Connection.smembers!(:testredis, "bogus")
assert m == []
end
test "sadd" do
r = Connection.sadd!(:testredis, "theset", "amember")
assert r == "1"
assert Connection.smembers!(:testredis, "theset") == ["amember"]
end
test "lpop empty" do
assert Connection.lpop(:testredis, "bogus") == {:ok, :undefined}
end
test "rpush / lpop" do
Connection.rpush!(:testredis, "akey", "avalue")
assert Connection.lpop(:testredis, "akey") == {:ok, "avalue"}
assert Connection.lpop(:testredis, "akey") == {:ok, :undefined}
end
test "zadd / zcard / zrem" do
assert Connection.zcard!(:testredis, "akey") == "0"
assert Connection.zadd!(:testredis, "akey", "1.7", "avalue") == "1"
assert Connection.zcard!(:testredis, "akey") == "1"
assert Connection.zrem!(:testredis, "akey", "avalue") == "1"
assert Connection.zcard!(:testredis, "akey") == "0"
end
test "zrangebyscore" do
assert Connection.zcard!(:testredis, "akey") == "0"
assert Connection.zadd!(:testredis, "akey", "123456.123455", "avalue") == "1"
assert Connection.zadd!(:testredis, "akey", "123456.123456", "bvalue") == "1"
assert Connection.zadd!(:testredis, "akey", "123456.123457", "cvalue") == "1"
assert Connection.zrangebyscore!(:testredis, "akey", 0, "111111.111111") == []
assert Connection.zrangebyscore!(:testredis, "akey", 0, "123456.123455") == ["avalue"]
assert Connection.zrangebyscore!(:testredis, "akey", 0, "123456.123456") == ["avalue", "bvalue"]
assert Connection.zrangebyscore!(:testredis, "akey", 0, "123456.123457") == ["avalue", "bvalue", "cvalue"]
assert Connection.zrangebyscore!(:testredis, "akey", 0, "999999.999999") == ["avalue", "bvalue", "cvalue"]
assert Connection.zrem!(:testredis, "akey", "bvalue") == "1"
assert Connection.zrangebyscore!(:testredis, "akey", 0, "123456.123457") == ["avalue", "cvalue"]
assert Connection.zrem!(:testredis, "akey", "avalue") == "1"
assert Connection.zrangebyscore!(:testredis, "akey", 0, "123456.123456") == []
assert Connection.zrangebyscore!(:testredis, "akey", 0, "123456.123457") == ["cvalue"]
assert Connection.zrem!(:testredis, "akey", "avalue") == "0"
assert Connection.zrem!(:testredis, "akey", "cvalue") == "1"
assert Connection.zrangebyscore!(:testredis, "akey", 0, "999999.999999") == []
end
test "flushdb" do
Connection.sadd!(:testredis, "theset", "amember")
Connection.flushdb! :testredis
assert Connection.smembers!(:testredis, "theset") == []
end
end