require_relative "helper" require_relative "lint/sets" class TestDistributedCommandsOnSets < Test::Unit::TestCase include Helper::Distributed include Lint::Sets def test_smove assert_raise Redis::Distributed::CannotDistribute do r.sadd "foo", "s1" r.sadd "bar", "s2" r.smove("foo", "bar", "s1") end end def test_sinter assert_raise Redis::Distributed::CannotDistribute do r.sadd "foo", "s1" r.sadd "foo", "s2" r.sadd "bar", "s2" r.sinter("foo", "bar") end end def test_sinterstore assert_raise Redis::Distributed::CannotDistribute do r.sadd "foo", "s1" r.sadd "foo", "s2" r.sadd "bar", "s2" r.sinterstore("baz", "foo", "bar") end end def test_sunion assert_raise Redis::Distributed::CannotDistribute do r.sadd "foo", "s1" r.sadd "foo", "s2" r.sadd "bar", "s2" r.sadd "bar", "s3" r.sunion("foo", "bar") end end def test_sunionstore assert_raise Redis::Distributed::CannotDistribute do r.sadd "foo", "s1" r.sadd "foo", "s2" r.sadd "bar", "s2" r.sadd "bar", "s3" r.sunionstore("baz", "foo", "bar") end end def test_sdiff assert_raise Redis::Distributed::CannotDistribute do r.sadd "foo", "s1" r.sadd "foo", "s2" r.sadd "bar", "s2" r.sadd "bar", "s3" r.sdiff("foo", "bar") end end def test_sdiffstore assert_raise Redis::Distributed::CannotDistribute do r.sadd "foo", "s1" r.sadd "foo", "s2" r.sadd "bar", "s2" r.sadd "bar", "s3" r.sdiffstore("baz", "foo", "bar") end end def test_sscan assert_nothing_raised do r.sadd "foo", "s1" r.sadd "foo", "s2" r.sadd "bar", "s2" r.sadd "bar", "s3" cursor, vals = r.sscan "foo", 0 assert_equal '0', cursor assert_equal %w(s1 s2), vals.sort end end def test_sscan_each assert_nothing_raised do r.sadd "foo", "s1" r.sadd "foo", "s2" r.sadd "bar", "s2" r.sadd "bar", "s3" vals = r.sscan_each("foo").to_a assert_equal %w(s1 s2), vals.sort end end end