Right now cloning the repo and running unit tests will all fail if the
Redis/RedisCluster instances aren't configured with the password
'phpredis'.
This commit simply makes authentication during the tests optional via a
command-line argument.
I our test suite we were only checking if an exception was an instance
of `RedisException` and marking the test 'SKIPPED' if not. This was
masking a failure in the RedisCluster test for testMultiExec by showing
it as skipped when it was actually throwing an exception (not being able
to execute the MULTI across the cluster).
Change the way we accept COUNT and BLOCK such that a user can pass NULL
to mean "no value". This is technically a breaking change, since
previously the value `-1` was used for "no value".
Fixes#1560
Allows ZRANGE to be called either with `true` or `['withscores' => true]` so it's consistent with `ZRANGEBYSCORE` but also backward compatible.
Fixes#1555
Adds an option to process the actual strings in simple string replies as
opposed to translating them to `true`. This only applies to
`rawCommand` and `eval` because as far as I know know vanilla Redis
command attaches any information besides `OK` to simple string replies.
Addresses #1550
This commit updates ZPOPMIN/ZPOPMAX to return the same format that
zRange WITHSCORES and zRangeByScore WITHSCORES does.
In addition the blocking variants BZPOPMIN and BZPOPMAX are implemented.
In the event that the test PHP executable has been built with redis
and/or igbinary support built statically, we don't need to try and
find it by adding --no-php-ini and the extension directives themselves.
This fixes the test execution when php has the required extensions
already.
* Adds the STORE and STOREDIST options to GEORADIUS[BYMEMBER] for
both Redis and RedisCluster classes. We attempt to protect the
caller from CROSSLOT errors on the client side so as to make it
obvious when that is happening.
* Created a struct to carry around GEORADIUS options as there are
now two more and there were already a lot.
* Moved the structs/enums to handle GEORADIUS into the source file
instead of header as they aren't needed outside of redis_commands.c