Daniele Alessandri
fa643ac20c
Apply CS fixes.
2016-06-10 11:12:26 +02:00
Daniele Alessandri
eb1e686ff9
[tests] Change indentation of mock method expectations.
2016-06-10 11:08:26 +02:00
Daniele Alessandri
f02f3b6d37
[tests] Improve code coverage.
...
There is still some work to improve coverage in other classes though.
2016-06-09 16:41:19 +02:00
Daniele Alessandri
d72a1b5550
Do not extend EVALSHA for ScriptCommand class.
2016-06-09 14:02:22 +02:00
Daniele Alessandri
822f02b8eb
Implement new logic to load command classes.
...
By default Predis now uses a convention-over-configuration approach
by looking for a command class in the Predis\Command\Redis namespace
if it is not already defined in the commands class map.
This change allow us to decrease the time needed to load Predis on
each request since we removed 99% of the mappings in the commands
class map. Classes defined in the internal class map still take the
precedence over this mechanism, so users can still define their own
command classes to handle each command.
2016-06-07 15:23:28 +02:00
Daniele Alessandri
4b47639f9e
Rename command classes using command ID as name.
...
Some notable exceptions are EVAL and ECHO because having these names
as class names would raise a syntax error.
2016-06-04 20:54:41 +02:00
Daniele Alessandri
e4872af747
Modify ctor signature of Predis\Command\RawCommand.
2016-06-04 20:54:36 +02:00
Daniele Alessandri
62b421f20e
Switch from server profiles to commands factory.
...
This change reduces some unnecessary complexity in the library, Redis
commands do not change much after all. Developers can still implement
their own commands factory, inject new commands or override existing
ones. The "profile" client options has been renamed to "commands" and
it accepts instances of Predis\Command\FactoryInterface.
The test suite checks at runtime the version of the running instance
of Redis for integration tests to adapt itself automatically.
2016-06-04 15:36:21 +02:00
Daniele Alessandri
6e3f301588
Move commands classes in Predis\Command\Redis.
2016-06-04 15:36:16 +02:00
Daniele Alessandri
ad7b8b08cb
Run php-cs-fixer.
2016-05-26 09:54:09 +02:00
Daniele Alessandri
0dff761a61
Merge branch 'v1.1-commands-redis-3.2'
2016-05-24 23:17:33 +02:00
Daniele Alessandri
51932d82e8
Add new command: GEORADIUSBYMEMBER (Redis 3.2.0).
2016-05-24 22:35:27 +02:00
Daniele Alessandri
00000fde4e
Add new command: GEORADIUS (Redis 3.2.0).
2016-05-24 22:30:06 +02:00
Daniele Alessandri
b2284d015f
Add new command: GEODIST (Redis 3.2.0).
2016-05-24 17:09:35 +02:00
Daniele Alessandri
c4e0044269
Add new command: GEOPOS (Redis 3.2.0).
2016-05-24 17:09:33 +02:00
Daniele Alessandri
0b6b3b2558
Add new command: GEOHASH (Redis 3.2.0).
2016-05-24 16:00:08 +02:00
Daniele Alessandri
7ef9619f5c
Add new command: GEOADD (Redis 3.2.0).
2016-05-24 16:00:06 +02:00
Daniele Alessandri
3362e474b6
Add new command: BITFIELD (Redis 3.2.0).
2016-05-24 16:00:04 +02:00
Daniele Alessandri
7b3f6e1db5
[tests] Add missing test for key prefix in HSTRLEN.
2016-05-24 15:11:49 +02:00
Daniele Alessandri
1ab65da368
[tests] Missing @requiresRedisVersion for HSTRLEN.
2016-05-24 11:51:04 +02:00
Daniele Alessandri
da009e59dd
[tests] Test count argument for SPOP in Redis 3.2.
2016-05-23 15:53:30 +02:00
Daniele Alessandri
5b3a5bbef9
Run php-cs-fixer.
2016-05-21 15:46:58 +02:00
Daniele Alessandri
104e42cfe0
[tests] Fix test executed on current Redis unstable.
2016-05-10 10:58:46 +02:00
Daniele Alessandri
b6a14cda04
[tests] Fix test executed on current Redis unstable.
2016-05-10 10:51:43 +02:00
Remi Collet
57a7d5d3e6
fix tests, list of allowed commands have changed (redis 3.0.6)
2016-05-08 16:52:05 +02:00
Daniele Alessandri
f43433baf1
Add new command: HSTRLEN (Redis 3.2.0).
...
Also bump the unstable profile version to 3.2.
2015-07-29 11:50:20 +02:00
Daniele Alessandri
6cce9eb35c
Run php-cs-fixer.
2015-07-25 18:37:10 +02:00
Daniele Alessandri
73c9b9d5be
[tests] Fix some tests methods names.
2015-07-25 10:04:27 +02:00
Daniele Alessandri
59798e1f9e
[tests] Apply small changes to commands tests with expirations.
2015-07-25 10:04:24 +02:00
Daniele Alessandri
d0012e67ff
[tests] Cover SET modifiers EX, PX, NX|XX (Redis >= 2.6.12).
2015-07-25 09:10:07 +02:00
Daniele Alessandri
8dd9893a2f
Run php-cs-fixer with new configuration.
2015-07-24 23:17:02 +02:00
Daniele Alessandri
df2e9f4e71
Fix prefix processor to handle variadic EXISTS (Redis >= 3.0.3).
2015-07-24 18:29:51 +02:00
Daniele Alessandri
6590c44a27
Run php-cs-fixer against codebase in src/ and tests/.
2015-07-24 18:04:42 +02:00
Daniele Alessandri
7c1d324f30
[tests] Apply some fixes and improvements and remove old stuff.
2015-07-24 17:26:06 +02:00
Daniele Alessandri
bb6287f22d
[tests] Fix obviously wrong annotation.
2015-07-24 16:20:50 +02:00
Daniele Alessandri
8c76bd6761
Do not parse response to SETNX into boolean value.
2015-07-24 15:52:59 +02:00
Daniele Alessandri
38fafb22ba
Do not parse response to MSETNX into boolean value.
2015-07-24 15:52:53 +02:00
Daniele Alessandri
5ce683be09
Do not parse response to SMOVE into boolean value.
2015-07-24 15:52:50 +02:00
Daniele Alessandri
e531d39f53
Do not parse response to SISMEMBER into boolean value.
2015-07-24 15:52:45 +02:00
Daniele Alessandri
fda9f022dd
Do not parse response to RENAMENX into boolean value.
2015-07-24 15:52:27 +02:00
Daniele Alessandri
44e92d8a2f
Do not parse response to PERSIST into boolean value.
2015-07-24 15:50:43 +02:00
Daniele Alessandri
e75b69f6fd
Do not parse response to MOVE into boolean value.
2015-07-24 15:50:38 +02:00
Daniele Alessandri
082c51146a
Do not parse response to EXPIREAT into boolean value.
2015-07-24 15:50:34 +02:00
Daniele Alessandri
b02e3f4911
Do not parse response to EXPIRE into boolean value.
2015-07-24 15:50:21 +02:00
Daniele Alessandri
87921f7a05
Do not parse response to PFADD into boolean value.
2015-07-24 15:50:10 +02:00
Daniele Alessandri
3fdfc50683
Do not parse response to HSETNX into boolean value.
2015-07-24 15:50:05 +02:00
Daniele Alessandri
ae26ecc8bf
Do not parse response to HSET into boolean value.
2015-07-24 15:50:01 +02:00
Daniele Alessandri
231a3440f7
Do not parse response to HEXISTS into boolean value.
2015-07-24 15:49:55 +02:00
Daniele Alessandri
ab20c52115
Do not parse response to EXISTS into boolean value.
...
Starting with Redis 3.0.3 the EXISTS command is variadic so that it is
possible to check for the existence of multiple keys in one request,
with the server returning the number of keys found.
This change could break codebases relying on strict comparison (===)
against a boolean value, but just doing $redis->exists('key') == TRUE
is totally fine.
2015-07-24 15:49:40 +02:00
Daniele Alessandri
474f3ddbe7
Add missing command: MIGRATE (Redis 2.6.0).
...
Fixes #209 .
2015-07-23 17:22:53 +02:00