Browse Source

By convention all of the Redis command identifiers are uppercase.

Daniele Alessandri 11 years ago
parent
commit
e049db124c

+ 1 - 0
lib/Predis/Command/CommandInterface.php

@@ -19,6 +19,7 @@ interface CommandInterface
 {
     /**
      * Gets the ID of a Redis command.
+     * By convention, command identifiers myst be uppercase.
      *
      * @return string
      */

+ 4 - 4
lib/Predis/Profile/RedisProfile.php

@@ -47,7 +47,7 @@ abstract class RedisProfile implements ProfileInterface
      */
     public function supportsCommand($commandID)
     {
-        return isset($this->commands[strtolower($commandID)]);
+        return isset($this->commands[strtoupper($commandID)]);
     }
 
     /**
@@ -73,7 +73,7 @@ abstract class RedisProfile implements ProfileInterface
      */
     public function getCommandClass($commandID)
     {
-        if (isset($this->commands[$commandID = strtolower($commandID)])) {
+        if (isset($this->commands[$commandID = strtoupper($commandID)])) {
             return $this->commands[$commandID];
         }
     }
@@ -83,7 +83,7 @@ abstract class RedisProfile implements ProfileInterface
      */
     public function createCommand($commandID, $arguments = array())
     {
-        $commandID = strtolower($commandID);
+        $commandID = strtoupper($commandID);
 
         if (!isset($this->commands[$commandID])) {
             throw new ClientException("'$commandID' is not a registered Redis command");
@@ -114,7 +114,7 @@ abstract class RedisProfile implements ProfileInterface
             throw new InvalidArgumentException("Cannot register '$commandClass' as it is not a valid Redis command");
         }
 
-        $this->commands[strtolower($commandID)] = $commandClass;
+        $this->commands[strtoupper($commandID)] = $commandClass;
     }
 
     /**

+ 73 - 73
lib/Predis/Profile/RedisVersion120.php

@@ -35,91 +35,91 @@ class RedisVersion120 extends RedisProfile
             /* ---------------- Redis 1.2 ---------------- */
 
             /* commands operating on the key space */
-            'exists'                    => 'Predis\Command\KeyExists',
-            'del'                       => 'Predis\Command\KeyDelete',
-            'type'                      => 'Predis\Command\KeyType',
-            'keys'                      => 'Predis\Command\KeyKeysV12x',
-            'randomkey'                 => 'Predis\Command\KeyRandom',
-            'rename'                    => 'Predis\Command\KeyRename',
-            'renamenx'                  => 'Predis\Command\KeyRenamePreserve',
-            'expire'                    => 'Predis\Command\KeyExpire',
-            'expireat'                  => 'Predis\Command\KeyExpireAt',
-            'ttl'                       => 'Predis\Command\KeyTimeToLive',
-            'move'                      => 'Predis\Command\KeyMove',
-            'sort'                      => 'Predis\Command\KeySort',
+            'EXISTS'                    => 'Predis\Command\KeyExists',
+            'DEL'                       => 'Predis\Command\KeyDelete',
+            'TYPE'                      => 'Predis\Command\KeyType',
+            'KEYS'                      => 'Predis\Command\KeyKeysV12x',
+            'RANDOMKEY'                 => 'Predis\Command\KeyRandom',
+            'RENAME'                    => 'Predis\Command\KeyRename',
+            'RENAMENX'                  => 'Predis\Command\KeyRenamePreserve',
+            'EXPIRE'                    => 'Predis\Command\KeyExpire',
+            'EXPIREAT'                  => 'Predis\Command\KeyExpireAt',
+            'TTL'                       => 'Predis\Command\KeyTimeToLive',
+            'MOVE'                      => 'Predis\Command\KeyMove',
+            'SORT'                      => 'Predis\Command\KeySort',
 
             /* commands operating on string values */
-            'set'                       => 'Predis\Command\StringSet',
-            'setnx'                     => 'Predis\Command\StringSetPreserve',
-            'mset'                      => 'Predis\Command\StringSetMultiple',
-            'msetnx'                    => 'Predis\Command\StringSetMultiplePreserve',
-            'get'                       => 'Predis\Command\StringGet',
-            'mget'                      => 'Predis\Command\StringGetMultiple',
-            'getset'                    => 'Predis\Command\StringGetSet',
-            'incr'                      => 'Predis\Command\StringIncrement',
-            'incrby'                    => 'Predis\Command\StringIncrementBy',
-            'decr'                      => 'Predis\Command\StringDecrement',
-            'decrby'                    => 'Predis\Command\StringDecrementBy',
+            'SET'                       => 'Predis\Command\StringSet',
+            'SETNX'                     => 'Predis\Command\StringSetPreserve',
+            'MSET'                      => 'Predis\Command\StringSetMultiple',
+            'MSETNX'                    => 'Predis\Command\StringSetMultiplePreserve',
+            'GET'                       => 'Predis\Command\StringGet',
+            'MGET'                      => 'Predis\Command\StringGetMultiple',
+            'GETSET'                    => 'Predis\Command\StringGetSet',
+            'INCR'                      => 'Predis\Command\StringIncrement',
+            'INCRBY'                    => 'Predis\Command\StringIncrementBy',
+            'DECR'                      => 'Predis\Command\StringDecrement',
+            'DECRBY'                    => 'Predis\Command\StringDecrementBy',
 
             /* commands operating on lists */
-            'rpush'                     => 'Predis\Command\ListPushTail',
-            'lpush'                     => 'Predis\Command\ListPushHead',
-            'llen'                      => 'Predis\Command\ListLength',
-            'lrange'                    => 'Predis\Command\ListRange',
-            'ltrim'                     => 'Predis\Command\ListTrim',
-            'lindex'                    => 'Predis\Command\ListIndex',
-            'lset'                      => 'Predis\Command\ListSet',
-            'lrem'                      => 'Predis\Command\ListRemove',
-            'lpop'                      => 'Predis\Command\ListPopFirst',
-            'rpop'                      => 'Predis\Command\ListPopLast',
-            'rpoplpush'                 => 'Predis\Command\ListPopLastPushHead',
+            'RPUSH'                     => 'Predis\Command\ListPushTail',
+            'LPUSH'                     => 'Predis\Command\ListPushHead',
+            'LLEN'                      => 'Predis\Command\ListLength',
+            'LRANGE'                    => 'Predis\Command\ListRange',
+            'LTRIM'                     => 'Predis\Command\ListTrim',
+            'LINDEX'                    => 'Predis\Command\ListIndex',
+            'LSET'                      => 'Predis\Command\ListSet',
+            'LREM'                      => 'Predis\Command\ListRemove',
+            'LPOP'                      => 'Predis\Command\ListPopFirst',
+            'RPOP'                      => 'Predis\Command\ListPopLast',
+            'RPOPLPUSH'                 => 'Predis\Command\ListPopLastPushHead',
 
             /* commands operating on sets */
-            'sadd'                      => 'Predis\Command\SetAdd',
-            'srem'                      => 'Predis\Command\SetRemove',
-            'spop'                      => 'Predis\Command\SetPop',
-            'smove'                     => 'Predis\Command\SetMove',
-            'scard'                     => 'Predis\Command\SetCardinality',
-            'sismember'                 => 'Predis\Command\SetIsMember',
-            'sinter'                    => 'Predis\Command\SetIntersection',
-            'sinterstore'               => 'Predis\Command\SetIntersectionStore',
-            'sunion'                    => 'Predis\Command\SetUnion',
-            'sunionstore'               => 'Predis\Command\SetUnionStore',
-            'sdiff'                     => 'Predis\Command\SetDifference',
-            'sdiffstore'                => 'Predis\Command\SetDifferenceStore',
-            'smembers'                  => 'Predis\Command\SetMembers',
-            'srandmember'               => 'Predis\Command\SetRandomMember',
+            'SADD'                      => 'Predis\Command\SetAdd',
+            'SREM'                      => 'Predis\Command\SetRemove',
+            'SPOP'                      => 'Predis\Command\SetPop',
+            'SMOVE'                     => 'Predis\Command\SetMove',
+            'SCARD'                     => 'Predis\Command\SetCardinality',
+            'SISMEMBER'                 => 'Predis\Command\SetIsMember',
+            'SINTER'                    => 'Predis\Command\SetIntersection',
+            'SINTERSTORE'               => 'Predis\Command\SetIntersectionStore',
+            'SUNION'                    => 'Predis\Command\SetUnion',
+            'SUNIONSTORE'               => 'Predis\Command\SetUnionStore',
+            'SDIFF'                     => 'Predis\Command\SetDifference',
+            'SDIFFSTORE'                => 'Predis\Command\SetDifferenceStore',
+            'SMEMBERS'                  => 'Predis\Command\SetMembers',
+            'SRANDMEMBER'               => 'Predis\Command\SetRandomMember',
 
             /* commands operating on sorted sets */
-            'zadd'                      => 'Predis\Command\ZSetAdd',
-            'zincrby'                   => 'Predis\Command\ZSetIncrementBy',
-            'zrem'                      => 'Predis\Command\ZSetRemove',
-            'zrange'                    => 'Predis\Command\ZSetRange',
-            'zrevrange'                 => 'Predis\Command\ZSetReverseRange',
-            'zrangebyscore'             => 'Predis\Command\ZSetRangeByScore',
-            'zcard'                     => 'Predis\Command\ZSetCardinality',
-            'zscore'                    => 'Predis\Command\ZSetScore',
-            'zremrangebyscore'          => 'Predis\Command\ZSetRemoveRangeByScore',
+            'ZADD'                      => 'Predis\Command\ZSetAdd',
+            'ZINCRBY'                   => 'Predis\Command\ZSetIncrementBy',
+            'ZREM'                      => 'Predis\Command\ZSetRemove',
+            'ZRANGE'                    => 'Predis\Command\ZSetRange',
+            'ZREVRANGE'                 => 'Predis\Command\ZSetReverseRange',
+            'ZRANGEBYSCORE'             => 'Predis\Command\ZSetRangeByScore',
+            'ZCARD'                     => 'Predis\Command\ZSetCardinality',
+            'ZSCORE'                    => 'Predis\Command\ZSetScore',
+            'ZREMRANGEBYSCORE'          => 'Predis\Command\ZSetRemoveRangeByScore',
 
             /* connection related commands */
-            'ping'                      => 'Predis\Command\ConnectionPing',
-            'auth'                      => 'Predis\Command\ConnectionAuth',
-            'select'                    => 'Predis\Command\ConnectionSelect',
-            'echo'                      => 'Predis\Command\ConnectionEcho',
-            'quit'                      => 'Predis\Command\ConnectionQuit',
+            'PING'                      => 'Predis\Command\ConnectionPing',
+            'AUTH'                      => 'Predis\Command\ConnectionAuth',
+            'SELECT'                    => 'Predis\Command\ConnectionSelect',
+            'ECHO'                      => 'Predis\Command\ConnectionEcho',
+            'QUIT'                      => 'Predis\Command\ConnectionQuit',
 
             /* remote server control commands */
-            'info'                      => 'Predis\Command\ServerInfo',
-            'slaveof'                   => 'Predis\Command\ServerSlaveOf',
-            'monitor'                   => 'Predis\Command\ServerMonitor',
-            'dbsize'                    => 'Predis\Command\ServerDatabaseSize',
-            'flushdb'                   => 'Predis\Command\ServerFlushDatabase',
-            'flushall'                  => 'Predis\Command\ServerFlushAll',
-            'save'                      => 'Predis\Command\ServerSave',
-            'bgsave'                    => 'Predis\Command\ServerBackgroundSave',
-            'lastsave'                  => 'Predis\Command\ServerLastSave',
-            'shutdown'                  => 'Predis\Command\ServerShutdown',
-            'bgrewriteaof'              => 'Predis\Command\ServerBackgroundRewriteAOF',
+            'INFO'                      => 'Predis\Command\ServerInfo',
+            'SLAVEOF'                   => 'Predis\Command\ServerSlaveOf',
+            'MONITOR'                   => 'Predis\Command\ServerMonitor',
+            'DBSIZE'                    => 'Predis\Command\ServerDatabaseSize',
+            'FLUSHDB'                   => 'Predis\Command\ServerFlushDatabase',
+            'FLUSHALL'                  => 'Predis\Command\ServerFlushAll',
+            'SAVE'                      => 'Predis\Command\ServerSave',
+            'BGSAVE'                    => 'Predis\Command\ServerBackgroundSave',
+            'LASTSAVE'                  => 'Predis\Command\ServerLastSave',
+            'SHUTDOWN'                  => 'Predis\Command\ServerShutdown',
+            'BGREWRITEAOF'              => 'Predis\Command\ServerBackgroundRewriteAOF',
         );
     }
 }

+ 105 - 105
lib/Predis/Profile/RedisVersion200.php

@@ -35,140 +35,140 @@ class RedisVersion200 extends RedisProfile
             /* ---------------- Redis 1.2 ---------------- */
 
             /* commands operating on the key space */
-            'exists'                    => 'Predis\Command\KeyExists',
-            'del'                       => 'Predis\Command\KeyDelete',
-            'type'                      => 'Predis\Command\KeyType',
-            'keys'                      => 'Predis\Command\KeyKeys',
-            'randomkey'                 => 'Predis\Command\KeyRandom',
-            'rename'                    => 'Predis\Command\KeyRename',
-            'renamenx'                  => 'Predis\Command\KeyRenamePreserve',
-            'expire'                    => 'Predis\Command\KeyExpire',
-            'expireat'                  => 'Predis\Command\KeyExpireAt',
-            'ttl'                       => 'Predis\Command\KeyTimeToLive',
-            'move'                      => 'Predis\Command\KeyMove',
-            'sort'                      => 'Predis\Command\KeySort',
+            'EXISTS'                    => 'Predis\Command\KeyExists',
+            'DEL'                       => 'Predis\Command\KeyDelete',
+            'TYPE'                      => 'Predis\Command\KeyType',
+            'KEYS'                      => 'Predis\Command\KeyKeys',
+            'RANDOMKEY'                 => 'Predis\Command\KeyRandom',
+            'RENAME'                    => 'Predis\Command\KeyRename',
+            'RENAMENX'                  => 'Predis\Command\KeyRenamePreserve',
+            'EXPIRE'                    => 'Predis\Command\KeyExpire',
+            'EXPIREAT'                  => 'Predis\Command\KeyExpireAt',
+            'TTL'                       => 'Predis\Command\KeyTimeToLive',
+            'MOVE'                      => 'Predis\Command\KeyMove',
+            'SORT'                      => 'Predis\Command\KeySort',
 
             /* commands operating on string values */
-            'set'                       => 'Predis\Command\StringSet',
-            'setnx'                     => 'Predis\Command\StringSetPreserve',
-            'mset'                      => 'Predis\Command\StringSetMultiple',
-            'msetnx'                    => 'Predis\Command\StringSetMultiplePreserve',
-            'get'                       => 'Predis\Command\StringGet',
-            'mget'                      => 'Predis\Command\StringGetMultiple',
-            'getset'                    => 'Predis\Command\StringGetSet',
-            'incr'                      => 'Predis\Command\StringIncrement',
-            'incrby'                    => 'Predis\Command\StringIncrementBy',
-            'decr'                      => 'Predis\Command\StringDecrement',
-            'decrby'                    => 'Predis\Command\StringDecrementBy',
+            'SET'                       => 'Predis\Command\StringSet',
+            'SETNX'                     => 'Predis\Command\StringSetPreserve',
+            'MSET'                      => 'Predis\Command\StringSetMultiple',
+            'MSETNX'                    => 'Predis\Command\StringSetMultiplePreserve',
+            'GET'                       => 'Predis\Command\StringGet',
+            'MGET'                      => 'Predis\Command\StringGetMultiple',
+            'GETSET'                    => 'Predis\Command\StringGetSet',
+            'INCR'                      => 'Predis\Command\StringIncrement',
+            'INCRBY'                    => 'Predis\Command\StringIncrementBy',
+            'DECR'                      => 'Predis\Command\StringDecrement',
+            'DECRBY'                    => 'Predis\Command\StringDecrementBy',
 
             /* commands operating on lists */
-            'rpush'                     => 'Predis\Command\ListPushTail',
-            'lpush'                     => 'Predis\Command\ListPushHead',
-            'llen'                      => 'Predis\Command\ListLength',
-            'lrange'                    => 'Predis\Command\ListRange',
-            'ltrim'                     => 'Predis\Command\ListTrim',
-            'lindex'                    => 'Predis\Command\ListIndex',
-            'lset'                      => 'Predis\Command\ListSet',
-            'lrem'                      => 'Predis\Command\ListRemove',
-            'lpop'                      => 'Predis\Command\ListPopFirst',
-            'rpop'                      => 'Predis\Command\ListPopLast',
-            'rpoplpush'                 => 'Predis\Command\ListPopLastPushHead',
+            'RPUSH'                     => 'Predis\Command\ListPushTail',
+            'LPUSH'                     => 'Predis\Command\ListPushHead',
+            'LLEN'                      => 'Predis\Command\ListLength',
+            'LRANGE'                    => 'Predis\Command\ListRange',
+            'LTRIM'                     => 'Predis\Command\ListTrim',
+            'LINDEX'                    => 'Predis\Command\ListIndex',
+            'LSET'                      => 'Predis\Command\ListSet',
+            'LREM'                      => 'Predis\Command\ListRemove',
+            'LPOP'                      => 'Predis\Command\ListPopFirst',
+            'RPOP'                      => 'Predis\Command\ListPopLast',
+            'RPOPLPUSH'                 => 'Predis\Command\ListPopLastPushHead',
 
             /* commands operating on sets */
-            'sadd'                      => 'Predis\Command\SetAdd',
-            'srem'                      => 'Predis\Command\SetRemove',
-            'spop'                      => 'Predis\Command\SetPop',
-            'smove'                     => 'Predis\Command\SetMove',
-            'scard'                     => 'Predis\Command\SetCardinality',
-            'sismember'                 => 'Predis\Command\SetIsMember',
-            'sinter'                    => 'Predis\Command\SetIntersection',
-            'sinterstore'               => 'Predis\Command\SetIntersectionStore',
-            'sunion'                    => 'Predis\Command\SetUnion',
-            'sunionstore'               => 'Predis\Command\SetUnionStore',
-            'sdiff'                     => 'Predis\Command\SetDifference',
-            'sdiffstore'                => 'Predis\Command\SetDifferenceStore',
-            'smembers'                  => 'Predis\Command\SetMembers',
-            'srandmember'               => 'Predis\Command\SetRandomMember',
+            'SADD'                      => 'Predis\Command\SetAdd',
+            'SREM'                      => 'Predis\Command\SetRemove',
+            'SPOP'                      => 'Predis\Command\SetPop',
+            'SMOVE'                     => 'Predis\Command\SetMove',
+            'SCARD'                     => 'Predis\Command\SetCardinality',
+            'SISMEMBER'                 => 'Predis\Command\SetIsMember',
+            'SINTER'                    => 'Predis\Command\SetIntersection',
+            'SINTERSTORE'               => 'Predis\Command\SetIntersectionStore',
+            'SUNION'                    => 'Predis\Command\SetUnion',
+            'SUNIONSTORE'               => 'Predis\Command\SetUnionStore',
+            'SDIFF'                     => 'Predis\Command\SetDifference',
+            'SDIFFSTORE'                => 'Predis\Command\SetDifferenceStore',
+            'SMEMBERS'                  => 'Predis\Command\SetMembers',
+            'SRANDMEMBER'               => 'Predis\Command\SetRandomMember',
 
             /* commands operating on sorted sets */
-            'zadd'                      => 'Predis\Command\ZSetAdd',
-            'zincrby'                   => 'Predis\Command\ZSetIncrementBy',
-            'zrem'                      => 'Predis\Command\ZSetRemove',
-            'zrange'                    => 'Predis\Command\ZSetRange',
-            'zrevrange'                 => 'Predis\Command\ZSetReverseRange',
-            'zrangebyscore'             => 'Predis\Command\ZSetRangeByScore',
-            'zcard'                     => 'Predis\Command\ZSetCardinality',
-            'zscore'                    => 'Predis\Command\ZSetScore',
-            'zremrangebyscore'          => 'Predis\Command\ZSetRemoveRangeByScore',
+            'ZADD'                      => 'Predis\Command\ZSetAdd',
+            'ZINCRBY'                   => 'Predis\Command\ZSetIncrementBy',
+            'ZREM'                      => 'Predis\Command\ZSetRemove',
+            'ZRANGE'                    => 'Predis\Command\ZSetRange',
+            'ZREVRANGE'                 => 'Predis\Command\ZSetReverseRange',
+            'ZRANGEBYSCORE'             => 'Predis\Command\ZSetRangeByScore',
+            'ZCARD'                     => 'Predis\Command\ZSetCardinality',
+            'ZSCORE'                    => 'Predis\Command\ZSetScore',
+            'ZREMRANGEBYSCORE'          => 'Predis\Command\ZSetRemoveRangeByScore',
 
             /* connection related commands */
-            'ping'                      => 'Predis\Command\ConnectionPing',
-            'auth'                      => 'Predis\Command\ConnectionAuth',
-            'select'                    => 'Predis\Command\ConnectionSelect',
-            'echo'                      => 'Predis\Command\ConnectionEcho',
-            'quit'                      => 'Predis\Command\ConnectionQuit',
+            'PING'                      => 'Predis\Command\ConnectionPing',
+            'AUTH'                      => 'Predis\Command\ConnectionAuth',
+            'SELECT'                    => 'Predis\Command\ConnectionSelect',
+            'ECHO'                      => 'Predis\Command\ConnectionEcho',
+            'QUIT'                      => 'Predis\Command\ConnectionQuit',
 
             /* remote server control commands */
-            'info'                      => 'Predis\Command\ServerInfo',
-            'slaveof'                   => 'Predis\Command\ServerSlaveOf',
-            'monitor'                   => 'Predis\Command\ServerMonitor',
-            'dbsize'                    => 'Predis\Command\ServerDatabaseSize',
-            'flushdb'                   => 'Predis\Command\ServerFlushDatabase',
-            'flushall'                  => 'Predis\Command\ServerFlushAll',
-            'save'                      => 'Predis\Command\ServerSave',
-            'bgsave'                    => 'Predis\Command\ServerBackgroundSave',
-            'lastsave'                  => 'Predis\Command\ServerLastSave',
-            'shutdown'                  => 'Predis\Command\ServerShutdown',
-            'bgrewriteaof'              => 'Predis\Command\ServerBackgroundRewriteAOF',
+            'INFO'                      => 'Predis\Command\ServerInfo',
+            'SLAVEOF'                   => 'Predis\Command\ServerSlaveOf',
+            'MONITOR'                   => 'Predis\Command\ServerMonitor',
+            'DBSIZE'                    => 'Predis\Command\ServerDatabaseSize',
+            'FLUSHDB'                   => 'Predis\Command\ServerFlushDatabase',
+            'FLUSHALL'                  => 'Predis\Command\ServerFlushAll',
+            'SAVE'                      => 'Predis\Command\ServerSave',
+            'BGSAVE'                    => 'Predis\Command\ServerBackgroundSave',
+            'LASTSAVE'                  => 'Predis\Command\ServerLastSave',
+            'SHUTDOWN'                  => 'Predis\Command\ServerShutdown',
+            'BGREWRITEAOF'              => 'Predis\Command\ServerBackgroundRewriteAOF',
 
 
             /* ---------------- Redis 2.0 ---------------- */
 
             /* commands operating on string values */
-            'setex'                     => 'Predis\Command\StringSetExpire',
-            'append'                    => 'Predis\Command\StringAppend',
-            'substr'                    => 'Predis\Command\StringSubstr',
+            'SETEX'                     => 'Predis\Command\StringSetExpire',
+            'APPEND'                    => 'Predis\Command\StringAppend',
+            'SUBSTR'                    => 'Predis\Command\StringSubstr',
 
             /* commands operating on lists */
-            'blpop'                     => 'Predis\Command\ListPopFirstBlocking',
-            'brpop'                     => 'Predis\Command\ListPopLastBlocking',
+            'BLPOP'                     => 'Predis\Command\ListPopFirstBlocking',
+            'BRPOP'                     => 'Predis\Command\ListPopLastBlocking',
 
             /* commands operating on sorted sets */
-            'zunionstore'               => 'Predis\Command\ZSetUnionStore',
-            'zinterstore'               => 'Predis\Command\ZSetIntersectionStore',
-            'zcount'                    => 'Predis\Command\ZSetCount',
-            'zrank'                     => 'Predis\Command\ZSetRank',
-            'zrevrank'                  => 'Predis\Command\ZSetReverseRank',
-            'zremrangebyrank'           => 'Predis\Command\ZSetRemoveRangeByRank',
+            'ZUNIONSTORE'               => 'Predis\Command\ZSetUnionStore',
+            'ZINTERSTORE'               => 'Predis\Command\ZSetIntersectionStore',
+            'ZCOUNT'                    => 'Predis\Command\ZSetCount',
+            'ZRANK'                     => 'Predis\Command\ZSetRank',
+            'ZREVRANK'                  => 'Predis\Command\ZSetReverseRank',
+            'ZREMRANGEBYRANK'           => 'Predis\Command\ZSetRemoveRangeByRank',
 
             /* commands operating on hashes */
-            'hset'                      => 'Predis\Command\HashSet',
-            'hsetnx'                    => 'Predis\Command\HashSetPreserve',
-            'hmset'                     => 'Predis\Command\HashSetMultiple',
-            'hincrby'                   => 'Predis\Command\HashIncrementBy',
-            'hget'                      => 'Predis\Command\HashGet',
-            'hmget'                     => 'Predis\Command\HashGetMultiple',
-            'hdel'                      => 'Predis\Command\HashDelete',
-            'hexists'                   => 'Predis\Command\HashExists',
-            'hlen'                      => 'Predis\Command\HashLength',
-            'hkeys'                     => 'Predis\Command\HashKeys',
-            'hvals'                     => 'Predis\Command\HashValues',
-            'hgetall'                   => 'Predis\Command\HashGetAll',
+            'HSET'                      => 'Predis\Command\HashSet',
+            'HSETNX'                    => 'Predis\Command\HashSetPreserve',
+            'HMSET'                     => 'Predis\Command\HashSetMultiple',
+            'HINCRBY'                   => 'Predis\Command\HashIncrementBy',
+            'HGET'                      => 'Predis\Command\HashGet',
+            'HMGET'                     => 'Predis\Command\HashGetMultiple',
+            'HDEL'                      => 'Predis\Command\HashDelete',
+            'HEXISTS'                   => 'Predis\Command\HashExists',
+            'HLEN'                      => 'Predis\Command\HashLength',
+            'HKEYS'                     => 'Predis\Command\HashKeys',
+            'HVALS'                     => 'Predis\Command\HashValues',
+            'HGETALL'                   => 'Predis\Command\HashGetAll',
 
             /* transactions */
-            'multi'                     => 'Predis\Command\TransactionMulti',
-            'exec'                      => 'Predis\Command\TransactionExec',
-            'discard'                   => 'Predis\Command\TransactionDiscard',
+            'MULTI'                     => 'Predis\Command\TransactionMulti',
+            'EXEC'                      => 'Predis\Command\TransactionExec',
+            'DISCARD'                   => 'Predis\Command\TransactionDiscard',
 
             /* publish - subscribe */
-            'subscribe'                 => 'Predis\Command\PubSubSubscribe',
-            'unsubscribe'               => 'Predis\Command\PubSubUnsubscribe',
-            'psubscribe'                => 'Predis\Command\PubSubSubscribeByPattern',
-            'punsubscribe'              => 'Predis\Command\PubSubUnsubscribeByPattern',
-            'publish'                   => 'Predis\Command\PubSubPublish',
+            'SUBSCRIBE'                 => 'Predis\Command\PubSubSubscribe',
+            'UNSUBSCRIBE'               => 'Predis\Command\PubSubUnsubscribe',
+            'PSUBSCRIBE'                => 'Predis\Command\PubSubSubscribeByPattern',
+            'PUNSUBSCRIBE'              => 'Predis\Command\PubSubUnsubscribeByPattern',
+            'PUBLISH'                   => 'Predis\Command\PubSubPublish',
 
             /* remote server control commands */
-            'config'                    => 'Predis\Command\ServerConfig',
+            'CONFIG'                    => 'Predis\Command\ServerConfig',
         );
     }
 }

+ 120 - 120
lib/Predis/Profile/RedisVersion220.php

@@ -35,170 +35,170 @@ class RedisVersion220 extends RedisProfile
             /* ---------------- Redis 1.2 ---------------- */
 
             /* commands operating on the key space */
-            'exists'                    => 'Predis\Command\KeyExists',
-            'del'                       => 'Predis\Command\KeyDelete',
-            'type'                      => 'Predis\Command\KeyType',
-            'keys'                      => 'Predis\Command\KeyKeys',
-            'randomkey'                 => 'Predis\Command\KeyRandom',
-            'rename'                    => 'Predis\Command\KeyRename',
-            'renamenx'                  => 'Predis\Command\KeyRenamePreserve',
-            'expire'                    => 'Predis\Command\KeyExpire',
-            'expireat'                  => 'Predis\Command\KeyExpireAt',
-            'ttl'                       => 'Predis\Command\KeyTimeToLive',
-            'move'                      => 'Predis\Command\KeyMove',
-            'sort'                      => 'Predis\Command\KeySort',
+            'EXISTS'                    => 'Predis\Command\KeyExists',
+            'DEL'                       => 'Predis\Command\KeyDelete',
+            'TYPE'                      => 'Predis\Command\KeyType',
+            'KEYS'                      => 'Predis\Command\KeyKeys',
+            'RANDOMKEY'                 => 'Predis\Command\KeyRandom',
+            'RENAME'                    => 'Predis\Command\KeyRename',
+            'RENAMENX'                  => 'Predis\Command\KeyRenamePreserve',
+            'EXPIRE'                    => 'Predis\Command\KeyExpire',
+            'EXPIREAT'                  => 'Predis\Command\KeyExpireAt',
+            'TTL'                       => 'Predis\Command\KeyTimeToLive',
+            'MOVE'                      => 'Predis\Command\KeyMove',
+            'SORT'                      => 'Predis\Command\KeySort',
 
             /* commands operating on string values */
-            'set'                       => 'Predis\Command\StringSet',
-            'setnx'                     => 'Predis\Command\StringSetPreserve',
-            'mset'                      => 'Predis\Command\StringSetMultiple',
-            'msetnx'                    => 'Predis\Command\StringSetMultiplePreserve',
-            'get'                       => 'Predis\Command\StringGet',
-            'mget'                      => 'Predis\Command\StringGetMultiple',
-            'getset'                    => 'Predis\Command\StringGetSet',
-            'incr'                      => 'Predis\Command\StringIncrement',
-            'incrby'                    => 'Predis\Command\StringIncrementBy',
-            'decr'                      => 'Predis\Command\StringDecrement',
-            'decrby'                    => 'Predis\Command\StringDecrementBy',
+            'SET'                       => 'Predis\Command\StringSet',
+            'SETNX'                     => 'Predis\Command\StringSetPreserve',
+            'MSET'                      => 'Predis\Command\StringSetMultiple',
+            'MSETNX'                    => 'Predis\Command\StringSetMultiplePreserve',
+            'GET'                       => 'Predis\Command\StringGet',
+            'MGET'                      => 'Predis\Command\StringGetMultiple',
+            'GETSET'                    => 'Predis\Command\StringGetSet',
+            'INCR'                      => 'Predis\Command\StringIncrement',
+            'INCRBY'                    => 'Predis\Command\StringIncrementBy',
+            'DECR'                      => 'Predis\Command\StringDecrement',
+            'DECRBY'                    => 'Predis\Command\StringDecrementBy',
 
             /* commands operating on lists */
-            'rpush'                     => 'Predis\Command\ListPushTail',
-            'lpush'                     => 'Predis\Command\ListPushHead',
-            'llen'                      => 'Predis\Command\ListLength',
-            'lrange'                    => 'Predis\Command\ListRange',
-            'ltrim'                     => 'Predis\Command\ListTrim',
-            'lindex'                    => 'Predis\Command\ListIndex',
-            'lset'                      => 'Predis\Command\ListSet',
-            'lrem'                      => 'Predis\Command\ListRemove',
-            'lpop'                      => 'Predis\Command\ListPopFirst',
-            'rpop'                      => 'Predis\Command\ListPopLast',
-            'rpoplpush'                 => 'Predis\Command\ListPopLastPushHead',
+            'RPUSH'                     => 'Predis\Command\ListPushTail',
+            'LPUSH'                     => 'Predis\Command\ListPushHead',
+            'LLEN'                      => 'Predis\Command\ListLength',
+            'LRANGE'                    => 'Predis\Command\ListRange',
+            'LTRIM'                     => 'Predis\Command\ListTrim',
+            'LINDEX'                    => 'Predis\Command\ListIndex',
+            'LSET'                      => 'Predis\Command\ListSet',
+            'LREM'                      => 'Predis\Command\ListRemove',
+            'LPOP'                      => 'Predis\Command\ListPopFirst',
+            'RPOP'                      => 'Predis\Command\ListPopLast',
+            'RPOPLPUSH'                 => 'Predis\Command\ListPopLastPushHead',
 
             /* commands operating on sets */
-            'sadd'                      => 'Predis\Command\SetAdd',
-            'srem'                      => 'Predis\Command\SetRemove',
-            'spop'                      => 'Predis\Command\SetPop',
-            'smove'                     => 'Predis\Command\SetMove',
-            'scard'                     => 'Predis\Command\SetCardinality',
-            'sismember'                 => 'Predis\Command\SetIsMember',
-            'sinter'                    => 'Predis\Command\SetIntersection',
-            'sinterstore'               => 'Predis\Command\SetIntersectionStore',
-            'sunion'                    => 'Predis\Command\SetUnion',
-            'sunionstore'               => 'Predis\Command\SetUnionStore',
-            'sdiff'                     => 'Predis\Command\SetDifference',
-            'sdiffstore'                => 'Predis\Command\SetDifferenceStore',
-            'smembers'                  => 'Predis\Command\SetMembers',
-            'srandmember'               => 'Predis\Command\SetRandomMember',
+            'SADD'                      => 'Predis\Command\SetAdd',
+            'SREM'                      => 'Predis\Command\SetRemove',
+            'SPOP'                      => 'Predis\Command\SetPop',
+            'SMOVE'                     => 'Predis\Command\SetMove',
+            'SCARD'                     => 'Predis\Command\SetCardinality',
+            'SISMEMBER'                 => 'Predis\Command\SetIsMember',
+            'SINTER'                    => 'Predis\Command\SetIntersection',
+            'SINTERSTORE'               => 'Predis\Command\SetIntersectionStore',
+            'SUNION'                    => 'Predis\Command\SetUnion',
+            'SUNIONSTORE'               => 'Predis\Command\SetUnionStore',
+            'SDIFF'                     => 'Predis\Command\SetDifference',
+            'SDIFFSTORE'                => 'Predis\Command\SetDifferenceStore',
+            'SMEMBERS'                  => 'Predis\Command\SetMembers',
+            'SRANDMEMBER'               => 'Predis\Command\SetRandomMember',
 
             /* commands operating on sorted sets */
-            'zadd'                      => 'Predis\Command\ZSetAdd',
-            'zincrby'                   => 'Predis\Command\ZSetIncrementBy',
-            'zrem'                      => 'Predis\Command\ZSetRemove',
-            'zrange'                    => 'Predis\Command\ZSetRange',
-            'zrevrange'                 => 'Predis\Command\ZSetReverseRange',
-            'zrangebyscore'             => 'Predis\Command\ZSetRangeByScore',
-            'zcard'                     => 'Predis\Command\ZSetCardinality',
-            'zscore'                    => 'Predis\Command\ZSetScore',
-            'zremrangebyscore'          => 'Predis\Command\ZSetRemoveRangeByScore',
+            'ZADD'                      => 'Predis\Command\ZSetAdd',
+            'ZINCRBY'                   => 'Predis\Command\ZSetIncrementBy',
+            'ZREM'                      => 'Predis\Command\ZSetRemove',
+            'ZRANGE'                    => 'Predis\Command\ZSetRange',
+            'ZREVRANGE'                 => 'Predis\Command\ZSetReverseRange',
+            'ZRANGEBYSCORE'             => 'Predis\Command\ZSetRangeByScore',
+            'ZCARD'                     => 'Predis\Command\ZSetCardinality',
+            'ZSCORE'                    => 'Predis\Command\ZSetScore',
+            'ZREMRANGEBYSCORE'          => 'Predis\Command\ZSetRemoveRangeByScore',
 
             /* connection related commands */
-            'ping'                      => 'Predis\Command\ConnectionPing',
-            'auth'                      => 'Predis\Command\ConnectionAuth',
-            'select'                    => 'Predis\Command\ConnectionSelect',
-            'echo'                      => 'Predis\Command\ConnectionEcho',
-            'quit'                      => 'Predis\Command\ConnectionQuit',
+            'PING'                      => 'Predis\Command\ConnectionPing',
+            'AUTH'                      => 'Predis\Command\ConnectionAuth',
+            'SELECT'                    => 'Predis\Command\ConnectionSelect',
+            'ECHO'                      => 'Predis\Command\ConnectionEcho',
+            'QUIT'                      => 'Predis\Command\ConnectionQuit',
 
             /* remote server control commands */
-            'info'                      => 'Predis\Command\ServerInfo',
-            'slaveof'                   => 'Predis\Command\ServerSlaveOf',
-            'monitor'                   => 'Predis\Command\ServerMonitor',
-            'dbsize'                    => 'Predis\Command\ServerDatabaseSize',
-            'flushdb'                   => 'Predis\Command\ServerFlushDatabase',
-            'flushall'                  => 'Predis\Command\ServerFlushAll',
-            'save'                      => 'Predis\Command\ServerSave',
-            'bgsave'                    => 'Predis\Command\ServerBackgroundSave',
-            'lastsave'                  => 'Predis\Command\ServerLastSave',
-            'shutdown'                  => 'Predis\Command\ServerShutdown',
-            'bgrewriteaof'              => 'Predis\Command\ServerBackgroundRewriteAOF',
+            'INFO'                      => 'Predis\Command\ServerInfo',
+            'SLAVEOF'                   => 'Predis\Command\ServerSlaveOf',
+            'MONITOR'                   => 'Predis\Command\ServerMonitor',
+            'DBSIZE'                    => 'Predis\Command\ServerDatabaseSize',
+            'FLUSHDB'                   => 'Predis\Command\ServerFlushDatabase',
+            'FLUSHALL'                  => 'Predis\Command\ServerFlushAll',
+            'SAVE'                      => 'Predis\Command\ServerSave',
+            'BGSAVE'                    => 'Predis\Command\ServerBackgroundSave',
+            'LASTSAVE'                  => 'Predis\Command\ServerLastSave',
+            'SHUTDOWN'                  => 'Predis\Command\ServerShutdown',
+            'BGREWRITEAOF'              => 'Predis\Command\ServerBackgroundRewriteAOF',
 
 
             /* ---------------- Redis 2.0 ---------------- */
 
             /* commands operating on string values */
-            'setex'                     => 'Predis\Command\StringSetExpire',
-            'append'                    => 'Predis\Command\StringAppend',
-            'substr'                    => 'Predis\Command\StringSubstr',
+            'SETEX'                     => 'Predis\Command\StringSetExpire',
+            'APPEND'                    => 'Predis\Command\StringAppend',
+            'SUBSTR'                    => 'Predis\Command\StringSubstr',
 
             /* commands operating on lists */
-            'blpop'                     => 'Predis\Command\ListPopFirstBlocking',
-            'brpop'                     => 'Predis\Command\ListPopLastBlocking',
+            'BLPOP'                     => 'Predis\Command\ListPopFirstBlocking',
+            'BRPOP'                     => 'Predis\Command\ListPopLastBlocking',
 
             /* commands operating on sorted sets */
-            'zunionstore'               => 'Predis\Command\ZSetUnionStore',
-            'zinterstore'               => 'Predis\Command\ZSetIntersectionStore',
-            'zcount'                    => 'Predis\Command\ZSetCount',
-            'zrank'                     => 'Predis\Command\ZSetRank',
-            'zrevrank'                  => 'Predis\Command\ZSetReverseRank',
-            'zremrangebyrank'           => 'Predis\Command\ZSetRemoveRangeByRank',
+            'ZUNIONSTORE'               => 'Predis\Command\ZSetUnionStore',
+            'ZINTERSTORE'               => 'Predis\Command\ZSetIntersectionStore',
+            'ZCOUNT'                    => 'Predis\Command\ZSetCount',
+            'ZRANK'                     => 'Predis\Command\ZSetRank',
+            'ZREVRANK'                  => 'Predis\Command\ZSetReverseRank',
+            'ZREMRANGEBYRANK'           => 'Predis\Command\ZSetRemoveRangeByRank',
 
             /* commands operating on hashes */
-            'hset'                      => 'Predis\Command\HashSet',
-            'hsetnx'                    => 'Predis\Command\HashSetPreserve',
-            'hmset'                     => 'Predis\Command\HashSetMultiple',
-            'hincrby'                   => 'Predis\Command\HashIncrementBy',
-            'hget'                      => 'Predis\Command\HashGet',
-            'hmget'                     => 'Predis\Command\HashGetMultiple',
-            'hdel'                      => 'Predis\Command\HashDelete',
-            'hexists'                   => 'Predis\Command\HashExists',
-            'hlen'                      => 'Predis\Command\HashLength',
-            'hkeys'                     => 'Predis\Command\HashKeys',
-            'hvals'                     => 'Predis\Command\HashValues',
-            'hgetall'                   => 'Predis\Command\HashGetAll',
+            'HSET'                      => 'Predis\Command\HashSet',
+            'HSETNX'                    => 'Predis\Command\HashSetPreserve',
+            'HMSET'                     => 'Predis\Command\HashSetMultiple',
+            'HINCRBY'                   => 'Predis\Command\HashIncrementBy',
+            'HGET'                      => 'Predis\Command\HashGet',
+            'HMGET'                     => 'Predis\Command\HashGetMultiple',
+            'HDEL'                      => 'Predis\Command\HashDelete',
+            'HEXISTS'                   => 'Predis\Command\HashExists',
+            'HLEN'                      => 'Predis\Command\HashLength',
+            'HKEYS'                     => 'Predis\Command\HashKeys',
+            'HVALS'                     => 'Predis\Command\HashValues',
+            'HGETALL'                   => 'Predis\Command\HashGetAll',
 
             /* transactions */
-            'multi'                     => 'Predis\Command\TransactionMulti',
-            'exec'                      => 'Predis\Command\TransactionExec',
-            'discard'                   => 'Predis\Command\TransactionDiscard',
+            'MULTI'                     => 'Predis\Command\TransactionMulti',
+            'EXEC'                      => 'Predis\Command\TransactionExec',
+            'DISCARD'                   => 'Predis\Command\TransactionDiscard',
 
             /* publish - subscribe */
-            'subscribe'                 => 'Predis\Command\PubSubSubscribe',
-            'unsubscribe'               => 'Predis\Command\PubSubUnsubscribe',
-            'psubscribe'                => 'Predis\Command\PubSubSubscribeByPattern',
-            'punsubscribe'              => 'Predis\Command\PubSubUnsubscribeByPattern',
-            'publish'                   => 'Predis\Command\PubSubPublish',
+            'SUBSCRIBE'                 => 'Predis\Command\PubSubSubscribe',
+            'UNSUBSCRIBE'               => 'Predis\Command\PubSubUnsubscribe',
+            'PSUBSCRIBE'                => 'Predis\Command\PubSubSubscribeByPattern',
+            'PUNSUBSCRIBE'              => 'Predis\Command\PubSubUnsubscribeByPattern',
+            'PUBLISH'                   => 'Predis\Command\PubSubPublish',
 
             /* remote server control commands */
-            'config'                    => 'Predis\Command\ServerConfig',
+            'CONFIG'                    => 'Predis\Command\ServerConfig',
 
 
             /* ---------------- Redis 2.2 ---------------- */
 
             /* commands operating on the key space */
-            'persist'                   => 'Predis\Command\KeyPersist',
+            'PERSIST'                   => 'Predis\Command\KeyPersist',
 
             /* commands operating on string values */
-            'strlen'                    => 'Predis\Command\StringStrlen',
-            'setrange'                  => 'Predis\Command\StringSetRange',
-            'getrange'                  => 'Predis\Command\StringGetRange',
-            'setbit'                    => 'Predis\Command\StringSetBit',
-            'getbit'                    => 'Predis\Command\StringGetBit',
+            'STRLEN'                    => 'Predis\Command\StringStrlen',
+            'SETRANGE'                  => 'Predis\Command\StringSetRange',
+            'GETRANGE'                  => 'Predis\Command\StringGetRange',
+            'SETBIT'                    => 'Predis\Command\StringSetBit',
+            'GETBIT'                    => 'Predis\Command\StringGetBit',
 
             /* commands operating on lists */
-            'rpushx'                    => 'Predis\Command\ListPushTailX',
-            'lpushx'                    => 'Predis\Command\ListPushHeadX',
-            'linsert'                   => 'Predis\Command\ListInsert',
-            'brpoplpush'                => 'Predis\Command\ListPopLastPushHeadBlocking',
+            'RPUSHX'                    => 'Predis\Command\ListPushTailX',
+            'LPUSHX'                    => 'Predis\Command\ListPushHeadX',
+            'LINSERT'                   => 'Predis\Command\ListInsert',
+            'BRPOPLPUSH'                => 'Predis\Command\ListPopLastPushHeadBlocking',
 
             /* commands operating on sorted sets */
-            'zrevrangebyscore'          => 'Predis\Command\ZSetReverseRangeByScore',
+            'ZREVRANGEBYSCORE'          => 'Predis\Command\ZSetReverseRangeByScore',
 
             /* transactions */
-            'watch'                     => 'Predis\Command\TransactionWatch',
-            'unwatch'                   => 'Predis\Command\TransactionUnwatch',
+            'WATCH'                     => 'Predis\Command\TransactionWatch',
+            'UNWATCH'                   => 'Predis\Command\TransactionUnwatch',
 
             /* remote server control commands */
-            'object'                    => 'Predis\Command\ServerObject',
-            'slowlog'                   => 'Predis\Command\ServerSlowlog',
+            'OBJECT'                    => 'Predis\Command\ServerObject',
+            'SLOWLOG'                   => 'Predis\Command\ServerSlowlog',
         );
     }
 }

+ 121 - 121
lib/Predis/Profile/RedisVersion240.php

@@ -35,176 +35,176 @@ class RedisVersion240 extends RedisProfile
             /* ---------------- Redis 1.2 ---------------- */
 
             /* commands operating on the key space */
-            'exists'                    => 'Predis\Command\KeyExists',
-            'del'                       => 'Predis\Command\KeyDelete',
-            'type'                      => 'Predis\Command\KeyType',
-            'keys'                      => 'Predis\Command\KeyKeys',
-            'randomkey'                 => 'Predis\Command\KeyRandom',
-            'rename'                    => 'Predis\Command\KeyRename',
-            'renamenx'                  => 'Predis\Command\KeyRenamePreserve',
-            'expire'                    => 'Predis\Command\KeyExpire',
-            'expireat'                  => 'Predis\Command\KeyExpireAt',
-            'ttl'                       => 'Predis\Command\KeyTimeToLive',
-            'move'                      => 'Predis\Command\KeyMove',
-            'sort'                      => 'Predis\Command\KeySort',
+            'EXISTS'                    => 'Predis\Command\KeyExists',
+            'DEL'                       => 'Predis\Command\KeyDelete',
+            'TYPE'                      => 'Predis\Command\KeyType',
+            'KEYS'                      => 'Predis\Command\KeyKeys',
+            'RANDOMKEY'                 => 'Predis\Command\KeyRandom',
+            'RENAME'                    => 'Predis\Command\KeyRename',
+            'RENAMENX'                  => 'Predis\Command\KeyRenamePreserve',
+            'EXPIRE'                    => 'Predis\Command\KeyExpire',
+            'EXPIREAT'                  => 'Predis\Command\KeyExpireAt',
+            'TTL'                       => 'Predis\Command\KeyTimeToLive',
+            'MOVE'                      => 'Predis\Command\KeyMove',
+            'SORT'                      => 'Predis\Command\KeySort',
 
             /* commands operating on string values */
-            'set'                       => 'Predis\Command\StringSet',
-            'setnx'                     => 'Predis\Command\StringSetPreserve',
-            'mset'                      => 'Predis\Command\StringSetMultiple',
-            'msetnx'                    => 'Predis\Command\StringSetMultiplePreserve',
-            'get'                       => 'Predis\Command\StringGet',
-            'mget'                      => 'Predis\Command\StringGetMultiple',
-            'getset'                    => 'Predis\Command\StringGetSet',
-            'incr'                      => 'Predis\Command\StringIncrement',
-            'incrby'                    => 'Predis\Command\StringIncrementBy',
-            'decr'                      => 'Predis\Command\StringDecrement',
-            'decrby'                    => 'Predis\Command\StringDecrementBy',
+            'SET'                       => 'Predis\Command\StringSet',
+            'SETNX'                     => 'Predis\Command\StringSetPreserve',
+            'MSET'                      => 'Predis\Command\StringSetMultiple',
+            'MSETNX'                    => 'Predis\Command\StringSetMultiplePreserve',
+            'GET'                       => 'Predis\Command\StringGet',
+            'MGET'                      => 'Predis\Command\StringGetMultiple',
+            'GETSET'                    => 'Predis\Command\StringGetSet',
+            'INCR'                      => 'Predis\Command\StringIncrement',
+            'INCRBY'                    => 'Predis\Command\StringIncrementBy',
+            'DECR'                      => 'Predis\Command\StringDecrement',
+            'DECRBY'                    => 'Predis\Command\StringDecrementBy',
 
             /* commands operating on lists */
-            'rpush'                     => 'Predis\Command\ListPushTail',
-            'lpush'                     => 'Predis\Command\ListPushHead',
-            'llen'                      => 'Predis\Command\ListLength',
-            'lrange'                    => 'Predis\Command\ListRange',
-            'ltrim'                     => 'Predis\Command\ListTrim',
-            'lindex'                    => 'Predis\Command\ListIndex',
-            'lset'                      => 'Predis\Command\ListSet',
-            'lrem'                      => 'Predis\Command\ListRemove',
-            'lpop'                      => 'Predis\Command\ListPopFirst',
-            'rpop'                      => 'Predis\Command\ListPopLast',
-            'rpoplpush'                 => 'Predis\Command\ListPopLastPushHead',
+            'RPUSH'                     => 'Predis\Command\ListPushTail',
+            'LPUSH'                     => 'Predis\Command\ListPushHead',
+            'LLEN'                      => 'Predis\Command\ListLength',
+            'LRANGE'                    => 'Predis\Command\ListRange',
+            'LTRIM'                     => 'Predis\Command\ListTrim',
+            'LINDEX'                    => 'Predis\Command\ListIndex',
+            'LSET'                      => 'Predis\Command\ListSet',
+            'LREM'                      => 'Predis\Command\ListRemove',
+            'LPOP'                      => 'Predis\Command\ListPopFirst',
+            'RPOP'                      => 'Predis\Command\ListPopLast',
+            'RPOPLPUSH'                 => 'Predis\Command\ListPopLastPushHead',
 
             /* commands operating on sets */
-            'sadd'                      => 'Predis\Command\SetAdd',
-            'srem'                      => 'Predis\Command\SetRemove',
-            'spop'                      => 'Predis\Command\SetPop',
-            'smove'                     => 'Predis\Command\SetMove',
-            'scard'                     => 'Predis\Command\SetCardinality',
-            'sismember'                 => 'Predis\Command\SetIsMember',
-            'sinter'                    => 'Predis\Command\SetIntersection',
-            'sinterstore'               => 'Predis\Command\SetIntersectionStore',
-            'sunion'                    => 'Predis\Command\SetUnion',
-            'sunionstore'               => 'Predis\Command\SetUnionStore',
-            'sdiff'                     => 'Predis\Command\SetDifference',
-            'sdiffstore'                => 'Predis\Command\SetDifferenceStore',
-            'smembers'                  => 'Predis\Command\SetMembers',
-            'srandmember'               => 'Predis\Command\SetRandomMember',
+            'SADD'                      => 'Predis\Command\SetAdd',
+            'SREM'                      => 'Predis\Command\SetRemove',
+            'SPOP'                      => 'Predis\Command\SetPop',
+            'SMOVE'                     => 'Predis\Command\SetMove',
+            'SCARD'                     => 'Predis\Command\SetCardinality',
+            'SISMEMBER'                 => 'Predis\Command\SetIsMember',
+            'SINTER'                    => 'Predis\Command\SetIntersection',
+            'SINTERSTORE'               => 'Predis\Command\SetIntersectionStore',
+            'SUNION'                    => 'Predis\Command\SetUnion',
+            'SUNIONSTORE'               => 'Predis\Command\SetUnionStore',
+            'SDIFF'                     => 'Predis\Command\SetDifference',
+            'SDIFFSTORE'                => 'Predis\Command\SetDifferenceStore',
+            'SMEMBERS'                  => 'Predis\Command\SetMembers',
+            'SRANDMEMBER'               => 'Predis\Command\SetRandomMember',
 
             /* commands operating on sorted sets */
-            'zadd'                      => 'Predis\Command\ZSetAdd',
-            'zincrby'                   => 'Predis\Command\ZSetIncrementBy',
-            'zrem'                      => 'Predis\Command\ZSetRemove',
-            'zrange'                    => 'Predis\Command\ZSetRange',
-            'zrevrange'                 => 'Predis\Command\ZSetReverseRange',
-            'zrangebyscore'             => 'Predis\Command\ZSetRangeByScore',
-            'zcard'                     => 'Predis\Command\ZSetCardinality',
-            'zscore'                    => 'Predis\Command\ZSetScore',
-            'zremrangebyscore'          => 'Predis\Command\ZSetRemoveRangeByScore',
+            'ZADD'                      => 'Predis\Command\ZSetAdd',
+            'ZINCRBY'                   => 'Predis\Command\ZSetIncrementBy',
+            'ZREM'                      => 'Predis\Command\ZSetRemove',
+            'ZRANGE'                    => 'Predis\Command\ZSetRange',
+            'ZREVRANGE'                 => 'Predis\Command\ZSetReverseRange',
+            'ZRANGEBYSCORE'             => 'Predis\Command\ZSetRangeByScore',
+            'ZCARD'                     => 'Predis\Command\ZSetCardinality',
+            'ZSCORE'                    => 'Predis\Command\ZSetScore',
+            'ZREMRANGEBYSCORE'          => 'Predis\Command\ZSetRemoveRangeByScore',
 
             /* connection related commands */
-            'ping'                      => 'Predis\Command\ConnectionPing',
-            'auth'                      => 'Predis\Command\ConnectionAuth',
-            'select'                    => 'Predis\Command\ConnectionSelect',
-            'echo'                      => 'Predis\Command\ConnectionEcho',
-            'quit'                      => 'Predis\Command\ConnectionQuit',
+            'PING'                      => 'Predis\Command\ConnectionPing',
+            'AUTH'                      => 'Predis\Command\ConnectionAuth',
+            'SELECT'                    => 'Predis\Command\ConnectionSelect',
+            'ECHO'                      => 'Predis\Command\ConnectionEcho',
+            'QUIT'                      => 'Predis\Command\ConnectionQuit',
 
             /* remote server control commands */
-            'info'                      => 'Predis\Command\ServerInfo',
-            'slaveof'                   => 'Predis\Command\ServerSlaveOf',
-            'monitor'                   => 'Predis\Command\ServerMonitor',
-            'dbsize'                    => 'Predis\Command\ServerDatabaseSize',
-            'flushdb'                   => 'Predis\Command\ServerFlushDatabase',
-            'flushall'                  => 'Predis\Command\ServerFlushAll',
-            'save'                      => 'Predis\Command\ServerSave',
-            'bgsave'                    => 'Predis\Command\ServerBackgroundSave',
-            'lastsave'                  => 'Predis\Command\ServerLastSave',
-            'shutdown'                  => 'Predis\Command\ServerShutdown',
-            'bgrewriteaof'              => 'Predis\Command\ServerBackgroundRewriteAOF',
+            'INFO'                      => 'Predis\Command\ServerInfo',
+            'SLAVEOF'                   => 'Predis\Command\ServerSlaveOf',
+            'MONITOR'                   => 'Predis\Command\ServerMonitor',
+            'DBSIZE'                    => 'Predis\Command\ServerDatabaseSize',
+            'FLUSHDB'                   => 'Predis\Command\ServerFlushDatabase',
+            'FLUSHALL'                  => 'Predis\Command\ServerFlushAll',
+            'SAVE'                      => 'Predis\Command\ServerSave',
+            'BGSAVE'                    => 'Predis\Command\ServerBackgroundSave',
+            'LASTSAVE'                  => 'Predis\Command\ServerLastSave',
+            'SHUTDOWN'                  => 'Predis\Command\ServerShutdown',
+            'BGREWRITEAOF'              => 'Predis\Command\ServerBackgroundRewriteAOF',
 
 
             /* ---------------- Redis 2.0 ---------------- */
 
             /* commands operating on string values */
-            'setex'                     => 'Predis\Command\StringSetExpire',
-            'append'                    => 'Predis\Command\StringAppend',
-            'substr'                    => 'Predis\Command\StringSubstr',
+            'SETEX'                     => 'Predis\Command\StringSetExpire',
+            'APPEND'                    => 'Predis\Command\StringAppend',
+            'SUBSTR'                    => 'Predis\Command\StringSubstr',
 
             /* commands operating on lists */
-            'blpop'                     => 'Predis\Command\ListPopFirstBlocking',
-            'brpop'                     => 'Predis\Command\ListPopLastBlocking',
+            'BLPOP'                     => 'Predis\Command\ListPopFirstBlocking',
+            'BRPOP'                     => 'Predis\Command\ListPopLastBlocking',
 
             /* commands operating on sorted sets */
-            'zunionstore'               => 'Predis\Command\ZSetUnionStore',
-            'zinterstore'               => 'Predis\Command\ZSetIntersectionStore',
-            'zcount'                    => 'Predis\Command\ZSetCount',
-            'zrank'                     => 'Predis\Command\ZSetRank',
-            'zrevrank'                  => 'Predis\Command\ZSetReverseRank',
-            'zremrangebyrank'           => 'Predis\Command\ZSetRemoveRangeByRank',
+            'ZUNIONSTORE'               => 'Predis\Command\ZSetUnionStore',
+            'ZINTERSTORE'               => 'Predis\Command\ZSetIntersectionStore',
+            'ZCOUNT'                    => 'Predis\Command\ZSetCount',
+            'ZRANK'                     => 'Predis\Command\ZSetRank',
+            'ZREVRANK'                  => 'Predis\Command\ZSetReverseRank',
+            'ZREMRANGEBYRANK'           => 'Predis\Command\ZSetRemoveRangeByRank',
 
             /* commands operating on hashes */
-            'hset'                      => 'Predis\Command\HashSet',
-            'hsetnx'                    => 'Predis\Command\HashSetPreserve',
-            'hmset'                     => 'Predis\Command\HashSetMultiple',
-            'hincrby'                   => 'Predis\Command\HashIncrementBy',
-            'hget'                      => 'Predis\Command\HashGet',
-            'hmget'                     => 'Predis\Command\HashGetMultiple',
-            'hdel'                      => 'Predis\Command\HashDelete',
-            'hexists'                   => 'Predis\Command\HashExists',
-            'hlen'                      => 'Predis\Command\HashLength',
-            'hkeys'                     => 'Predis\Command\HashKeys',
-            'hvals'                     => 'Predis\Command\HashValues',
-            'hgetall'                   => 'Predis\Command\HashGetAll',
+            'HSET'                      => 'Predis\Command\HashSet',
+            'HSETNX'                    => 'Predis\Command\HashSetPreserve',
+            'HMSET'                     => 'Predis\Command\HashSetMultiple',
+            'HINCRBY'                   => 'Predis\Command\HashIncrementBy',
+            'HGET'                      => 'Predis\Command\HashGet',
+            'HMGET'                     => 'Predis\Command\HashGetMultiple',
+            'HDEL'                      => 'Predis\Command\HashDelete',
+            'HEXISTS'                   => 'Predis\Command\HashExists',
+            'HLEN'                      => 'Predis\Command\HashLength',
+            'HKEYS'                     => 'Predis\Command\HashKeys',
+            'HVALS'                     => 'Predis\Command\HashValues',
+            'HGETALL'                   => 'Predis\Command\HashGetAll',
 
             /* transactions */
-            'multi'                     => 'Predis\Command\TransactionMulti',
-            'exec'                      => 'Predis\Command\TransactionExec',
-            'discard'                   => 'Predis\Command\TransactionDiscard',
+            'MULTI'                     => 'Predis\Command\TransactionMulti',
+            'EXEC'                      => 'Predis\Command\TransactionExec',
+            'DISCARD'                   => 'Predis\Command\TransactionDiscard',
 
             /* publish - subscribe */
-            'subscribe'                 => 'Predis\Command\PubSubSubscribe',
-            'unsubscribe'               => 'Predis\Command\PubSubUnsubscribe',
-            'psubscribe'                => 'Predis\Command\PubSubSubscribeByPattern',
-            'punsubscribe'              => 'Predis\Command\PubSubUnsubscribeByPattern',
-            'publish'                   => 'Predis\Command\PubSubPublish',
+            'SUBSCRIBE'                 => 'Predis\Command\PubSubSubscribe',
+            'UNSUBSCRIBE'               => 'Predis\Command\PubSubUnsubscribe',
+            'PSUBSCRIBE'                => 'Predis\Command\PubSubSubscribeByPattern',
+            'PUNSUBSCRIBE'              => 'Predis\Command\PubSubUnsubscribeByPattern',
+            'PUBLISH'                   => 'Predis\Command\PubSubPublish',
 
             /* remote server control commands */
-            'config'                    => 'Predis\Command\ServerConfig',
+            'CONFIG'                    => 'Predis\Command\ServerConfig',
 
 
             /* ---------------- Redis 2.2 ---------------- */
 
             /* commands operating on the key space */
-            'persist'                   => 'Predis\Command\KeyPersist',
+            'PERSIST'                   => 'Predis\Command\KeyPersist',
 
             /* commands operating on string values */
-            'strlen'                    => 'Predis\Command\StringStrlen',
-            'setrange'                  => 'Predis\Command\StringSetRange',
-            'getrange'                  => 'Predis\Command\StringGetRange',
-            'setbit'                    => 'Predis\Command\StringSetBit',
-            'getbit'                    => 'Predis\Command\StringGetBit',
+            'STRLEN'                    => 'Predis\Command\StringStrlen',
+            'SETRANGE'                  => 'Predis\Command\StringSetRange',
+            'GETRANGE'                  => 'Predis\Command\StringGetRange',
+            'SETBIT'                    => 'Predis\Command\StringSetBit',
+            'GETBIT'                    => 'Predis\Command\StringGetBit',
 
             /* commands operating on lists */
-            'rpushx'                    => 'Predis\Command\ListPushTailX',
-            'lpushx'                    => 'Predis\Command\ListPushHeadX',
-            'linsert'                   => 'Predis\Command\ListInsert',
-            'brpoplpush'                => 'Predis\Command\ListPopLastPushHeadBlocking',
+            'RPUSHX'                    => 'Predis\Command\ListPushTailX',
+            'LPUSHX'                    => 'Predis\Command\ListPushHeadX',
+            'LINSERT'                   => 'Predis\Command\ListInsert',
+            'BRPOPLPUSH'                => 'Predis\Command\ListPopLastPushHeadBlocking',
 
             /* commands operating on sorted sets */
-            'zrevrangebyscore'          => 'Predis\Command\ZSetReverseRangeByScore',
+            'ZREVRANGEBYSCORE'          => 'Predis\Command\ZSetReverseRangeByScore',
 
             /* transactions */
-            'watch'                     => 'Predis\Command\TransactionWatch',
-            'unwatch'                   => 'Predis\Command\TransactionUnwatch',
+            'WATCH'                     => 'Predis\Command\TransactionWatch',
+            'UNWATCH'                   => 'Predis\Command\TransactionUnwatch',
 
             /* remote server control commands */
-            'object'                    => 'Predis\Command\ServerObject',
-            'slowlog'                   => 'Predis\Command\ServerSlowlog',
+            'OBJECT'                    => 'Predis\Command\ServerObject',
+            'SLOWLOG'                   => 'Predis\Command\ServerSlowlog',
 
 
             /* ---------------- Redis 2.4 ---------------- */
 
             /* remote server control commands */
-            'client'                    => 'Predis\Command\ServerClient',
+            'CLIENT'                    => 'Predis\Command\ServerClient',
         );
     }
 }

+ 137 - 137
lib/Predis/Profile/RedisVersion260.php

@@ -35,205 +35,205 @@ class RedisVersion260 extends RedisProfile
             /* ---------------- Redis 1.2 ---------------- */
 
             /* commands operating on the key space */
-            'exists'                    => 'Predis\Command\KeyExists',
-            'del'                       => 'Predis\Command\KeyDelete',
-            'type'                      => 'Predis\Command\KeyType',
-            'keys'                      => 'Predis\Command\KeyKeys',
-            'randomkey'                 => 'Predis\Command\KeyRandom',
-            'rename'                    => 'Predis\Command\KeyRename',
-            'renamenx'                  => 'Predis\Command\KeyRenamePreserve',
-            'expire'                    => 'Predis\Command\KeyExpire',
-            'expireat'                  => 'Predis\Command\KeyExpireAt',
-            'ttl'                       => 'Predis\Command\KeyTimeToLive',
-            'move'                      => 'Predis\Command\KeyMove',
-            'sort'                      => 'Predis\Command\KeySort',
-            'dump'                      => 'Predis\Command\KeyDump',
-            'restore'                   => 'Predis\Command\KeyRestore',
+            'EXISTS'                    => 'Predis\Command\KeyExists',
+            'DEL'                       => 'Predis\Command\KeyDelete',
+            'TYPE'                      => 'Predis\Command\KeyType',
+            'KEYS'                      => 'Predis\Command\KeyKeys',
+            'RANDOMKEY'                 => 'Predis\Command\KeyRandom',
+            'RENAME'                    => 'Predis\Command\KeyRename',
+            'RENAMENX'                  => 'Predis\Command\KeyRenamePreserve',
+            'EXPIRE'                    => 'Predis\Command\KeyExpire',
+            'EXPIREAT'                  => 'Predis\Command\KeyExpireAt',
+            'TTL'                       => 'Predis\Command\KeyTimeToLive',
+            'MOVE'                      => 'Predis\Command\KeyMove',
+            'SORT'                      => 'Predis\Command\KeySort',
+            'DUMP'                      => 'Predis\Command\KeyDump',
+            'RESTORE'                   => 'Predis\Command\KeyRestore',
 
             /* commands operating on string values */
-            'set'                       => 'Predis\Command\StringSet',
-            'setnx'                     => 'Predis\Command\StringSetPreserve',
-            'mset'                      => 'Predis\Command\StringSetMultiple',
-            'msetnx'                    => 'Predis\Command\StringSetMultiplePreserve',
-            'get'                       => 'Predis\Command\StringGet',
-            'mget'                      => 'Predis\Command\StringGetMultiple',
-            'getset'                    => 'Predis\Command\StringGetSet',
-            'incr'                      => 'Predis\Command\StringIncrement',
-            'incrby'                    => 'Predis\Command\StringIncrementBy',
-            'decr'                      => 'Predis\Command\StringDecrement',
-            'decrby'                    => 'Predis\Command\StringDecrementBy',
+            'SET'                       => 'Predis\Command\StringSet',
+            'SETNX'                     => 'Predis\Command\StringSetPreserve',
+            'MSET'                      => 'Predis\Command\StringSetMultiple',
+            'MSETNX'                    => 'Predis\Command\StringSetMultiplePreserve',
+            'GET'                       => 'Predis\Command\StringGet',
+            'MGET'                      => 'Predis\Command\StringGetMultiple',
+            'GETSET'                    => 'Predis\Command\StringGetSet',
+            'INCR'                      => 'Predis\Command\StringIncrement',
+            'INCRBY'                    => 'Predis\Command\StringIncrementBy',
+            'DECR'                      => 'Predis\Command\StringDecrement',
+            'DECRBY'                    => 'Predis\Command\StringDecrementBy',
 
             /* commands operating on lists */
-            'rpush'                     => 'Predis\Command\ListPushTail',
-            'lpush'                     => 'Predis\Command\ListPushHead',
-            'llen'                      => 'Predis\Command\ListLength',
-            'lrange'                    => 'Predis\Command\ListRange',
-            'ltrim'                     => 'Predis\Command\ListTrim',
-            'lindex'                    => 'Predis\Command\ListIndex',
-            'lset'                      => 'Predis\Command\ListSet',
-            'lrem'                      => 'Predis\Command\ListRemove',
-            'lpop'                      => 'Predis\Command\ListPopFirst',
-            'rpop'                      => 'Predis\Command\ListPopLast',
-            'rpoplpush'                 => 'Predis\Command\ListPopLastPushHead',
+            'RPUSH'                     => 'Predis\Command\ListPushTail',
+            'LPUSH'                     => 'Predis\Command\ListPushHead',
+            'LLEN'                      => 'Predis\Command\ListLength',
+            'LRANGE'                    => 'Predis\Command\ListRange',
+            'LTRIM'                     => 'Predis\Command\ListTrim',
+            'LINDEX'                    => 'Predis\Command\ListIndex',
+            'LSET'                      => 'Predis\Command\ListSet',
+            'LREM'                      => 'Predis\Command\ListRemove',
+            'LPOP'                      => 'Predis\Command\ListPopFirst',
+            'RPOP'                      => 'Predis\Command\ListPopLast',
+            'RPOPLPUSH'                 => 'Predis\Command\ListPopLastPushHead',
 
             /* commands operating on sets */
-            'sadd'                      => 'Predis\Command\SetAdd',
-            'srem'                      => 'Predis\Command\SetRemove',
-            'spop'                      => 'Predis\Command\SetPop',
-            'smove'                     => 'Predis\Command\SetMove',
-            'scard'                     => 'Predis\Command\SetCardinality',
-            'sismember'                 => 'Predis\Command\SetIsMember',
-            'sinter'                    => 'Predis\Command\SetIntersection',
-            'sinterstore'               => 'Predis\Command\SetIntersectionStore',
-            'sunion'                    => 'Predis\Command\SetUnion',
-            'sunionstore'               => 'Predis\Command\SetUnionStore',
-            'sdiff'                     => 'Predis\Command\SetDifference',
-            'sdiffstore'                => 'Predis\Command\SetDifferenceStore',
-            'smembers'                  => 'Predis\Command\SetMembers',
-            'srandmember'               => 'Predis\Command\SetRandomMember',
+            'SADD'                      => 'Predis\Command\SetAdd',
+            'SREM'                      => 'Predis\Command\SetRemove',
+            'SPOP'                      => 'Predis\Command\SetPop',
+            'SMOVE'                     => 'Predis\Command\SetMove',
+            'SCARD'                     => 'Predis\Command\SetCardinality',
+            'SISMEMBER'                 => 'Predis\Command\SetIsMember',
+            'SINTER'                    => 'Predis\Command\SetIntersection',
+            'SINTERSTORE'               => 'Predis\Command\SetIntersectionStore',
+            'SUNION'                    => 'Predis\Command\SetUnion',
+            'SUNIONSTORE'               => 'Predis\Command\SetUnionStore',
+            'SDIFF'                     => 'Predis\Command\SetDifference',
+            'SDIFFSTORE'                => 'Predis\Command\SetDifferenceStore',
+            'SMEMBERS'                  => 'Predis\Command\SetMembers',
+            'SRANDMEMBER'               => 'Predis\Command\SetRandomMember',
 
             /* commands operating on sorted sets */
-            'zadd'                      => 'Predis\Command\ZSetAdd',
-            'zincrby'                   => 'Predis\Command\ZSetIncrementBy',
-            'zrem'                      => 'Predis\Command\ZSetRemove',
-            'zrange'                    => 'Predis\Command\ZSetRange',
-            'zrevrange'                 => 'Predis\Command\ZSetReverseRange',
-            'zrangebyscore'             => 'Predis\Command\ZSetRangeByScore',
-            'zcard'                     => 'Predis\Command\ZSetCardinality',
-            'zscore'                    => 'Predis\Command\ZSetScore',
-            'zremrangebyscore'          => 'Predis\Command\ZSetRemoveRangeByScore',
+            'ZADD'                      => 'Predis\Command\ZSetAdd',
+            'ZINCRBY'                   => 'Predis\Command\ZSetIncrementBy',
+            'ZREM'                      => 'Predis\Command\ZSetRemove',
+            'ZRANGE'                    => 'Predis\Command\ZSetRange',
+            'ZREVRANGE'                 => 'Predis\Command\ZSetReverseRange',
+            'ZRANGEBYSCORE'             => 'Predis\Command\ZSetRangeByScore',
+            'ZCARD'                     => 'Predis\Command\ZSetCardinality',
+            'ZSCORE'                    => 'Predis\Command\ZSetScore',
+            'ZREMRANGEBYSCORE'          => 'Predis\Command\ZSetRemoveRangeByScore',
 
             /* connection related commands */
-            'ping'                      => 'Predis\Command\ConnectionPing',
-            'auth'                      => 'Predis\Command\ConnectionAuth',
-            'select'                    => 'Predis\Command\ConnectionSelect',
-            'echo'                      => 'Predis\Command\ConnectionEcho',
-            'quit'                      => 'Predis\Command\ConnectionQuit',
+            'PING'                      => 'Predis\Command\ConnectionPing',
+            'AUTH'                      => 'Predis\Command\ConnectionAuth',
+            'SELECT'                    => 'Predis\Command\ConnectionSelect',
+            'ECHO'                      => 'Predis\Command\ConnectionEcho',
+            'QUIT'                      => 'Predis\Command\ConnectionQuit',
 
             /* remote server control commands */
-            'info'                      => 'Predis\Command\ServerInfo',
-            'slaveof'                   => 'Predis\Command\ServerSlaveOf',
-            'monitor'                   => 'Predis\Command\ServerMonitor',
-            'dbsize'                    => 'Predis\Command\ServerDatabaseSize',
-            'flushdb'                   => 'Predis\Command\ServerFlushDatabase',
-            'flushall'                  => 'Predis\Command\ServerFlushAll',
-            'save'                      => 'Predis\Command\ServerSave',
-            'bgsave'                    => 'Predis\Command\ServerBackgroundSave',
-            'lastsave'                  => 'Predis\Command\ServerLastSave',
-            'shutdown'                  => 'Predis\Command\ServerShutdown',
-            'bgrewriteaof'              => 'Predis\Command\ServerBackgroundRewriteAOF',
+            'INFO'                      => 'Predis\Command\ServerInfo',
+            'SLAVEOF'                   => 'Predis\Command\ServerSlaveOf',
+            'MONITOR'                   => 'Predis\Command\ServerMonitor',
+            'DBSIZE'                    => 'Predis\Command\ServerDatabaseSize',
+            'FLUSHDB'                   => 'Predis\Command\ServerFlushDatabase',
+            'FLUSHALL'                  => 'Predis\Command\ServerFlushAll',
+            'SAVE'                      => 'Predis\Command\ServerSave',
+            'BGSAVE'                    => 'Predis\Command\ServerBackgroundSave',
+            'LASTSAVE'                  => 'Predis\Command\ServerLastSave',
+            'SHUTDOWN'                  => 'Predis\Command\ServerShutdown',
+            'BGREWRITEAOF'              => 'Predis\Command\ServerBackgroundRewriteAOF',
 
 
             /* ---------------- Redis 2.0 ---------------- */
 
             /* commands operating on string values */
-            'setex'                     => 'Predis\Command\StringSetExpire',
-            'append'                    => 'Predis\Command\StringAppend',
-            'substr'                    => 'Predis\Command\StringSubstr',
+            'SETEX'                     => 'Predis\Command\StringSetExpire',
+            'APPEND'                    => 'Predis\Command\StringAppend',
+            'SUBSTR'                    => 'Predis\Command\StringSubstr',
 
             /* commands operating on lists */
-            'blpop'                     => 'Predis\Command\ListPopFirstBlocking',
-            'brpop'                     => 'Predis\Command\ListPopLastBlocking',
+            'BLPOP'                     => 'Predis\Command\ListPopFirstBlocking',
+            'BRPOP'                     => 'Predis\Command\ListPopLastBlocking',
 
             /* commands operating on sorted sets */
-            'zunionstore'               => 'Predis\Command\ZSetUnionStore',
-            'zinterstore'               => 'Predis\Command\ZSetIntersectionStore',
-            'zcount'                    => 'Predis\Command\ZSetCount',
-            'zrank'                     => 'Predis\Command\ZSetRank',
-            'zrevrank'                  => 'Predis\Command\ZSetReverseRank',
-            'zremrangebyrank'           => 'Predis\Command\ZSetRemoveRangeByRank',
+            'ZUNIONSTORE'               => 'Predis\Command\ZSetUnionStore',
+            'ZINTERSTORE'               => 'Predis\Command\ZSetIntersectionStore',
+            'ZCOUNT'                    => 'Predis\Command\ZSetCount',
+            'ZRANK'                     => 'Predis\Command\ZSetRank',
+            'ZREVRANK'                  => 'Predis\Command\ZSetReverseRank',
+            'ZREMRANGEBYRANK'           => 'Predis\Command\ZSetRemoveRangeByRank',
 
             /* commands operating on hashes */
-            'hset'                      => 'Predis\Command\HashSet',
-            'hsetnx'                    => 'Predis\Command\HashSetPreserve',
-            'hmset'                     => 'Predis\Command\HashSetMultiple',
-            'hincrby'                   => 'Predis\Command\HashIncrementBy',
-            'hget'                      => 'Predis\Command\HashGet',
-            'hmget'                     => 'Predis\Command\HashGetMultiple',
-            'hdel'                      => 'Predis\Command\HashDelete',
-            'hexists'                   => 'Predis\Command\HashExists',
-            'hlen'                      => 'Predis\Command\HashLength',
-            'hkeys'                     => 'Predis\Command\HashKeys',
-            'hvals'                     => 'Predis\Command\HashValues',
-            'hgetall'                   => 'Predis\Command\HashGetAll',
+            'HSET'                      => 'Predis\Command\HashSet',
+            'HSETNX'                    => 'Predis\Command\HashSetPreserve',
+            'HMSET'                     => 'Predis\Command\HashSetMultiple',
+            'HINCRBY'                   => 'Predis\Command\HashIncrementBy',
+            'HGET'                      => 'Predis\Command\HashGet',
+            'HMGET'                     => 'Predis\Command\HashGetMultiple',
+            'HDEL'                      => 'Predis\Command\HashDelete',
+            'HEXISTS'                   => 'Predis\Command\HashExists',
+            'HLEN'                      => 'Predis\Command\HashLength',
+            'HKEYS'                     => 'Predis\Command\HashKeys',
+            'HVALS'                     => 'Predis\Command\HashValues',
+            'HGETALL'                   => 'Predis\Command\HashGetAll',
 
             /* transactions */
-            'multi'                     => 'Predis\Command\TransactionMulti',
-            'exec'                      => 'Predis\Command\TransactionExec',
-            'discard'                   => 'Predis\Command\TransactionDiscard',
+            'MULTI'                     => 'Predis\Command\TransactionMulti',
+            'EXEC'                      => 'Predis\Command\TransactionExec',
+            'DISCARD'                   => 'Predis\Command\TransactionDiscard',
 
             /* publish - subscribe */
-            'subscribe'                 => 'Predis\Command\PubSubSubscribe',
-            'unsubscribe'               => 'Predis\Command\PubSubUnsubscribe',
-            'psubscribe'                => 'Predis\Command\PubSubSubscribeByPattern',
-            'punsubscribe'              => 'Predis\Command\PubSubUnsubscribeByPattern',
-            'publish'                   => 'Predis\Command\PubSubPublish',
+            'SUBSCRIBE'                 => 'Predis\Command\PubSubSubscribe',
+            'UNSUBSCRIBE'               => 'Predis\Command\PubSubUnsubscribe',
+            'PSUBSCRIBE'                => 'Predis\Command\PubSubSubscribeByPattern',
+            'PUNSUBSCRIBE'              => 'Predis\Command\PubSubUnsubscribeByPattern',
+            'PUBLISH'                   => 'Predis\Command\PubSubPublish',
 
             /* remote server control commands */
-            'config'                    => 'Predis\Command\ServerConfig',
+            'CONFIG'                    => 'Predis\Command\ServerConfig',
 
 
             /* ---------------- Redis 2.2 ---------------- */
 
             /* commands operating on the key space */
-            'persist'                   => 'Predis\Command\KeyPersist',
+            'PERSIST'                   => 'Predis\Command\KeyPersist',
 
             /* commands operating on string values */
-            'strlen'                    => 'Predis\Command\StringStrlen',
-            'setrange'                  => 'Predis\Command\StringSetRange',
-            'getrange'                  => 'Predis\Command\StringGetRange',
-            'setbit'                    => 'Predis\Command\StringSetBit',
-            'getbit'                    => 'Predis\Command\StringGetBit',
+            'STRLEN'                    => 'Predis\Command\StringStrlen',
+            'SETRANGE'                  => 'Predis\Command\StringSetRange',
+            'GETRANGE'                  => 'Predis\Command\StringGetRange',
+            'SETBIT'                    => 'Predis\Command\StringSetBit',
+            'GETBIT'                    => 'Predis\Command\StringGetBit',
 
             /* commands operating on lists */
-            'rpushx'                    => 'Predis\Command\ListPushTailX',
-            'lpushx'                    => 'Predis\Command\ListPushHeadX',
-            'linsert'                   => 'Predis\Command\ListInsert',
-            'brpoplpush'                => 'Predis\Command\ListPopLastPushHeadBlocking',
+            'RPUSHX'                    => 'Predis\Command\ListPushTailX',
+            'LPUSHX'                    => 'Predis\Command\ListPushHeadX',
+            'LINSERT'                   => 'Predis\Command\ListInsert',
+            'BRPOPLPUSH'                => 'Predis\Command\ListPopLastPushHeadBlocking',
 
             /* commands operating on sorted sets */
-            'zrevrangebyscore'          => 'Predis\Command\ZSetReverseRangeByScore',
+            'ZREVRANGEBYSCORE'          => 'Predis\Command\ZSetReverseRangeByScore',
 
             /* transactions */
-            'watch'                     => 'Predis\Command\TransactionWatch',
-            'unwatch'                   => 'Predis\Command\TransactionUnwatch',
+            'WATCH'                     => 'Predis\Command\TransactionWatch',
+            'UNWATCH'                   => 'Predis\Command\TransactionUnwatch',
 
             /* remote server control commands */
-            'object'                    => 'Predis\Command\ServerObject',
-            'slowlog'                   => 'Predis\Command\ServerSlowlog',
+            'OBJECT'                    => 'Predis\Command\ServerObject',
+            'SLOWLOG'                   => 'Predis\Command\ServerSlowlog',
 
 
             /* ---------------- Redis 2.4 ---------------- */
 
             /* remote server control commands */
-            'client'                    => 'Predis\Command\ServerClient',
+            'CLIENT'                    => 'Predis\Command\ServerClient',
 
 
             /* ---------------- Redis 2.6 ---------------- */
 
             /* commands operating on the key space */
-            'pttl'                      => 'Predis\Command\KeyPreciseTimeToLive',
-            'pexpire'                   => 'Predis\Command\KeyPreciseExpire',
-            'pexpireat'                 => 'Predis\Command\KeyPreciseExpireAt',
+            'PTTL'                      => 'Predis\Command\KeyPreciseTimeToLive',
+            'PEXPIRE'                   => 'Predis\Command\KeyPreciseExpire',
+            'PEXPIREAT'                 => 'Predis\Command\KeyPreciseExpireAt',
 
             /* commands operating on string values */
-            'psetex'                    => 'Predis\Command\StringPreciseSetExpire',
-            'incrbyfloat'               => 'Predis\Command\StringIncrementByFloat',
-            'bitop'                     => 'Predis\Command\StringBitOp',
-            'bitcount'                  => 'Predis\Command\StringBitCount',
+            'PSETEX'                    => 'Predis\Command\StringPreciseSetExpire',
+            'INCRBYFLOAT'               => 'Predis\Command\StringIncrementByFloat',
+            'BITOP'                     => 'Predis\Command\StringBitOp',
+            'BITCOUNT'                  => 'Predis\Command\StringBitCount',
 
             /* commands operating on hashes */
-            'hincrbyfloat'              => 'Predis\Command\HashIncrementByFloat',
+            'HINCRBYFLOAT'              => 'Predis\Command\HashIncrementByFloat',
 
             /* scripting */
-            'eval'                      => 'Predis\Command\ServerEval',
-            'evalsha'                   => 'Predis\Command\ServerEvalSHA',
-            'script'                    => 'Predis\Command\ServerScript',
+            'EVAL'                      => 'Predis\Command\ServerEval',
+            'EVALSHA'                   => 'Predis\Command\ServerEvalSHA',
+            'SCRIPT'                    => 'Predis\Command\ServerScript',
 
             /* remote server control commands */
-            'info'                      => 'Predis\Command\ServerInfoV26x',
-            'time'                      => 'Predis\Command\ServerTime',
-            'sentinel'                  => 'Predis\Command\ServerSentinel',
+            'INFO'                      => 'Predis\Command\ServerInfoV26x',
+            'TIME'                      => 'Predis\Command\ServerTime',
+            'SENTINEL'                  => 'Predis\Command\ServerSentinel',
         );
     }
 }

+ 142 - 142
lib/Predis/Profile/RedisVersion280.php

@@ -35,223 +35,223 @@ class RedisVersion280 extends RedisProfile
             /* ---------------- Redis 1.2 ---------------- */
 
             /* commands operating on the key space */
-            'exists'                    => 'Predis\Command\KeyExists',
-            'del'                       => 'Predis\Command\KeyDelete',
-            'type'                      => 'Predis\Command\KeyType',
-            'keys'                      => 'Predis\Command\KeyKeys',
-            'randomkey'                 => 'Predis\Command\KeyRandom',
-            'rename'                    => 'Predis\Command\KeyRename',
-            'renamenx'                  => 'Predis\Command\KeyRenamePreserve',
-            'expire'                    => 'Predis\Command\KeyExpire',
-            'expireat'                  => 'Predis\Command\KeyExpireAt',
-            'ttl'                       => 'Predis\Command\KeyTimeToLive',
-            'move'                      => 'Predis\Command\KeyMove',
-            'sort'                      => 'Predis\Command\KeySort',
-            'dump'                      => 'Predis\Command\KeyDump',
-            'restore'                   => 'Predis\Command\KeyRestore',
+            'EXISTS'                    => 'Predis\Command\KeyExists',
+            'DEL'                       => 'Predis\Command\KeyDelete',
+            'TYPE'                      => 'Predis\Command\KeyType',
+            'KEYS'                      => 'Predis\Command\KeyKeys',
+            'RANDOMKEY'                 => 'Predis\Command\KeyRandom',
+            'RENAME'                    => 'Predis\Command\KeyRename',
+            'RENAMENX'                  => 'Predis\Command\KeyRenamePreserve',
+            'EXPIRE'                    => 'Predis\Command\KeyExpire',
+            'EXPIREAT'                  => 'Predis\Command\KeyExpireAt',
+            'TTL'                       => 'Predis\Command\KeyTimeToLive',
+            'MOVE'                      => 'Predis\Command\KeyMove',
+            'SORT'                      => 'Predis\Command\KeySort',
+            'DUMP'                      => 'Predis\Command\KeyDump',
+            'RESTORE'                   => 'Predis\Command\KeyRestore',
 
             /* commands operating on string values */
-            'set'                       => 'Predis\Command\StringSet',
-            'setnx'                     => 'Predis\Command\StringSetPreserve',
-            'mset'                      => 'Predis\Command\StringSetMultiple',
-            'msetnx'                    => 'Predis\Command\StringSetMultiplePreserve',
-            'get'                       => 'Predis\Command\StringGet',
-            'mget'                      => 'Predis\Command\StringGetMultiple',
-            'getset'                    => 'Predis\Command\StringGetSet',
-            'incr'                      => 'Predis\Command\StringIncrement',
-            'incrby'                    => 'Predis\Command\StringIncrementBy',
-            'decr'                      => 'Predis\Command\StringDecrement',
-            'decrby'                    => 'Predis\Command\StringDecrementBy',
+            'SET'                       => 'Predis\Command\StringSet',
+            'SETNX'                     => 'Predis\Command\StringSetPreserve',
+            'MSET'                      => 'Predis\Command\StringSetMultiple',
+            'MSETNX'                    => 'Predis\Command\StringSetMultiplePreserve',
+            'GET'                       => 'Predis\Command\StringGet',
+            'MGET'                      => 'Predis\Command\StringGetMultiple',
+            'GETSET'                    => 'Predis\Command\StringGetSet',
+            'INCR'                      => 'Predis\Command\StringIncrement',
+            'INCRBY'                    => 'Predis\Command\StringIncrementBy',
+            'DECR'                      => 'Predis\Command\StringDecrement',
+            'DECRBY'                    => 'Predis\Command\StringDecrementBy',
 
             /* commands operating on lists */
-            'rpush'                     => 'Predis\Command\ListPushTail',
-            'lpush'                     => 'Predis\Command\ListPushHead',
-            'llen'                      => 'Predis\Command\ListLength',
-            'lrange'                    => 'Predis\Command\ListRange',
-            'ltrim'                     => 'Predis\Command\ListTrim',
-            'lindex'                    => 'Predis\Command\ListIndex',
-            'lset'                      => 'Predis\Command\ListSet',
-            'lrem'                      => 'Predis\Command\ListRemove',
-            'lpop'                      => 'Predis\Command\ListPopFirst',
-            'rpop'                      => 'Predis\Command\ListPopLast',
-            'rpoplpush'                 => 'Predis\Command\ListPopLastPushHead',
+            'RPUSH'                     => 'Predis\Command\ListPushTail',
+            'LPUSH'                     => 'Predis\Command\ListPushHead',
+            'LLEN'                      => 'Predis\Command\ListLength',
+            'LRANGE'                    => 'Predis\Command\ListRange',
+            'LTRIM'                     => 'Predis\Command\ListTrim',
+            'LINDEX'                    => 'Predis\Command\ListIndex',
+            'LSET'                      => 'Predis\Command\ListSet',
+            'LREM'                      => 'Predis\Command\ListRemove',
+            'LPOP'                      => 'Predis\Command\ListPopFirst',
+            'RPOP'                      => 'Predis\Command\ListPopLast',
+            'RPOPLPUSH'                 => 'Predis\Command\ListPopLastPushHead',
 
             /* commands operating on sets */
-            'sadd'                      => 'Predis\Command\SetAdd',
-            'srem'                      => 'Predis\Command\SetRemove',
-            'spop'                      => 'Predis\Command\SetPop',
-            'smove'                     => 'Predis\Command\SetMove',
-            'scard'                     => 'Predis\Command\SetCardinality',
-            'sismember'                 => 'Predis\Command\SetIsMember',
-            'sinter'                    => 'Predis\Command\SetIntersection',
-            'sinterstore'               => 'Predis\Command\SetIntersectionStore',
-            'sunion'                    => 'Predis\Command\SetUnion',
-            'sunionstore'               => 'Predis\Command\SetUnionStore',
-            'sdiff'                     => 'Predis\Command\SetDifference',
-            'sdiffstore'                => 'Predis\Command\SetDifferenceStore',
-            'smembers'                  => 'Predis\Command\SetMembers',
-            'srandmember'               => 'Predis\Command\SetRandomMember',
+            'SADD'                      => 'Predis\Command\SetAdd',
+            'SREM'                      => 'Predis\Command\SetRemove',
+            'SPOP'                      => 'Predis\Command\SetPop',
+            'SMOVE'                     => 'Predis\Command\SetMove',
+            'SCARD'                     => 'Predis\Command\SetCardinality',
+            'SISMEMBER'                 => 'Predis\Command\SetIsMember',
+            'SINTER'                    => 'Predis\Command\SetIntersection',
+            'SINTERSTORE'               => 'Predis\Command\SetIntersectionStore',
+            'SUNION'                    => 'Predis\Command\SetUnion',
+            'SUNIONSTORE'               => 'Predis\Command\SetUnionStore',
+            'SDIFF'                     => 'Predis\Command\SetDifference',
+            'SDIFFSTORE'                => 'Predis\Command\SetDifferenceStore',
+            'SMEMBERS'                  => 'Predis\Command\SetMembers',
+            'SRANDMEMBER'               => 'Predis\Command\SetRandomMember',
 
             /* commands operating on sorted sets */
-            'zadd'                      => 'Predis\Command\ZSetAdd',
-            'zincrby'                   => 'Predis\Command\ZSetIncrementBy',
-            'zrem'                      => 'Predis\Command\ZSetRemove',
-            'zrange'                    => 'Predis\Command\ZSetRange',
-            'zrevrange'                 => 'Predis\Command\ZSetReverseRange',
-            'zrangebyscore'             => 'Predis\Command\ZSetRangeByScore',
-            'zcard'                     => 'Predis\Command\ZSetCardinality',
-            'zscore'                    => 'Predis\Command\ZSetScore',
-            'zremrangebyscore'          => 'Predis\Command\ZSetRemoveRangeByScore',
+            'ZADD'                      => 'Predis\Command\ZSetAdd',
+            'ZINCRBY'                   => 'Predis\Command\ZSetIncrementBy',
+            'ZREM'                      => 'Predis\Command\ZSetRemove',
+            'ZRANGE'                    => 'Predis\Command\ZSetRange',
+            'ZREVRANGE'                 => 'Predis\Command\ZSetReverseRange',
+            'ZRANGEBYSCORE'             => 'Predis\Command\ZSetRangeByScore',
+            'ZCARD'                     => 'Predis\Command\ZSetCardinality',
+            'ZSCORE'                    => 'Predis\Command\ZSetScore',
+            'ZREMRANGEBYSCORE'          => 'Predis\Command\ZSetRemoveRangeByScore',
 
             /* connection related commands */
-            'ping'                      => 'Predis\Command\ConnectionPing',
-            'auth'                      => 'Predis\Command\ConnectionAuth',
-            'select'                    => 'Predis\Command\ConnectionSelect',
-            'echo'                      => 'Predis\Command\ConnectionEcho',
-            'quit'                      => 'Predis\Command\ConnectionQuit',
+            'PING'                      => 'Predis\Command\ConnectionPing',
+            'AUTH'                      => 'Predis\Command\ConnectionAuth',
+            'SELECT'                    => 'Predis\Command\ConnectionSelect',
+            'ECHO'                      => 'Predis\Command\ConnectionEcho',
+            'QUIT'                      => 'Predis\Command\ConnectionQuit',
 
             /* remote server control commands */
-            'info'                      => 'Predis\Command\ServerInfo',
-            'slaveof'                   => 'Predis\Command\ServerSlaveOf',
-            'monitor'                   => 'Predis\Command\ServerMonitor',
-            'dbsize'                    => 'Predis\Command\ServerDatabaseSize',
-            'flushdb'                   => 'Predis\Command\ServerFlushDatabase',
-            'flushall'                  => 'Predis\Command\ServerFlushAll',
-            'save'                      => 'Predis\Command\ServerSave',
-            'bgsave'                    => 'Predis\Command\ServerBackgroundSave',
-            'lastsave'                  => 'Predis\Command\ServerLastSave',
-            'shutdown'                  => 'Predis\Command\ServerShutdown',
-            'bgrewriteaof'              => 'Predis\Command\ServerBackgroundRewriteAOF',
+            'INFO'                      => 'Predis\Command\ServerInfo',
+            'SLAVEOF'                   => 'Predis\Command\ServerSlaveOf',
+            'MONITOR'                   => 'Predis\Command\ServerMonitor',
+            'DBSIZE'                    => 'Predis\Command\ServerDatabaseSize',
+            'FLUSHDB'                   => 'Predis\Command\ServerFlushDatabase',
+            'FLUSHALL'                  => 'Predis\Command\ServerFlushAll',
+            'SAVE'                      => 'Predis\Command\ServerSave',
+            'BGSAVE'                    => 'Predis\Command\ServerBackgroundSave',
+            'LASTSAVE'                  => 'Predis\Command\ServerLastSave',
+            'SHUTDOWN'                  => 'Predis\Command\ServerShutdown',
+            'BGREWRITEAOF'              => 'Predis\Command\ServerBackgroundRewriteAOF',
 
 
             /* ---------------- Redis 2.0 ---------------- */
 
             /* commands operating on string values */
-            'setex'                     => 'Predis\Command\StringSetExpire',
-            'append'                    => 'Predis\Command\StringAppend',
-            'substr'                    => 'Predis\Command\StringSubstr',
+            'SETEX'                     => 'Predis\Command\StringSetExpire',
+            'APPEND'                    => 'Predis\Command\StringAppend',
+            'SUBSTR'                    => 'Predis\Command\StringSubstr',
 
             /* commands operating on lists */
-            'blpop'                     => 'Predis\Command\ListPopFirstBlocking',
-            'brpop'                     => 'Predis\Command\ListPopLastBlocking',
+            'BLPOP'                     => 'Predis\Command\ListPopFirstBlocking',
+            'BRPOP'                     => 'Predis\Command\ListPopLastBlocking',
 
             /* commands operating on sorted sets */
-            'zunionstore'               => 'Predis\Command\ZSetUnionStore',
-            'zinterstore'               => 'Predis\Command\ZSetIntersectionStore',
-            'zcount'                    => 'Predis\Command\ZSetCount',
-            'zrank'                     => 'Predis\Command\ZSetRank',
-            'zrevrank'                  => 'Predis\Command\ZSetReverseRank',
-            'zremrangebyrank'           => 'Predis\Command\ZSetRemoveRangeByRank',
+            'ZUNIONSTORE'               => 'Predis\Command\ZSetUnionStore',
+            'ZINTERSTORE'               => 'Predis\Command\ZSetIntersectionStore',
+            'ZCOUNT'                    => 'Predis\Command\ZSetCount',
+            'ZRANK'                     => 'Predis\Command\ZSetRank',
+            'ZREVRANK'                  => 'Predis\Command\ZSetReverseRank',
+            'ZREMRANGEBYRANK'           => 'Predis\Command\ZSetRemoveRangeByRank',
 
             /* commands operating on hashes */
-            'hset'                      => 'Predis\Command\HashSet',
-            'hsetnx'                    => 'Predis\Command\HashSetPreserve',
-            'hmset'                     => 'Predis\Command\HashSetMultiple',
-            'hincrby'                   => 'Predis\Command\HashIncrementBy',
-            'hget'                      => 'Predis\Command\HashGet',
-            'hmget'                     => 'Predis\Command\HashGetMultiple',
-            'hdel'                      => 'Predis\Command\HashDelete',
-            'hexists'                   => 'Predis\Command\HashExists',
-            'hlen'                      => 'Predis\Command\HashLength',
-            'hkeys'                     => 'Predis\Command\HashKeys',
-            'hvals'                     => 'Predis\Command\HashValues',
-            'hgetall'                   => 'Predis\Command\HashGetAll',
+            'HSET'                      => 'Predis\Command\HashSet',
+            'HSETNX'                    => 'Predis\Command\HashSetPreserve',
+            'HMSET'                     => 'Predis\Command\HashSetMultiple',
+            'HINCRBY'                   => 'Predis\Command\HashIncrementBy',
+            'HGET'                      => 'Predis\Command\HashGet',
+            'HMGET'                     => 'Predis\Command\HashGetMultiple',
+            'HDEL'                      => 'Predis\Command\HashDelete',
+            'HEXISTS'                   => 'Predis\Command\HashExists',
+            'HLEN'                      => 'Predis\Command\HashLength',
+            'HKEYS'                     => 'Predis\Command\HashKeys',
+            'HVALS'                     => 'Predis\Command\HashValues',
+            'HGETALL'                   => 'Predis\Command\HashGetAll',
 
             /* transactions */
-            'multi'                     => 'Predis\Command\TransactionMulti',
-            'exec'                      => 'Predis\Command\TransactionExec',
-            'discard'                   => 'Predis\Command\TransactionDiscard',
+            'MULTI'                     => 'Predis\Command\TransactionMulti',
+            'EXEC'                      => 'Predis\Command\TransactionExec',
+            'DISCARD'                   => 'Predis\Command\TransactionDiscard',
 
             /* publish - subscribe */
-            'subscribe'                 => 'Predis\Command\PubSubSubscribe',
-            'unsubscribe'               => 'Predis\Command\PubSubUnsubscribe',
-            'psubscribe'                => 'Predis\Command\PubSubSubscribeByPattern',
-            'punsubscribe'              => 'Predis\Command\PubSubUnsubscribeByPattern',
-            'publish'                   => 'Predis\Command\PubSubPublish',
+            'SUBSCRIBE'                 => 'Predis\Command\PubSubSubscribe',
+            'UNSUBSCRIBE'               => 'Predis\Command\PubSubUnsubscribe',
+            'PSUBSCRIBE'                => 'Predis\Command\PubSubSubscribeByPattern',
+            'PUNSUBSCRIBE'              => 'Predis\Command\PubSubUnsubscribeByPattern',
+            'PUBLISH'                   => 'Predis\Command\PubSubPublish',
 
             /* remote server control commands */
-            'config'                    => 'Predis\Command\ServerConfig',
+            'CONFIG'                    => 'Predis\Command\ServerConfig',
 
 
             /* ---------------- Redis 2.2 ---------------- */
 
             /* commands operating on the key space */
-            'persist'                   => 'Predis\Command\KeyPersist',
+            'PERSIST'                   => 'Predis\Command\KeyPersist',
 
             /* commands operating on string values */
-            'strlen'                    => 'Predis\Command\StringStrlen',
-            'setrange'                  => 'Predis\Command\StringSetRange',
-            'getrange'                  => 'Predis\Command\StringGetRange',
-            'setbit'                    => 'Predis\Command\StringSetBit',
-            'getbit'                    => 'Predis\Command\StringGetBit',
+            'STRLEN'                    => 'Predis\Command\StringStrlen',
+            'SETRANGE'                  => 'Predis\Command\StringSetRange',
+            'GETRANGE'                  => 'Predis\Command\StringGetRange',
+            'SETBIT'                    => 'Predis\Command\StringSetBit',
+            'GETBIT'                    => 'Predis\Command\StringGetBit',
 
             /* commands operating on lists */
-            'rpushx'                    => 'Predis\Command\ListPushTailX',
-            'lpushx'                    => 'Predis\Command\ListPushHeadX',
-            'linsert'                   => 'Predis\Command\ListInsert',
-            'brpoplpush'                => 'Predis\Command\ListPopLastPushHeadBlocking',
+            'RPUSHX'                    => 'Predis\Command\ListPushTailX',
+            'LPUSHX'                    => 'Predis\Command\ListPushHeadX',
+            'LINSERT'                   => 'Predis\Command\ListInsert',
+            'BRPOPLPUSH'                => 'Predis\Command\ListPopLastPushHeadBlocking',
 
             /* commands operating on sorted sets */
-            'zrevrangebyscore'          => 'Predis\Command\ZSetReverseRangeByScore',
+            'ZREVRANGEBYSCORE'          => 'Predis\Command\ZSetReverseRangeByScore',
 
             /* transactions */
-            'watch'                     => 'Predis\Command\TransactionWatch',
-            'unwatch'                   => 'Predis\Command\TransactionUnwatch',
+            'WATCH'                     => 'Predis\Command\TransactionWatch',
+            'UNWATCH'                   => 'Predis\Command\TransactionUnwatch',
 
             /* remote server control commands */
-            'object'                    => 'Predis\Command\ServerObject',
-            'slowlog'                   => 'Predis\Command\ServerSlowlog',
+            'OBJECT'                    => 'Predis\Command\ServerObject',
+            'SLOWLOG'                   => 'Predis\Command\ServerSlowlog',
 
 
             /* ---------------- Redis 2.4 ---------------- */
 
             /* remote server control commands */
-            'client'                    => 'Predis\Command\ServerClient',
+            'CLIENT'                    => 'Predis\Command\ServerClient',
 
 
             /* ---------------- Redis 2.6 ---------------- */
 
             /* commands operating on the key space */
-            'pttl'                      => 'Predis\Command\KeyPreciseTimeToLive',
-            'pexpire'                   => 'Predis\Command\KeyPreciseExpire',
-            'pexpireat'                 => 'Predis\Command\KeyPreciseExpireAt',
+            'PTTL'                      => 'Predis\Command\KeyPreciseTimeToLive',
+            'PEXPIRE'                   => 'Predis\Command\KeyPreciseExpire',
+            'PEXPIREAT'                 => 'Predis\Command\KeyPreciseExpireAt',
 
             /* commands operating on string values */
-            'psetex'                    => 'Predis\Command\StringPreciseSetExpire',
-            'incrbyfloat'               => 'Predis\Command\StringIncrementByFloat',
-            'bitop'                     => 'Predis\Command\StringBitOp',
-            'bitcount'                  => 'Predis\Command\StringBitCount',
+            'PSETEX'                    => 'Predis\Command\StringPreciseSetExpire',
+            'INCRBYFLOAT'               => 'Predis\Command\StringIncrementByFloat',
+            'BITOP'                     => 'Predis\Command\StringBitOp',
+            'BITCOUNT'                  => 'Predis\Command\StringBitCount',
 
             /* commands operating on hashes */
-            'hincrbyfloat'              => 'Predis\Command\HashIncrementByFloat',
+            'HINCRBYFLOAT'              => 'Predis\Command\HashIncrementByFloat',
 
             /* scripting */
-            'eval'                      => 'Predis\Command\ServerEval',
-            'evalsha'                   => 'Predis\Command\ServerEvalSHA',
-            'script'                    => 'Predis\Command\ServerScript',
+            'EVAL'                      => 'Predis\Command\ServerEval',
+            'EVALSHA'                   => 'Predis\Command\ServerEvalSHA',
+            'SCRIPT'                    => 'Predis\Command\ServerScript',
 
             /* remote server control commands */
-            'info'                      => 'Predis\Command\ServerInfoV26x',
-            'time'                      => 'Predis\Command\ServerTime',
-            'sentinel'                  => 'Predis\Command\ServerSentinel',
+            'INFO'                      => 'Predis\Command\ServerInfoV26x',
+            'TIME'                      => 'Predis\Command\ServerTime',
+            'SENTINEL'                  => 'Predis\Command\ServerSentinel',
 
 
             /* ---------------- Redis 2.8 ---------------- */
 
             /* commands operating on the key space */
-            'scan'                      => 'Predis\Command\KeyScan',
+            'SCAN'                      => 'Predis\Command\KeyScan',
 
             /* commands operating on sets */
-            'sscan'                     => 'Predis\Command\SetScan',
+            'SSCAN'                     => 'Predis\Command\SetScan',
 
             /* commands operating on sorted sets */
-            'zscan'                     => 'Predis\Command\ZSetScan',
+            'ZSCAN'                     => 'Predis\Command\ZSetScan',
 
             /* commands operating on hashes */
-            'hscan'                     => 'Predis\Command\HashScan',
+            'HSCAN'                     => 'Predis\Command\HashScan',
 
             /* publish - subscribe */
-            'pubsub'                    => 'Predis\Command\PubSubPubsub',
+            'PUBSUB'                    => 'Predis\Command\PubSubPubsub',
         );
     }
 }

+ 1 - 1
tests/PHPUnit/RedisProfileTestCase.php

@@ -188,7 +188,7 @@ abstract class RedisProfileTestCase extends PredisTestCase
     /**
      * @group disconnected
      * @expectedException Predis\ClientException
-     * @expectedExceptionMessage 'unknown' is not a registered Redis command
+     * @expectedExceptionMessage 'UNKNOWN' is not a registered Redis command
      */
     public function testCreateUndefinedCommand()
     {

+ 1 - 1
tests/Predis/ClientTest.php

@@ -500,7 +500,7 @@ class ClientTest extends PredisTestCase
     /**
      * @group disconnected
      * @expectedException Predis\ClientException
-     * @expectedExceptionMessage 'invalidcommand' is not a registered Redis command
+     * @expectedExceptionMessage 'INVALIDCOMMAND' is not a registered Redis command
      */
     public function testThrowsExceptionOnNonRegisteredRedisCommand()
     {

+ 141 - 141
tests/Predis/Profile/RedisUnstableTest.php

@@ -38,147 +38,147 @@ class RedisUnstableTest extends RedisProfileTestCase
     public function getExpectedCommands()
     {
         return array(
-            0 => 'exists',
-            1 => 'del',
-            2 => 'type',
-            3 => 'keys',
-            4 => 'randomkey',
-            5 => 'rename',
-            6 => 'renamenx',
-            7 => 'expire',
-            8 => 'expireat',
-            9 => 'ttl',
-            10 => 'move',
-            11 => 'sort',
-            12 => 'dump',
-            13 => 'restore',
-            14 => 'set',
-            15 => 'setnx',
-            16 => 'mset',
-            17 => 'msetnx',
-            18 => 'get',
-            19 => 'mget',
-            20 => 'getset',
-            21 => 'incr',
-            22 => 'incrby',
-            23 => 'decr',
-            24 => 'decrby',
-            25 => 'rpush',
-            26 => 'lpush',
-            27 => 'llen',
-            28 => 'lrange',
-            29 => 'ltrim',
-            30 => 'lindex',
-            31 => 'lset',
-            32 => 'lrem',
-            33 => 'lpop',
-            34 => 'rpop',
-            35 => 'rpoplpush',
-            36 => 'sadd',
-            37 => 'srem',
-            38 => 'spop',
-            39 => 'smove',
-            40 => 'scard',
-            41 => 'sismember',
-            42 => 'sinter',
-            43 => 'sinterstore',
-            44 => 'sunion',
-            45 => 'sunionstore',
-            46 => 'sdiff',
-            47 => 'sdiffstore',
-            48 => 'smembers',
-            49 => 'srandmember',
-            50 => 'zadd',
-            51 => 'zincrby',
-            52 => 'zrem',
-            53 => 'zrange',
-            54 => 'zrevrange',
-            55 => 'zrangebyscore',
-            56 => 'zcard',
-            57 => 'zscore',
-            58 => 'zremrangebyscore',
-            59 => 'ping',
-            60 => 'auth',
-            61 => 'select',
-            62 => 'echo',
-            63 => 'quit',
-            64 => 'info',
-            65 => 'slaveof',
-            66 => 'monitor',
-            67 => 'dbsize',
-            68 => 'flushdb',
-            69 => 'flushall',
-            70 => 'save',
-            71 => 'bgsave',
-            72 => 'lastsave',
-            73 => 'shutdown',
-            74 => 'bgrewriteaof',
-            75 => 'setex',
-            76 => 'append',
-            77 => 'substr',
-            78 => 'blpop',
-            79 => 'brpop',
-            80 => 'zunionstore',
-            81 => 'zinterstore',
-            82 => 'zcount',
-            83 => 'zrank',
-            84 => 'zrevrank',
-            85 => 'zremrangebyrank',
-            86 => 'hset',
-            87 => 'hsetnx',
-            88 => 'hmset',
-            89 => 'hincrby',
-            90 => 'hget',
-            91 => 'hmget',
-            92 => 'hdel',
-            93 => 'hexists',
-            94 => 'hlen',
-            95 => 'hkeys',
-            96 => 'hvals',
-            97 => 'hgetall',
-            98 => 'multi',
-            99 => 'exec',
-            100 => 'discard',
-            101 => 'subscribe',
-            102 => 'unsubscribe',
-            103 => 'psubscribe',
-            104 => 'punsubscribe',
-            105 => 'publish',
-            106 => 'config',
-            107 => 'persist',
-            108 => 'strlen',
-            109 => 'setrange',
-            110 => 'getrange',
-            111 => 'setbit',
-            112 => 'getbit',
-            113 => 'rpushx',
-            114 => 'lpushx',
-            115 => 'linsert',
-            116 => 'brpoplpush',
-            117 => 'zrevrangebyscore',
-            118 => 'watch',
-            119 => 'unwatch',
-            120 => 'object',
-            121 => 'slowlog',
-            122 => 'client',
-            123 => 'pttl',
-            124 => 'pexpire',
-            125 => 'pexpireat',
-            126 => 'psetex',
-            127 => 'incrbyfloat',
-            128 => 'bitop',
-            129 => 'bitcount',
-            130 => 'hincrbyfloat',
-            131 => 'eval',
-            132 => 'evalsha',
-            133 => 'script',
-            134 => 'time',
-            135 => 'sentinel',
-            136 => 'scan',
-            137 => 'sscan',
-            138 => 'zscan',
-            139 => 'hscan',
-            140 => 'pubsub',
+            0   => 'EXISTS',
+            1   => 'DEL',
+            2   => 'TYPE',
+            3   => 'KEYS',
+            4   => 'RANDOMKEY',
+            5   => 'RENAME',
+            6   => 'RENAMENX',
+            7   => 'EXPIRE',
+            8   => 'EXPIREAT',
+            9   => 'TTL',
+            10  => 'MOVE',
+            11  => 'SORT',
+            12  => 'DUMP',
+            13  => 'RESTORE',
+            14  => 'SET',
+            15  => 'SETNX',
+            16  => 'MSET',
+            17  => 'MSETNX',
+            18  => 'GET',
+            19  => 'MGET',
+            20  => 'GETSET',
+            21  => 'INCR',
+            22  => 'INCRBY',
+            23  => 'DECR',
+            24  => 'DECRBY',
+            25  => 'RPUSH',
+            26  => 'LPUSH',
+            27  => 'LLEN',
+            28  => 'LRANGE',
+            29  => 'LTRIM',
+            30  => 'LINDEX',
+            31  => 'LSET',
+            32  => 'LREM',
+            33  => 'LPOP',
+            34  => 'RPOP',
+            35  => 'RPOPLPUSH',
+            36  => 'SADD',
+            37  => 'SREM',
+            38  => 'SPOP',
+            39  => 'SMOVE',
+            40  => 'SCARD',
+            41  => 'SISMEMBER',
+            42  => 'SINTER',
+            43  => 'SINTERSTORE',
+            44  => 'SUNION',
+            45  => 'SUNIONSTORE',
+            46  => 'SDIFF',
+            47  => 'SDIFFSTORE',
+            48  => 'SMEMBERS',
+            49  => 'SRANDMEMBER',
+            50  => 'ZADD',
+            51  => 'ZINCRBY',
+            52  => 'ZREM',
+            53  => 'ZRANGE',
+            54  => 'ZREVRANGE',
+            55  => 'ZRANGEBYSCORE',
+            56  => 'ZCARD',
+            57  => 'ZSCORE',
+            58  => 'ZREMRANGEBYSCORE',
+            59  => 'PING',
+            60  => 'AUTH',
+            61  => 'SELECT',
+            62  => 'ECHO',
+            63  => 'QUIT',
+            64  => 'INFO',
+            65  => 'SLAVEOF',
+            66  => 'MONITOR',
+            67  => 'DBSIZE',
+            68  => 'FLUSHDB',
+            69  => 'FLUSHALL',
+            70  => 'SAVE',
+            71  => 'BGSAVE',
+            72  => 'LASTSAVE',
+            73  => 'SHUTDOWN',
+            74  => 'BGREWRITEAOF',
+            75  => 'SETEX',
+            76  => 'APPEND',
+            77  => 'SUBSTR',
+            78  => 'BLPOP',
+            79  => 'BRPOP',
+            80  => 'ZUNIONSTORE',
+            81  => 'ZINTERSTORE',
+            82  => 'ZCOUNT',
+            83  => 'ZRANK',
+            84  => 'ZREVRANK',
+            85  => 'ZREMRANGEBYRANK',
+            86  => 'HSET',
+            87  => 'HSETNX',
+            88  => 'HMSET',
+            89  => 'HINCRBY',
+            90  => 'HGET',
+            91  => 'HMGET',
+            92  => 'HDEL',
+            93  => 'HEXISTS',
+            94  => 'HLEN',
+            95  => 'HKEYS',
+            96  => 'HVALS',
+            97  => 'HGETALL',
+            98  => 'MULTI',
+            99  => 'EXEC',
+            100 => 'DISCARD',
+            101 => 'SUBSCRIBE',
+            102 => 'UNSUBSCRIBE',
+            103 => 'PSUBSCRIBE',
+            104 => 'PUNSUBSCRIBE',
+            105 => 'PUBLISH',
+            106 => 'CONFIG',
+            107 => 'PERSIST',
+            108 => 'STRLEN',
+            109 => 'SETRANGE',
+            110 => 'GETRANGE',
+            111 => 'SETBIT',
+            112 => 'GETBIT',
+            113 => 'RPUSHX',
+            114 => 'LPUSHX',
+            115 => 'LINSERT',
+            116 => 'BRPOPLPUSH',
+            117 => 'ZREVRANGEBYSCORE',
+            118 => 'WATCH',
+            119 => 'UNWATCH',
+            120 => 'OBJECT',
+            121 => 'SLOWLOG',
+            122 => 'CLIENT',
+            123 => 'PTTL',
+            124 => 'PEXPIRE',
+            125 => 'PEXPIREAT',
+            126 => 'PSETEX',
+            127 => 'INCRBYFLOAT',
+            128 => 'BITOP',
+            129 => 'BITCOUNT',
+            130 => 'HINCRBYFLOAT',
+            131 => 'EVAL',
+            132 => 'EVALSHA',
+            133 => 'SCRIPT',
+            134 => 'TIME',
+            135 => 'SENTINEL',
+            136 => 'SCAN',
+            137 => 'SSCAN',
+            138 => 'ZSCAN',
+            139 => 'HSCAN',
+            140 => 'PUBSUB',
         );
     }
 }

+ 73 - 73
tests/Predis/Profile/RedisVersion120Test.php

@@ -38,79 +38,79 @@ class RedisVersion120Test extends RedisProfileTestCase
     public function getExpectedCommands()
     {
         return array(
-            0 => 'exists',
-            1 => 'del',
-            2 => 'type',
-            3 => 'keys',
-            4 => 'randomkey',
-            5 => 'rename',
-            6 => 'renamenx',
-            7 => 'expire',
-            8 => 'expireat',
-            9 => 'ttl',
-            10 => 'move',
-            11 => 'sort',
-            12 => 'set',
-            13 => 'setnx',
-            14 => 'mset',
-            15 => 'msetnx',
-            16 => 'get',
-            17 => 'mget',
-            18 => 'getset',
-            19 => 'incr',
-            20 => 'incrby',
-            21 => 'decr',
-            22 => 'decrby',
-            23 => 'rpush',
-            24 => 'lpush',
-            25 => 'llen',
-            26 => 'lrange',
-            27 => 'ltrim',
-            28 => 'lindex',
-            29 => 'lset',
-            30 => 'lrem',
-            31 => 'lpop',
-            32 => 'rpop',
-            33 => 'rpoplpush',
-            34 => 'sadd',
-            35 => 'srem',
-            36 => 'spop',
-            37 => 'smove',
-            38 => 'scard',
-            39 => 'sismember',
-            40 => 'sinter',
-            41 => 'sinterstore',
-            42 => 'sunion',
-            43 => 'sunionstore',
-            44 => 'sdiff',
-            45 => 'sdiffstore',
-            46 => 'smembers',
-            47 => 'srandmember',
-            48 => 'zadd',
-            49 => 'zincrby',
-            50 => 'zrem',
-            51 => 'zrange',
-            52 => 'zrevrange',
-            53 => 'zrangebyscore',
-            54 => 'zcard',
-            55 => 'zscore',
-            56 => 'zremrangebyscore',
-            57 => 'ping',
-            58 => 'auth',
-            59 => 'select',
-            60 => 'echo',
-            61 => 'quit',
-            62 => 'info',
-            63 => 'slaveof',
-            64 => 'monitor',
-            65 => 'dbsize',
-            66 => 'flushdb',
-            67 => 'flushall',
-            68 => 'save',
-            69 => 'bgsave',
-            70 => 'lastsave',
-            71 => 'shutdown',
-            72 => 'bgrewriteaof',
+            0   => 'EXISTS',
+            1   => 'DEL',
+            2   => 'TYPE',
+            3   => 'KEYS',
+            4   => 'RANDOMKEY',
+            5   => 'RENAME',
+            6   => 'RENAMENX',
+            7   => 'EXPIRE',
+            8   => 'EXPIREAT',
+            9   => 'TTL',
+            10  => 'MOVE',
+            11  => 'SORT',
+            12  => 'SET',
+            13  => 'SETNX',
+            14  => 'MSET',
+            15  => 'MSETNX',
+            16  => 'GET',
+            17  => 'MGET',
+            18  => 'GETSET',
+            19  => 'INCR',
+            20  => 'INCRBY',
+            21  => 'DECR',
+            22  => 'DECRBY',
+            23  => 'RPUSH',
+            24  => 'LPUSH',
+            25  => 'LLEN',
+            26  => 'LRANGE',
+            27  => 'LTRIM',
+            28  => 'LINDEX',
+            29  => 'LSET',
+            30  => 'LREM',
+            31  => 'LPOP',
+            32  => 'RPOP',
+            33  => 'RPOPLPUSH',
+            34  => 'SADD',
+            35  => 'SREM',
+            36  => 'SPOP',
+            37  => 'SMOVE',
+            38  => 'SCARD',
+            39  => 'SISMEMBER',
+            40  => 'SINTER',
+            41  => 'SINTERSTORE',
+            42  => 'SUNION',
+            43  => 'SUNIONSTORE',
+            44  => 'SDIFF',
+            45  => 'SDIFFSTORE',
+            46  => 'SMEMBERS',
+            47  => 'SRANDMEMBER',
+            48  => 'ZADD',
+            49  => 'ZINCRBY',
+            50  => 'ZREM',
+            51  => 'ZRANGE',
+            52  => 'ZREVRANGE',
+            53  => 'ZRANGEBYSCORE',
+            54  => 'ZCARD',
+            55  => 'ZSCORE',
+            56  => 'ZREMRANGEBYSCORE',
+            57  => 'PING',
+            58  => 'AUTH',
+            59  => 'SELECT',
+            60  => 'ECHO',
+            61  => 'QUIT',
+            62  => 'INFO',
+            63  => 'SLAVEOF',
+            64  => 'MONITOR',
+            65  => 'DBSIZE',
+            66  => 'FLUSHDB',
+            67  => 'FLUSHALL',
+            68  => 'SAVE',
+            69  => 'BGSAVE',
+            70  => 'LASTSAVE',
+            71  => 'SHUTDOWN',
+            72  => 'BGREWRITEAOF',
         );
     }
 }

+ 105 - 105
tests/Predis/Profile/RedisVersion200Test.php

@@ -38,111 +38,111 @@ class RedisVersion200Test extends RedisProfileTestCase
     public function getExpectedCommands()
     {
         return array(
-            0 => 'exists',
-            1 => 'del',
-            2 => 'type',
-            3 => 'keys',
-            4 => 'randomkey',
-            5 => 'rename',
-            6 => 'renamenx',
-            7 => 'expire',
-            8 => 'expireat',
-            9 => 'ttl',
-            10 => 'move',
-            11 => 'sort',
-            12 => 'set',
-            13 => 'setnx',
-            14 => 'mset',
-            15 => 'msetnx',
-            16 => 'get',
-            17 => 'mget',
-            18 => 'getset',
-            19 => 'incr',
-            20 => 'incrby',
-            21 => 'decr',
-            22 => 'decrby',
-            23 => 'rpush',
-            24 => 'lpush',
-            25 => 'llen',
-            26 => 'lrange',
-            27 => 'ltrim',
-            28 => 'lindex',
-            29 => 'lset',
-            30 => 'lrem',
-            31 => 'lpop',
-            32 => 'rpop',
-            33 => 'rpoplpush',
-            34 => 'sadd',
-            35 => 'srem',
-            36 => 'spop',
-            37 => 'smove',
-            38 => 'scard',
-            39 => 'sismember',
-            40 => 'sinter',
-            41 => 'sinterstore',
-            42 => 'sunion',
-            43 => 'sunionstore',
-            44 => 'sdiff',
-            45 => 'sdiffstore',
-            46 => 'smembers',
-            47 => 'srandmember',
-            48 => 'zadd',
-            49 => 'zincrby',
-            50 => 'zrem',
-            51 => 'zrange',
-            52 => 'zrevrange',
-            53 => 'zrangebyscore',
-            54 => 'zcard',
-            55 => 'zscore',
-            56 => 'zremrangebyscore',
-            57 => 'ping',
-            58 => 'auth',
-            59 => 'select',
-            60 => 'echo',
-            61 => 'quit',
-            62 => 'info',
-            63 => 'slaveof',
-            64 => 'monitor',
-            65 => 'dbsize',
-            66 => 'flushdb',
-            67 => 'flushall',
-            68 => 'save',
-            69 => 'bgsave',
-            70 => 'lastsave',
-            71 => 'shutdown',
-            72 => 'bgrewriteaof',
-            73 => 'setex',
-            74 => 'append',
-            75 => 'substr',
-            76 => 'blpop',
-            77 => 'brpop',
-            78 => 'zunionstore',
-            79 => 'zinterstore',
-            80 => 'zcount',
-            81 => 'zrank',
-            82 => 'zrevrank',
-            83 => 'zremrangebyrank',
-            84 => 'hset',
-            85 => 'hsetnx',
-            86 => 'hmset',
-            87 => 'hincrby',
-            88 => 'hget',
-            89 => 'hmget',
-            90 => 'hdel',
-            91 => 'hexists',
-            92 => 'hlen',
-            93 => 'hkeys',
-            94 => 'hvals',
-            95 => 'hgetall',
-            96 => 'multi',
-            97 => 'exec',
-            98 => 'discard',
-            99 => 'subscribe',
-            100 => 'unsubscribe',
-            101 => 'psubscribe',
-            102 => 'punsubscribe',
-            103 => 'publish',
-            104 => 'config',
+            0   => 'EXISTS',
+            1   => 'DEL',
+            2   => 'TYPE',
+            3   => 'KEYS',
+            4   => 'RANDOMKEY',
+            5   => 'RENAME',
+            6   => 'RENAMENX',
+            7   => 'EXPIRE',
+            8   => 'EXPIREAT',
+            9   => 'TTL',
+            10  => 'MOVE',
+            11  => 'SORT',
+            12  => 'SET',
+            13  => 'SETNX',
+            14  => 'MSET',
+            15  => 'MSETNX',
+            16  => 'GET',
+            17  => 'MGET',
+            18  => 'GETSET',
+            19  => 'INCR',
+            20  => 'INCRBY',
+            21  => 'DECR',
+            22  => 'DECRBY',
+            23  => 'RPUSH',
+            24  => 'LPUSH',
+            25  => 'LLEN',
+            26  => 'LRANGE',
+            27  => 'LTRIM',
+            28  => 'LINDEX',
+            29  => 'LSET',
+            30  => 'LREM',
+            31  => 'LPOP',
+            32  => 'RPOP',
+            33  => 'RPOPLPUSH',
+            34  => 'SADD',
+            35  => 'SREM',
+            36  => 'SPOP',
+            37  => 'SMOVE',
+            38  => 'SCARD',
+            39  => 'SISMEMBER',
+            40  => 'SINTER',
+            41  => 'SINTERSTORE',
+            42  => 'SUNION',
+            43  => 'SUNIONSTORE',
+            44  => 'SDIFF',
+            45  => 'SDIFFSTORE',
+            46  => 'SMEMBERS',
+            47  => 'SRANDMEMBER',
+            48  => 'ZADD',
+            49  => 'ZINCRBY',
+            50  => 'ZREM',
+            51  => 'ZRANGE',
+            52  => 'ZREVRANGE',
+            53  => 'ZRANGEBYSCORE',
+            54  => 'ZCARD',
+            55  => 'ZSCORE',
+            56  => 'ZREMRANGEBYSCORE',
+            57  => 'PING',
+            58  => 'AUTH',
+            59  => 'SELECT',
+            60  => 'ECHO',
+            61  => 'QUIT',
+            62  => 'INFO',
+            63  => 'SLAVEOF',
+            64  => 'MONITOR',
+            65  => 'DBSIZE',
+            66  => 'FLUSHDB',
+            67  => 'FLUSHALL',
+            68  => 'SAVE',
+            69  => 'BGSAVE',
+            70  => 'LASTSAVE',
+            71  => 'SHUTDOWN',
+            72  => 'BGREWRITEAOF',
+            73  => 'SETEX',
+            74  => 'APPEND',
+            75  => 'SUBSTR',
+            76  => 'BLPOP',
+            77  => 'BRPOP',
+            78  => 'ZUNIONSTORE',
+            79  => 'ZINTERSTORE',
+            80  => 'ZCOUNT',
+            81  => 'ZRANK',
+            82  => 'ZREVRANK',
+            83  => 'ZREMRANGEBYRANK',
+            84  => 'HSET',
+            85  => 'HSETNX',
+            86  => 'HMSET',
+            87  => 'HINCRBY',
+            88  => 'HGET',
+            89  => 'HMGET',
+            90  => 'HDEL',
+            91  => 'HEXISTS',
+            92  => 'HLEN',
+            93  => 'HKEYS',
+            94  => 'HVALS',
+            95  => 'HGETALL',
+            96  => 'MULTI',
+            97  => 'EXEC',
+            98  => 'DISCARD',
+            99  => 'SUBSCRIBE',
+            100 => 'UNSUBSCRIBE',
+            101 => 'PSUBSCRIBE',
+            102 => 'PUNSUBSCRIBE',
+            103 => 'PUBLISH',
+            104 => 'CONFIG',
         );
     }
 }

+ 120 - 120
tests/Predis/Profile/RedisVersion220Test.php

@@ -38,126 +38,126 @@ class RedisVersion220Test extends RedisProfileTestCase
     public function getExpectedCommands()
     {
         return array(
-            0 => 'exists',
-            1 => 'del',
-            2 => 'type',
-            3 => 'keys',
-            4 => 'randomkey',
-            5 => 'rename',
-            6 => 'renamenx',
-            7 => 'expire',
-            8 => 'expireat',
-            9 => 'ttl',
-            10 => 'move',
-            11 => 'sort',
-            12 => 'set',
-            13 => 'setnx',
-            14 => 'mset',
-            15 => 'msetnx',
-            16 => 'get',
-            17 => 'mget',
-            18 => 'getset',
-            19 => 'incr',
-            20 => 'incrby',
-            21 => 'decr',
-            22 => 'decrby',
-            23 => 'rpush',
-            24 => 'lpush',
-            25 => 'llen',
-            26 => 'lrange',
-            27 => 'ltrim',
-            28 => 'lindex',
-            29 => 'lset',
-            30 => 'lrem',
-            31 => 'lpop',
-            32 => 'rpop',
-            33 => 'rpoplpush',
-            34 => 'sadd',
-            35 => 'srem',
-            36 => 'spop',
-            37 => 'smove',
-            38 => 'scard',
-            39 => 'sismember',
-            40 => 'sinter',
-            41 => 'sinterstore',
-            42 => 'sunion',
-            43 => 'sunionstore',
-            44 => 'sdiff',
-            45 => 'sdiffstore',
-            46 => 'smembers',
-            47 => 'srandmember',
-            48 => 'zadd',
-            49 => 'zincrby',
-            50 => 'zrem',
-            51 => 'zrange',
-            52 => 'zrevrange',
-            53 => 'zrangebyscore',
-            54 => 'zcard',
-            55 => 'zscore',
-            56 => 'zremrangebyscore',
-            57 => 'ping',
-            58 => 'auth',
-            59 => 'select',
-            60 => 'echo',
-            61 => 'quit',
-            62 => 'info',
-            63 => 'slaveof',
-            64 => 'monitor',
-            65 => 'dbsize',
-            66 => 'flushdb',
-            67 => 'flushall',
-            68 => 'save',
-            69 => 'bgsave',
-            70 => 'lastsave',
-            71 => 'shutdown',
-            72 => 'bgrewriteaof',
-            73 => 'setex',
-            74 => 'append',
-            75 => 'substr',
-            76 => 'blpop',
-            77 => 'brpop',
-            78 => 'zunionstore',
-            79 => 'zinterstore',
-            80 => 'zcount',
-            81 => 'zrank',
-            82 => 'zrevrank',
-            83 => 'zremrangebyrank',
-            84 => 'hset',
-            85 => 'hsetnx',
-            86 => 'hmset',
-            87 => 'hincrby',
-            88 => 'hget',
-            89 => 'hmget',
-            90 => 'hdel',
-            91 => 'hexists',
-            92 => 'hlen',
-            93 => 'hkeys',
-            94 => 'hvals',
-            95 => 'hgetall',
-            96 => 'multi',
-            97 => 'exec',
-            98 => 'discard',
-            99 => 'subscribe',
-            100 => 'unsubscribe',
-            101 => 'psubscribe',
-            102 => 'punsubscribe',
-            103 => 'publish',
-            104 => 'config',
-            105 => 'persist',
-            106 => 'strlen',
-            107 => 'setrange',
-            108 => 'getrange',
-            109 => 'setbit',
-            110 => 'getbit',
-            111 => 'rpushx',
-            112 => 'lpushx',
-            113 => 'linsert',
-            114 => 'brpoplpush',
-            115 => 'zrevrangebyscore',
-            116 => 'watch',
-            117 => 'unwatch',
-            118 => 'object',
-            119 => 'slowlog',
+            0   => 'EXISTS',
+            1   => 'DEL',
+            2   => 'TYPE',
+            3   => 'KEYS',
+            4   => 'RANDOMKEY',
+            5   => 'RENAME',
+            6   => 'RENAMENX',
+            7   => 'EXPIRE',
+            8   => 'EXPIREAT',
+            9   => 'TTL',
+            10  => 'MOVE',
+            11  => 'SORT',
+            12  => 'SET',
+            13  => 'SETNX',
+            14  => 'MSET',
+            15  => 'MSETNX',
+            16  => 'GET',
+            17  => 'MGET',
+            18  => 'GETSET',
+            19  => 'INCR',
+            20  => 'INCRBY',
+            21  => 'DECR',
+            22  => 'DECRBY',
+            23  => 'RPUSH',
+            24  => 'LPUSH',
+            25  => 'LLEN',
+            26  => 'LRANGE',
+            27  => 'LTRIM',
+            28  => 'LINDEX',
+            29  => 'LSET',
+            30  => 'LREM',
+            31  => 'LPOP',
+            32  => 'RPOP',
+            33  => 'RPOPLPUSH',
+            34  => 'SADD',
+            35  => 'SREM',
+            36  => 'SPOP',
+            37  => 'SMOVE',
+            38  => 'SCARD',
+            39  => 'SISMEMBER',
+            40  => 'SINTER',
+            41  => 'SINTERSTORE',
+            42  => 'SUNION',
+            43  => 'SUNIONSTORE',
+            44  => 'SDIFF',
+            45  => 'SDIFFSTORE',
+            46  => 'SMEMBERS',
+            47  => 'SRANDMEMBER',
+            48  => 'ZADD',
+            49  => 'ZINCRBY',
+            50  => 'ZREM',
+            51  => 'ZRANGE',
+            52  => 'ZREVRANGE',
+            53  => 'ZRANGEBYSCORE',
+            54  => 'ZCARD',
+            55  => 'ZSCORE',
+            56  => 'ZREMRANGEBYSCORE',
+            57  => 'PING',
+            58  => 'AUTH',
+            59  => 'SELECT',
+            60  => 'ECHO',
+            61  => 'QUIT',
+            62  => 'INFO',
+            63  => 'SLAVEOF',
+            64  => 'MONITOR',
+            65  => 'DBSIZE',
+            66  => 'FLUSHDB',
+            67  => 'FLUSHALL',
+            68  => 'SAVE',
+            69  => 'BGSAVE',
+            70  => 'LASTSAVE',
+            71  => 'SHUTDOWN',
+            72  => 'BGREWRITEAOF',
+            73  => 'SETEX',
+            74  => 'APPEND',
+            75  => 'SUBSTR',
+            76  => 'BLPOP',
+            77  => 'BRPOP',
+            78  => 'ZUNIONSTORE',
+            79  => 'ZINTERSTORE',
+            80  => 'ZCOUNT',
+            81  => 'ZRANK',
+            82  => 'ZREVRANK',
+            83  => 'ZREMRANGEBYRANK',
+            84  => 'HSET',
+            85  => 'HSETNX',
+            86  => 'HMSET',
+            87  => 'HINCRBY',
+            88  => 'HGET',
+            89  => 'HMGET',
+            90  => 'HDEL',
+            91  => 'HEXISTS',
+            92  => 'HLEN',
+            93  => 'HKEYS',
+            94  => 'HVALS',
+            95  => 'HGETALL',
+            96  => 'MULTI',
+            97  => 'EXEC',
+            98  => 'DISCARD',
+            99  => 'SUBSCRIBE',
+            100 => 'UNSUBSCRIBE',
+            101 => 'PSUBSCRIBE',
+            102 => 'PUNSUBSCRIBE',
+            103 => 'PUBLISH',
+            104 => 'CONFIG',
+            105 => 'PERSIST',
+            106 => 'STRLEN',
+            107 => 'SETRANGE',
+            108 => 'GETRANGE',
+            109 => 'SETBIT',
+            110 => 'GETBIT',
+            111 => 'RPUSHX',
+            112 => 'LPUSHX',
+            113 => 'LINSERT',
+            114 => 'BRPOPLPUSH',
+            115 => 'ZREVRANGEBYSCORE',
+            116 => 'WATCH',
+            117 => 'UNWATCH',
+            118 => 'OBJECT',
+            119 => 'SLOWLOG',
         );
     }
 }

+ 121 - 121
tests/Predis/Profile/RedisVersion240Test.php

@@ -38,127 +38,127 @@ class RedisVersion240Test extends RedisProfileTestCase
     public function getExpectedCommands()
     {
         return array(
-            0 => 'exists',
-            1 => 'del',
-            2 => 'type',
-            3 => 'keys',
-            4 => 'randomkey',
-            5 => 'rename',
-            6 => 'renamenx',
-            7 => 'expire',
-            8 => 'expireat',
-            9 => 'ttl',
-            10 => 'move',
-            11 => 'sort',
-            12 => 'set',
-            13 => 'setnx',
-            14 => 'mset',
-            15 => 'msetnx',
-            16 => 'get',
-            17 => 'mget',
-            18 => 'getset',
-            19 => 'incr',
-            20 => 'incrby',
-            21 => 'decr',
-            22 => 'decrby',
-            23 => 'rpush',
-            24 => 'lpush',
-            25 => 'llen',
-            26 => 'lrange',
-            27 => 'ltrim',
-            28 => 'lindex',
-            29 => 'lset',
-            30 => 'lrem',
-            31 => 'lpop',
-            32 => 'rpop',
-            33 => 'rpoplpush',
-            34 => 'sadd',
-            35 => 'srem',
-            36 => 'spop',
-            37 => 'smove',
-            38 => 'scard',
-            39 => 'sismember',
-            40 => 'sinter',
-            41 => 'sinterstore',
-            42 => 'sunion',
-            43 => 'sunionstore',
-            44 => 'sdiff',
-            45 => 'sdiffstore',
-            46 => 'smembers',
-            47 => 'srandmember',
-            48 => 'zadd',
-            49 => 'zincrby',
-            50 => 'zrem',
-            51 => 'zrange',
-            52 => 'zrevrange',
-            53 => 'zrangebyscore',
-            54 => 'zcard',
-            55 => 'zscore',
-            56 => 'zremrangebyscore',
-            57 => 'ping',
-            58 => 'auth',
-            59 => 'select',
-            60 => 'echo',
-            61 => 'quit',
-            62 => 'info',
-            63 => 'slaveof',
-            64 => 'monitor',
-            65 => 'dbsize',
-            66 => 'flushdb',
-            67 => 'flushall',
-            68 => 'save',
-            69 => 'bgsave',
-            70 => 'lastsave',
-            71 => 'shutdown',
-            72 => 'bgrewriteaof',
-            73 => 'setex',
-            74 => 'append',
-            75 => 'substr',
-            76 => 'blpop',
-            77 => 'brpop',
-            78 => 'zunionstore',
-            79 => 'zinterstore',
-            80 => 'zcount',
-            81 => 'zrank',
-            82 => 'zrevrank',
-            83 => 'zremrangebyrank',
-            84 => 'hset',
-            85 => 'hsetnx',
-            86 => 'hmset',
-            87 => 'hincrby',
-            88 => 'hget',
-            89 => 'hmget',
-            90 => 'hdel',
-            91 => 'hexists',
-            92 => 'hlen',
-            93 => 'hkeys',
-            94 => 'hvals',
-            95 => 'hgetall',
-            96 => 'multi',
-            97 => 'exec',
-            98 => 'discard',
-            99 => 'subscribe',
-            100 => 'unsubscribe',
-            101 => 'psubscribe',
-            102 => 'punsubscribe',
-            103 => 'publish',
-            104 => 'config',
-            105 => 'persist',
-            106 => 'strlen',
-            107 => 'setrange',
-            108 => 'getrange',
-            109 => 'setbit',
-            110 => 'getbit',
-            111 => 'rpushx',
-            112 => 'lpushx',
-            113 => 'linsert',
-            114 => 'brpoplpush',
-            115 => 'zrevrangebyscore',
-            116 => 'watch',
-            117 => 'unwatch',
-            118 => 'object',
-            119 => 'slowlog',
-            120 => 'client',
+            0   => 'EXISTS',
+            1   => 'DEL',
+            2   => 'TYPE',
+            3   => 'KEYS',
+            4   => 'RANDOMKEY',
+            5   => 'RENAME',
+            6   => 'RENAMENX',
+            7   => 'EXPIRE',
+            8   => 'EXPIREAT',
+            9   => 'TTL',
+            10  => 'MOVE',
+            11  => 'SORT',
+            12  => 'SET',
+            13  => 'SETNX',
+            14  => 'MSET',
+            15  => 'MSETNX',
+            16  => 'GET',
+            17  => 'MGET',
+            18  => 'GETSET',
+            19  => 'INCR',
+            20  => 'INCRBY',
+            21  => 'DECR',
+            22  => 'DECRBY',
+            23  => 'RPUSH',
+            24  => 'LPUSH',
+            25  => 'LLEN',
+            26  => 'LRANGE',
+            27  => 'LTRIM',
+            28  => 'LINDEX',
+            29  => 'LSET',
+            30  => 'LREM',
+            31  => 'LPOP',
+            32  => 'RPOP',
+            33  => 'RPOPLPUSH',
+            34  => 'SADD',
+            35  => 'SREM',
+            36  => 'SPOP',
+            37  => 'SMOVE',
+            38  => 'SCARD',
+            39  => 'SISMEMBER',
+            40  => 'SINTER',
+            41  => 'SINTERSTORE',
+            42  => 'SUNION',
+            43  => 'SUNIONSTORE',
+            44  => 'SDIFF',
+            45  => 'SDIFFSTORE',
+            46  => 'SMEMBERS',
+            47  => 'SRANDMEMBER',
+            48  => 'ZADD',
+            49  => 'ZINCRBY',
+            50  => 'ZREM',
+            51  => 'ZRANGE',
+            52  => 'ZREVRANGE',
+            53  => 'ZRANGEBYSCORE',
+            54  => 'ZCARD',
+            55  => 'ZSCORE',
+            56  => 'ZREMRANGEBYSCORE',
+            57  => 'PING',
+            58  => 'AUTH',
+            59  => 'SELECT',
+            60  => 'ECHO',
+            61  => 'QUIT',
+            62  => 'INFO',
+            63  => 'SLAVEOF',
+            64  => 'MONITOR',
+            65  => 'DBSIZE',
+            66  => 'FLUSHDB',
+            67  => 'FLUSHALL',
+            68  => 'SAVE',
+            69  => 'BGSAVE',
+            70  => 'LASTSAVE',
+            71  => 'SHUTDOWN',
+            72  => 'BGREWRITEAOF',
+            73  => 'SETEX',
+            74  => 'APPEND',
+            75  => 'SUBSTR',
+            76  => 'BLPOP',
+            77  => 'BRPOP',
+            78  => 'ZUNIONSTORE',
+            79  => 'ZINTERSTORE',
+            80  => 'ZCOUNT',
+            81  => 'ZRANK',
+            82  => 'ZREVRANK',
+            83  => 'ZREMRANGEBYRANK',
+            84  => 'HSET',
+            85  => 'HSETNX',
+            86  => 'HMSET',
+            87  => 'HINCRBY',
+            88  => 'HGET',
+            89  => 'HMGET',
+            90  => 'HDEL',
+            91  => 'HEXISTS',
+            92  => 'HLEN',
+            93  => 'HKEYS',
+            94  => 'HVALS',
+            95  => 'HGETALL',
+            96  => 'MULTI',
+            97  => 'EXEC',
+            98  => 'DISCARD',
+            99  => 'SUBSCRIBE',
+            100 => 'UNSUBSCRIBE',
+            101 => 'PSUBSCRIBE',
+            102 => 'PUNSUBSCRIBE',
+            103 => 'PUBLISH',
+            104 => 'CONFIG',
+            105 => 'PERSIST',
+            106 => 'STRLEN',
+            107 => 'SETRANGE',
+            108 => 'GETRANGE',
+            109 => 'SETBIT',
+            110 => 'GETBIT',
+            111 => 'RPUSHX',
+            112 => 'LPUSHX',
+            113 => 'LINSERT',
+            114 => 'BRPOPLPUSH',
+            115 => 'ZREVRANGEBYSCORE',
+            116 => 'WATCH',
+            117 => 'UNWATCH',
+            118 => 'OBJECT',
+            119 => 'SLOWLOG',
+            120 => 'CLIENT',
         );
     }
 }

+ 136 - 136
tests/Predis/Profile/RedisVersion260Test.php

@@ -38,142 +38,142 @@ class RedisVersion260Test extends RedisProfileTestCase
     public function getExpectedCommands()
     {
         return array(
-            0 => 'exists',
-            1 => 'del',
-            2 => 'type',
-            3 => 'keys',
-            4 => 'randomkey',
-            5 => 'rename',
-            6 => 'renamenx',
-            7 => 'expire',
-            8 => 'expireat',
-            9 => 'ttl',
-            10 => 'move',
-            11 => 'sort',
-            12 => 'dump',
-            13 => 'restore',
-            14 => 'set',
-            15 => 'setnx',
-            16 => 'mset',
-            17 => 'msetnx',
-            18 => 'get',
-            19 => 'mget',
-            20 => 'getset',
-            21 => 'incr',
-            22 => 'incrby',
-            23 => 'decr',
-            24 => 'decrby',
-            25 => 'rpush',
-            26 => 'lpush',
-            27 => 'llen',
-            28 => 'lrange',
-            29 => 'ltrim',
-            30 => 'lindex',
-            31 => 'lset',
-            32 => 'lrem',
-            33 => 'lpop',
-            34 => 'rpop',
-            35 => 'rpoplpush',
-            36 => 'sadd',
-            37 => 'srem',
-            38 => 'spop',
-            39 => 'smove',
-            40 => 'scard',
-            41 => 'sismember',
-            42 => 'sinter',
-            43 => 'sinterstore',
-            44 => 'sunion',
-            45 => 'sunionstore',
-            46 => 'sdiff',
-            47 => 'sdiffstore',
-            48 => 'smembers',
-            49 => 'srandmember',
-            50 => 'zadd',
-            51 => 'zincrby',
-            52 => 'zrem',
-            53 => 'zrange',
-            54 => 'zrevrange',
-            55 => 'zrangebyscore',
-            56 => 'zcard',
-            57 => 'zscore',
-            58 => 'zremrangebyscore',
-            59 => 'ping',
-            60 => 'auth',
-            61 => 'select',
-            62 => 'echo',
-            63 => 'quit',
-            64 => 'info',
-            65 => 'slaveof',
-            66 => 'monitor',
-            67 => 'dbsize',
-            68 => 'flushdb',
-            69 => 'flushall',
-            70 => 'save',
-            71 => 'bgsave',
-            72 => 'lastsave',
-            73 => 'shutdown',
-            74 => 'bgrewriteaof',
-            75 => 'setex',
-            76 => 'append',
-            77 => 'substr',
-            78 => 'blpop',
-            79 => 'brpop',
-            80 => 'zunionstore',
-            81 => 'zinterstore',
-            82 => 'zcount',
-            83 => 'zrank',
-            84 => 'zrevrank',
-            85 => 'zremrangebyrank',
-            86 => 'hset',
-            87 => 'hsetnx',
-            88 => 'hmset',
-            89 => 'hincrby',
-            90 => 'hget',
-            91 => 'hmget',
-            92 => 'hdel',
-            93 => 'hexists',
-            94 => 'hlen',
-            95 => 'hkeys',
-            96 => 'hvals',
-            97 => 'hgetall',
-            98 => 'multi',
-            99 => 'exec',
-            100 => 'discard',
-            101 => 'subscribe',
-            102 => 'unsubscribe',
-            103 => 'psubscribe',
-            104 => 'punsubscribe',
-            105 => 'publish',
-            106 => 'config',
-            107 => 'persist',
-            108 => 'strlen',
-            109 => 'setrange',
-            110 => 'getrange',
-            111 => 'setbit',
-            112 => 'getbit',
-            113 => 'rpushx',
-            114 => 'lpushx',
-            115 => 'linsert',
-            116 => 'brpoplpush',
-            117 => 'zrevrangebyscore',
-            118 => 'watch',
-            119 => 'unwatch',
-            120 => 'object',
-            121 => 'slowlog',
-            122 => 'client',
-            123 => 'pttl',
-            124 => 'pexpire',
-            125 => 'pexpireat',
-            126 => 'psetex',
-            127 => 'incrbyfloat',
-            128 => 'bitop',
-            129 => 'bitcount',
-            130 => 'hincrbyfloat',
-            131 => 'eval',
-            132 => 'evalsha',
-            133 => 'script',
-            134 => 'time',
-            135 => 'sentinel',
+            0   => 'EXISTS',
+            1   => 'DEL',
+            2   => 'TYPE',
+            3   => 'KEYS',
+            4   => 'RANDOMKEY',
+            5   => 'RENAME',
+            6   => 'RENAMENX',
+            7   => 'EXPIRE',
+            8   => 'EXPIREAT',
+            9   => 'TTL',
+            10  => 'MOVE',
+            11  => 'SORT',
+            12  => 'DUMP',
+            13  => 'RESTORE',
+            14  => 'SET',
+            15  => 'SETNX',
+            16  => 'MSET',
+            17  => 'MSETNX',
+            18  => 'GET',
+            19  => 'MGET',
+            20  => 'GETSET',
+            21  => 'INCR',
+            22  => 'INCRBY',
+            23  => 'DECR',
+            24  => 'DECRBY',
+            25  => 'RPUSH',
+            26  => 'LPUSH',
+            27  => 'LLEN',
+            28  => 'LRANGE',
+            29  => 'LTRIM',
+            30  => 'LINDEX',
+            31  => 'LSET',
+            32  => 'LREM',
+            33  => 'LPOP',
+            34  => 'RPOP',
+            35  => 'RPOPLPUSH',
+            36  => 'SADD',
+            37  => 'SREM',
+            38  => 'SPOP',
+            39  => 'SMOVE',
+            40  => 'SCARD',
+            41  => 'SISMEMBER',
+            42  => 'SINTER',
+            43  => 'SINTERSTORE',
+            44  => 'SUNION',
+            45  => 'SUNIONSTORE',
+            46  => 'SDIFF',
+            47  => 'SDIFFSTORE',
+            48  => 'SMEMBERS',
+            49  => 'SRANDMEMBER',
+            50  => 'ZADD',
+            51  => 'ZINCRBY',
+            52  => 'ZREM',
+            53  => 'ZRANGE',
+            54  => 'ZREVRANGE',
+            55  => 'ZRANGEBYSCORE',
+            56  => 'ZCARD',
+            57  => 'ZSCORE',
+            58  => 'ZREMRANGEBYSCORE',
+            59  => 'PING',
+            60  => 'AUTH',
+            61  => 'SELECT',
+            62  => 'ECHO',
+            63  => 'QUIT',
+            64  => 'INFO',
+            65  => 'SLAVEOF',
+            66  => 'MONITOR',
+            67  => 'DBSIZE',
+            68  => 'FLUSHDB',
+            69  => 'FLUSHALL',
+            70  => 'SAVE',
+            71  => 'BGSAVE',
+            72  => 'LASTSAVE',
+            73  => 'SHUTDOWN',
+            74  => 'BGREWRITEAOF',
+            75  => 'SETEX',
+            76  => 'APPEND',
+            77  => 'SUBSTR',
+            78  => 'BLPOP',
+            79  => 'BRPOP',
+            80  => 'ZUNIONSTORE',
+            81  => 'ZINTERSTORE',
+            82  => 'ZCOUNT',
+            83  => 'ZRANK',
+            84  => 'ZREVRANK',
+            85  => 'ZREMRANGEBYRANK',
+            86  => 'HSET',
+            87  => 'HSETNX',
+            88  => 'HMSET',
+            89  => 'HINCRBY',
+            90  => 'HGET',
+            91  => 'HMGET',
+            92  => 'HDEL',
+            93  => 'HEXISTS',
+            94  => 'HLEN',
+            95  => 'HKEYS',
+            96  => 'HVALS',
+            97  => 'HGETALL',
+            98  => 'MULTI',
+            99  => 'EXEC',
+            100 => 'DISCARD',
+            101 => 'SUBSCRIBE',
+            102 => 'UNSUBSCRIBE',
+            103 => 'PSUBSCRIBE',
+            104 => 'PUNSUBSCRIBE',
+            105 => 'PUBLISH',
+            106 => 'CONFIG',
+            107 => 'PERSIST',
+            108 => 'STRLEN',
+            109 => 'SETRANGE',
+            110 => 'GETRANGE',
+            111 => 'SETBIT',
+            112 => 'GETBIT',
+            113 => 'RPUSHX',
+            114 => 'LPUSHX',
+            115 => 'LINSERT',
+            116 => 'BRPOPLPUSH',
+            117 => 'ZREVRANGEBYSCORE',
+            118 => 'WATCH',
+            119 => 'UNWATCH',
+            120 => 'OBJECT',
+            121 => 'SLOWLOG',
+            122 => 'CLIENT',
+            123 => 'PTTL',
+            124 => 'PEXPIRE',
+            125 => 'PEXPIREAT',
+            126 => 'PSETEX',
+            127 => 'INCRBYFLOAT',
+            128 => 'BITOP',
+            129 => 'BITCOUNT',
+            130 => 'HINCRBYFLOAT',
+            131 => 'EVAL',
+            132 => 'EVALSHA',
+            133 => 'SCRIPT',
+            134 => 'TIME',
+            135 => 'SENTINEL',
         );
     }
 }

+ 141 - 141
tests/Predis/Profile/RedisVersion280Test.php

@@ -38,147 +38,147 @@ class RedisVersion280Test extends RedisProfileTestCase
     public function getExpectedCommands()
     {
         return array(
-            0 => 'exists',
-            1 => 'del',
-            2 => 'type',
-            3 => 'keys',
-            4 => 'randomkey',
-            5 => 'rename',
-            6 => 'renamenx',
-            7 => 'expire',
-            8 => 'expireat',
-            9 => 'ttl',
-            10 => 'move',
-            11 => 'sort',
-            12 => 'dump',
-            13 => 'restore',
-            14 => 'set',
-            15 => 'setnx',
-            16 => 'mset',
-            17 => 'msetnx',
-            18 => 'get',
-            19 => 'mget',
-            20 => 'getset',
-            21 => 'incr',
-            22 => 'incrby',
-            23 => 'decr',
-            24 => 'decrby',
-            25 => 'rpush',
-            26 => 'lpush',
-            27 => 'llen',
-            28 => 'lrange',
-            29 => 'ltrim',
-            30 => 'lindex',
-            31 => 'lset',
-            32 => 'lrem',
-            33 => 'lpop',
-            34 => 'rpop',
-            35 => 'rpoplpush',
-            36 => 'sadd',
-            37 => 'srem',
-            38 => 'spop',
-            39 => 'smove',
-            40 => 'scard',
-            41 => 'sismember',
-            42 => 'sinter',
-            43 => 'sinterstore',
-            44 => 'sunion',
-            45 => 'sunionstore',
-            46 => 'sdiff',
-            47 => 'sdiffstore',
-            48 => 'smembers',
-            49 => 'srandmember',
-            50 => 'zadd',
-            51 => 'zincrby',
-            52 => 'zrem',
-            53 => 'zrange',
-            54 => 'zrevrange',
-            55 => 'zrangebyscore',
-            56 => 'zcard',
-            57 => 'zscore',
-            58 => 'zremrangebyscore',
-            59 => 'ping',
-            60 => 'auth',
-            61 => 'select',
-            62 => 'echo',
-            63 => 'quit',
-            64 => 'info',
-            65 => 'slaveof',
-            66 => 'monitor',
-            67 => 'dbsize',
-            68 => 'flushdb',
-            69 => 'flushall',
-            70 => 'save',
-            71 => 'bgsave',
-            72 => 'lastsave',
-            73 => 'shutdown',
-            74 => 'bgrewriteaof',
-            75 => 'setex',
-            76 => 'append',
-            77 => 'substr',
-            78 => 'blpop',
-            79 => 'brpop',
-            80 => 'zunionstore',
-            81 => 'zinterstore',
-            82 => 'zcount',
-            83 => 'zrank',
-            84 => 'zrevrank',
-            85 => 'zremrangebyrank',
-            86 => 'hset',
-            87 => 'hsetnx',
-            88 => 'hmset',
-            89 => 'hincrby',
-            90 => 'hget',
-            91 => 'hmget',
-            92 => 'hdel',
-            93 => 'hexists',
-            94 => 'hlen',
-            95 => 'hkeys',
-            96 => 'hvals',
-            97 => 'hgetall',
-            98 => 'multi',
-            99 => 'exec',
-            100 => 'discard',
-            101 => 'subscribe',
-            102 => 'unsubscribe',
-            103 => 'psubscribe',
-            104 => 'punsubscribe',
-            105 => 'publish',
-            106 => 'config',
-            107 => 'persist',
-            108 => 'strlen',
-            109 => 'setrange',
-            110 => 'getrange',
-            111 => 'setbit',
-            112 => 'getbit',
-            113 => 'rpushx',
-            114 => 'lpushx',
-            115 => 'linsert',
-            116 => 'brpoplpush',
-            117 => 'zrevrangebyscore',
-            118 => 'watch',
-            119 => 'unwatch',
-            120 => 'object',
-            121 => 'slowlog',
-            122 => 'client',
-            123 => 'pttl',
-            124 => 'pexpire',
-            125 => 'pexpireat',
-            126 => 'psetex',
-            127 => 'incrbyfloat',
-            128 => 'bitop',
-            129 => 'bitcount',
-            130 => 'hincrbyfloat',
-            131 => 'eval',
-            132 => 'evalsha',
-            133 => 'script',
-            134 => 'time',
-            135 => 'sentinel',
-            136 => 'scan',
-            137 => 'sscan',
-            138 => 'zscan',
-            139 => 'hscan',
-            140 => 'pubsub',
+            0   => 'EXISTS',
+            1   => 'DEL',
+            2   => 'TYPE',
+            3   => 'KEYS',
+            4   => 'RANDOMKEY',
+            5   => 'RENAME',
+            6   => 'RENAMENX',
+            7   => 'EXPIRE',
+            8   => 'EXPIREAT',
+            9   => 'TTL',
+            10  => 'MOVE',
+            11  => 'SORT',
+            12  => 'DUMP',
+            13  => 'RESTORE',
+            14  => 'SET',
+            15  => 'SETNX',
+            16  => 'MSET',
+            17  => 'MSETNX',
+            18  => 'GET',
+            19  => 'MGET',
+            20  => 'GETSET',
+            21  => 'INCR',
+            22  => 'INCRBY',
+            23  => 'DECR',
+            24  => 'DECRBY',
+            25  => 'RPUSH',
+            26  => 'LPUSH',
+            27  => 'LLEN',
+            28  => 'LRANGE',
+            29  => 'LTRIM',
+            30  => 'LINDEX',
+            31  => 'LSET',
+            32  => 'LREM',
+            33  => 'LPOP',
+            34  => 'RPOP',
+            35  => 'RPOPLPUSH',
+            36  => 'SADD',
+            37  => 'SREM',
+            38  => 'SPOP',
+            39  => 'SMOVE',
+            40  => 'SCARD',
+            41  => 'SISMEMBER',
+            42  => 'SINTER',
+            43  => 'SINTERSTORE',
+            44  => 'SUNION',
+            45  => 'SUNIONSTORE',
+            46  => 'SDIFF',
+            47  => 'SDIFFSTORE',
+            48  => 'SMEMBERS',
+            49  => 'SRANDMEMBER',
+            50  => 'ZADD',
+            51  => 'ZINCRBY',
+            52  => 'ZREM',
+            53  => 'ZRANGE',
+            54  => 'ZREVRANGE',
+            55  => 'ZRANGEBYSCORE',
+            56  => 'ZCARD',
+            57  => 'ZSCORE',
+            58  => 'ZREMRANGEBYSCORE',
+            59  => 'PING',
+            60  => 'AUTH',
+            61  => 'SELECT',
+            62  => 'ECHO',
+            63  => 'QUIT',
+            64  => 'INFO',
+            65  => 'SLAVEOF',
+            66  => 'MONITOR',
+            67  => 'DBSIZE',
+            68  => 'FLUSHDB',
+            69  => 'FLUSHALL',
+            70  => 'SAVE',
+            71  => 'BGSAVE',
+            72  => 'LASTSAVE',
+            73  => 'SHUTDOWN',
+            74  => 'BGREWRITEAOF',
+            75  => 'SETEX',
+            76  => 'APPEND',
+            77  => 'SUBSTR',
+            78  => 'BLPOP',
+            79  => 'BRPOP',
+            80  => 'ZUNIONSTORE',
+            81  => 'ZINTERSTORE',
+            82  => 'ZCOUNT',
+            83  => 'ZRANK',
+            84  => 'ZREVRANK',
+            85  => 'ZREMRANGEBYRANK',
+            86  => 'HSET',
+            87  => 'HSETNX',
+            88  => 'HMSET',
+            89  => 'HINCRBY',
+            90  => 'HGET',
+            91  => 'HMGET',
+            92  => 'HDEL',
+            93  => 'HEXISTS',
+            94  => 'HLEN',
+            95  => 'HKEYS',
+            96  => 'HVALS',
+            97  => 'HGETALL',
+            98  => 'MULTI',
+            99  => 'EXEC',
+            100 => 'DISCARD',
+            101 => 'SUBSCRIBE',
+            102 => 'UNSUBSCRIBE',
+            103 => 'PSUBSCRIBE',
+            104 => 'PUNSUBSCRIBE',
+            105 => 'PUBLISH',
+            106 => 'CONFIG',
+            107 => 'PERSIST',
+            108 => 'STRLEN',
+            109 => 'SETRANGE',
+            110 => 'GETRANGE',
+            111 => 'SETBIT',
+            112 => 'GETBIT',
+            113 => 'RPUSHX',
+            114 => 'LPUSHX',
+            115 => 'LINSERT',
+            116 => 'BRPOPLPUSH',
+            117 => 'ZREVRANGEBYSCORE',
+            118 => 'WATCH',
+            119 => 'UNWATCH',
+            120 => 'OBJECT',
+            121 => 'SLOWLOG',
+            122 => 'CLIENT',
+            123 => 'PTTL',
+            124 => 'PEXPIRE',
+            125 => 'PEXPIREAT',
+            126 => 'PSETEX',
+            127 => 'INCRBYFLOAT',
+            128 => 'BITOP',
+            129 => 'BITCOUNT',
+            130 => 'HINCRBYFLOAT',
+            131 => 'EVAL',
+            132 => 'EVALSHA',
+            133 => 'SCRIPT',
+            134 => 'TIME',
+            135 => 'SENTINEL',
+            136 => 'SCAN',
+            137 => 'SSCAN',
+            138 => 'ZSCAN',
+            139 => 'HSCAN',
+            140 => 'PUBSUB',
         );
     }
 }