guilleiguaran/fakeredis — pull request #82 by caius (2013-12-13 18:44:57+00:00)
Title: Fix specs against redis-server 2.8.1

There were a few failures of the specs against a live redis server, this fixes that right up:

```
Failures:

1) HashesMethods should reject the wrong number of arguments
Failure/Error: lambda { @client.hmset("hash", "foo1", "bar1", "foo2", "bar2", "foo3") }.should raise_error(Redis::CommandError, "ERR wrong number of arguments for 'hmset' command")
expected Redis::CommandError with "ERR wrong number of arguments for 'hmset' command", got # with backtrace:

2) HashesMethods should reject a list of arrays that contain an invalid number of arguments
Failure/Error: expect { @client.hmset("key1", [:k1, "val1"], [:k2, "val2", "bogus val"]) }.to raise_error(Redis::CommandError, "ERR wrong number of arguments for 'hmset' command")
expected Redis::CommandError with "ERR wrong number of arguments for 'hmset' command", got # with backtrace:

3) KeysMethods should only operate against keys containing string values
Failure/Error: lambda { @client.get("key1") }.should raise_error(Redis::CommandError, "ERR Operation against a key holding the wrong kind of value")
expected Redis::CommandError with "ERR Operation against a key holding the wrong kind of value", got # with backtrace:

5) StringsMethods should raise error if command arguments count is wrong
Failure/Error: expect { @client.mset(:key1, "value", :key2) }.to raise_error(Redis::CommandError, "ERR wrong number of arguments for 'mset' command")
expected Redis::CommandError with "ERR wrong number of arguments for 'mset' command", got # with backtrace:
```