{
 "summary": {
  "resp2": "80/80 identical",
  "resp3": "80/80 identical"
 },
 "differences": [],
 "redis_py": "8.1.0",
 "all": {
  "redis_resp2": [
   [
    "PING",
    true
   ],
   [
    "ECHO",
    "hi"
   ],
   [
    "SET",
    true
   ],
   [
    "GET",
    "v1"
   ],
   [
    "GET missing",
    null
   ],
   [
    "SET NX existing",
    null
   ],
   [
    "SET XX",
    true
   ],
   [
    "GETSET",
    "v2"
   ],
   [
    "APPEND",
    4
   ],
   [
    "STRLEN",
    4
   ],
   [
    "GETRANGE",
    "v3z"
   ],
   [
    "SETRANGE",
    4
   ],
   [
    "MSET",
    true
   ],
   [
    "MGET",
    [
     "1",
     "2",
     null
    ]
   ],
   [
    "INCR",
    1
   ],
   [
    "INCRBY",
    11
   ],
   [
    "DECR",
    10
   ],
   [
    "INCRBYFLOAT",
    1.5
   ],
   [
    "INCR non-int",
    "ERR ResponseError: value"
   ],
   [
    "EXPIRE",
    true
   ],
   [
    "TTL in range",
    true
   ],
   [
    "PERSIST",
    true
   ],
   [
    "TTL none",
    -1
   ],
   [
    "TTL missing",
    -2
   ],
   [
    "SET PX + expiry works",
    0
   ],
   [
    "EXISTS",
    2
   ],
   [
    "DEL",
    1
   ],
   [
    "TYPE string",
    "string"
   ],
   [
    "RENAME",
    true
   ],
   [
    "TYPE missing",
    "none"
   ],
   [
    "HSET",
    2
   ],
   [
    "HGET",
    "1"
   ],
   [
    "HGETALL",
    {
     "f1": "1",
     "f2": "2"
    }
   ],
   [
    "HINCRBY",
    6
   ],
   [
    "HDEL",
    1
   ],
   [
    "HLEN",
    1
   ],
   [
    "HEXISTS",
    true
   ],
   [
    "HKEYS",
    [
     "f1"
    ]
   ],
   [
    "LPUSH",
    2
   ],
   [
    "RPUSH",
    3
   ],
   [
    "LRANGE",
    [
     "b",
     "a",
     "c"
    ]
   ],
   [
    "LPOP",
    "b"
   ],
   [
    "RPOP count",
    [
     "c",
     "a"
    ]
   ],
   [
    "LLEN empty",
    0
   ],
   [
    "LINDEX",
    "y"
   ],
   [
    "LREM",
    1
   ],
   [
    "LTRIM",
    true
   ],
   [
    "LRANGE after trim",
    [
     "y"
    ]
   ],
   [
    "SADD",
    3
   ],
   [
    "SMEMBERS",
    [
     "a",
     "b",
     "c"
    ]
   ],
   [
    "SISMEMBER",
    1
   ],
   [
    "SREM",
    1
   ],
   [
    "SCARD",
    2
   ],
   [
    "SINTER",
    [
     "b"
    ]
   ],
   [
    "SUNION",
    [
     "b",
     "c",
     "z"
    ]
   ],
   [
    "SDIFF",
    [
     "c"
    ]
   ],
   [
    "ZADD",
    3
   ],
   [
    "ZRANGE withscores",
    [
     [
      "a",
      1.0
     ],
     [
      "b",
      2.0
     ],
     [
      "c",
      3.0
     ]
    ]
   ],
   [
    "ZSCORE",
    2.0
   ],
   [
    "ZINCRBY",
    6.0
   ],
   [
    "ZRANK",
    2
   ],
   [
    "ZREVRANGE",
    [
     "a",
     "c"
    ]
   ],
   [
    "ZRANGEBYSCORE",
    [
     "b",
     "c"
    ]
   ],
   [
    "ZREM",
    1
   ],
   [
    "ZCARD",
    2
   ],
   [
    "WRONGTYPE",
    "ERR ResponseError: WRONGTYPE"
   ],
   [
    "binary-safe value",
    true
   ],
   [
    "SCAN all keys",
    [
     "a2",
     "bin",
     "f",
     "h",
     "l2",
     "n",
     "s",
     "st",
     "st2",
     "z"
    ]
   ],
   [
    "KEYS pattern",
    [
     "l2"
    ]
   ],
   [
    "DBSIZE",
    10
   ],
   [
    "MULTI/EXEC",
    [
     true,
     2,
     "2"
    ]
   ],
   [
    "pipeline 100 INCR",
    100
   ],
   [
    "WATCH abort",
    "WatchError (aborted)"
   ],
   [
    "pubsub",
    [
     1,
     [
      [
       "subscribe",
       1
      ],
      [
       "message",
       "hello"
      ]
     ]
    ]
   ],
   [
    "unknown command",
    "ERR ResponseError: unknown"
   ],
   [
    "SELECT db 1 isolation",
    0
   ],
   [
    "OBJECT ENCODING int",
    "int"
   ],
   [
    "COPY",
    true
   ],
   [
    "GETDEL",
    "vABz"
   ],
   [
    "SETEX + TTL",
    true
   ]
  ],
  "kividb_resp2": [
   [
    "PING",
    true
   ],
   [
    "ECHO",
    "hi"
   ],
   [
    "SET",
    true
   ],
   [
    "GET",
    "v1"
   ],
   [
    "GET missing",
    null
   ],
   [
    "SET NX existing",
    null
   ],
   [
    "SET XX",
    true
   ],
   [
    "GETSET",
    "v2"
   ],
   [
    "APPEND",
    4
   ],
   [
    "STRLEN",
    4
   ],
   [
    "GETRANGE",
    "v3z"
   ],
   [
    "SETRANGE",
    4
   ],
   [
    "MSET",
    true
   ],
   [
    "MGET",
    [
     "1",
     "2",
     null
    ]
   ],
   [
    "INCR",
    1
   ],
   [
    "INCRBY",
    11
   ],
   [
    "DECR",
    10
   ],
   [
    "INCRBYFLOAT",
    1.5
   ],
   [
    "INCR non-int",
    "ERR ResponseError: value"
   ],
   [
    "EXPIRE",
    true
   ],
   [
    "TTL in range",
    true
   ],
   [
    "PERSIST",
    true
   ],
   [
    "TTL none",
    -1
   ],
   [
    "TTL missing",
    -2
   ],
   [
    "SET PX + expiry works",
    0
   ],
   [
    "EXISTS",
    2
   ],
   [
    "DEL",
    1
   ],
   [
    "TYPE string",
    "string"
   ],
   [
    "RENAME",
    true
   ],
   [
    "TYPE missing",
    "none"
   ],
   [
    "HSET",
    2
   ],
   [
    "HGET",
    "1"
   ],
   [
    "HGETALL",
    {
     "f1": "1",
     "f2": "2"
    }
   ],
   [
    "HINCRBY",
    6
   ],
   [
    "HDEL",
    1
   ],
   [
    "HLEN",
    1
   ],
   [
    "HEXISTS",
    true
   ],
   [
    "HKEYS",
    [
     "f1"
    ]
   ],
   [
    "LPUSH",
    2
   ],
   [
    "RPUSH",
    3
   ],
   [
    "LRANGE",
    [
     "b",
     "a",
     "c"
    ]
   ],
   [
    "LPOP",
    "b"
   ],
   [
    "RPOP count",
    [
     "c",
     "a"
    ]
   ],
   [
    "LLEN empty",
    0
   ],
   [
    "LINDEX",
    "y"
   ],
   [
    "LREM",
    1
   ],
   [
    "LTRIM",
    true
   ],
   [
    "LRANGE after trim",
    [
     "y"
    ]
   ],
   [
    "SADD",
    3
   ],
   [
    "SMEMBERS",
    [
     "a",
     "b",
     "c"
    ]
   ],
   [
    "SISMEMBER",
    1
   ],
   [
    "SREM",
    1
   ],
   [
    "SCARD",
    2
   ],
   [
    "SINTER",
    [
     "b"
    ]
   ],
   [
    "SUNION",
    [
     "b",
     "c",
     "z"
    ]
   ],
   [
    "SDIFF",
    [
     "c"
    ]
   ],
   [
    "ZADD",
    3
   ],
   [
    "ZRANGE withscores",
    [
     [
      "a",
      1.0
     ],
     [
      "b",
      2.0
     ],
     [
      "c",
      3.0
     ]
    ]
   ],
   [
    "ZSCORE",
    2.0
   ],
   [
    "ZINCRBY",
    6.0
   ],
   [
    "ZRANK",
    2
   ],
   [
    "ZREVRANGE",
    [
     "a",
     "c"
    ]
   ],
   [
    "ZRANGEBYSCORE",
    [
     "b",
     "c"
    ]
   ],
   [
    "ZREM",
    1
   ],
   [
    "ZCARD",
    2
   ],
   [
    "WRONGTYPE",
    "ERR ResponseError: WRONGTYPE"
   ],
   [
    "binary-safe value",
    true
   ],
   [
    "SCAN all keys",
    [
     "a2",
     "bin",
     "f",
     "h",
     "l2",
     "n",
     "s",
     "st",
     "st2",
     "z"
    ]
   ],
   [
    "KEYS pattern",
    [
     "l2"
    ]
   ],
   [
    "DBSIZE",
    10
   ],
   [
    "MULTI/EXEC",
    [
     true,
     2,
     "2"
    ]
   ],
   [
    "pipeline 100 INCR",
    100
   ],
   [
    "WATCH abort",
    "WatchError (aborted)"
   ],
   [
    "pubsub",
    [
     1,
     [
      [
       "subscribe",
       1
      ],
      [
       "message",
       "hello"
      ]
     ]
    ]
   ],
   [
    "unknown command",
    "ERR ResponseError: unknown"
   ],
   [
    "SELECT db 1 isolation",
    0
   ],
   [
    "OBJECT ENCODING int",
    "int"
   ],
   [
    "COPY",
    true
   ],
   [
    "GETDEL",
    "vABz"
   ],
   [
    "SETEX + TTL",
    true
   ]
  ],
  "redis_resp3": [
   [
    "PING",
    true
   ],
   [
    "ECHO",
    "hi"
   ],
   [
    "SET",
    true
   ],
   [
    "GET",
    "v1"
   ],
   [
    "GET missing",
    null
   ],
   [
    "SET NX existing",
    null
   ],
   [
    "SET XX",
    true
   ],
   [
    "GETSET",
    "v2"
   ],
   [
    "APPEND",
    4
   ],
   [
    "STRLEN",
    4
   ],
   [
    "GETRANGE",
    "v3z"
   ],
   [
    "SETRANGE",
    4
   ],
   [
    "MSET",
    true
   ],
   [
    "MGET",
    [
     "1",
     "2",
     null
    ]
   ],
   [
    "INCR",
    1
   ],
   [
    "INCRBY",
    11
   ],
   [
    "DECR",
    10
   ],
   [
    "INCRBYFLOAT",
    1.5
   ],
   [
    "INCR non-int",
    "ERR ResponseError: value"
   ],
   [
    "EXPIRE",
    true
   ],
   [
    "TTL in range",
    true
   ],
   [
    "PERSIST",
    true
   ],
   [
    "TTL none",
    -1
   ],
   [
    "TTL missing",
    -2
   ],
   [
    "SET PX + expiry works",
    0
   ],
   [
    "EXISTS",
    2
   ],
   [
    "DEL",
    1
   ],
   [
    "TYPE string",
    "string"
   ],
   [
    "RENAME",
    true
   ],
   [
    "TYPE missing",
    "none"
   ],
   [
    "HSET",
    2
   ],
   [
    "HGET",
    "1"
   ],
   [
    "HGETALL",
    {
     "f1": "1",
     "f2": "2"
    }
   ],
   [
    "HINCRBY",
    6
   ],
   [
    "HDEL",
    1
   ],
   [
    "HLEN",
    1
   ],
   [
    "HEXISTS",
    true
   ],
   [
    "HKEYS",
    [
     "f1"
    ]
   ],
   [
    "LPUSH",
    2
   ],
   [
    "RPUSH",
    3
   ],
   [
    "LRANGE",
    [
     "b",
     "a",
     "c"
    ]
   ],
   [
    "LPOP",
    "b"
   ],
   [
    "RPOP count",
    [
     "c",
     "a"
    ]
   ],
   [
    "LLEN empty",
    0
   ],
   [
    "LINDEX",
    "y"
   ],
   [
    "LREM",
    1
   ],
   [
    "LTRIM",
    true
   ],
   [
    "LRANGE after trim",
    [
     "y"
    ]
   ],
   [
    "SADD",
    3
   ],
   [
    "SMEMBERS",
    [
     "a",
     "b",
     "c"
    ]
   ],
   [
    "SISMEMBER",
    1
   ],
   [
    "SREM",
    1
   ],
   [
    "SCARD",
    2
   ],
   [
    "SINTER",
    [
     "b"
    ]
   ],
   [
    "SUNION",
    [
     "b",
     "c",
     "z"
    ]
   ],
   [
    "SDIFF",
    [
     "c"
    ]
   ],
   [
    "ZADD",
    3
   ],
   [
    "ZRANGE withscores",
    [
     [
      "a",
      1.0
     ],
     [
      "b",
      2.0
     ],
     [
      "c",
      3.0
     ]
    ]
   ],
   [
    "ZSCORE",
    2.0
   ],
   [
    "ZINCRBY",
    6.0
   ],
   [
    "ZRANK",
    2
   ],
   [
    "ZREVRANGE",
    [
     "a",
     "c"
    ]
   ],
   [
    "ZRANGEBYSCORE",
    [
     "b",
     "c"
    ]
   ],
   [
    "ZREM",
    1
   ],
   [
    "ZCARD",
    2
   ],
   [
    "WRONGTYPE",
    "ERR ResponseError: WRONGTYPE"
   ],
   [
    "binary-safe value",
    true
   ],
   [
    "SCAN all keys",
    [
     "a2",
     "bin",
     "f",
     "h",
     "l2",
     "n",
     "s",
     "st",
     "st2",
     "z"
    ]
   ],
   [
    "KEYS pattern",
    [
     "l2"
    ]
   ],
   [
    "DBSIZE",
    10
   ],
   [
    "MULTI/EXEC",
    [
     true,
     2,
     "2"
    ]
   ],
   [
    "pipeline 100 INCR",
    100
   ],
   [
    "WATCH abort",
    "WatchError (aborted)"
   ],
   [
    "pubsub",
    [
     1,
     [
      [
       "subscribe",
       1
      ],
      [
       "message",
       "hello"
      ]
     ]
    ]
   ],
   [
    "unknown command",
    "ERR ResponseError: unknown"
   ],
   [
    "SELECT db 1 isolation",
    0
   ],
   [
    "OBJECT ENCODING int",
    "int"
   ],
   [
    "COPY",
    true
   ],
   [
    "GETDEL",
    "vABz"
   ],
   [
    "SETEX + TTL",
    true
   ]
  ],
  "kividb_resp3": [
   [
    "PING",
    true
   ],
   [
    "ECHO",
    "hi"
   ],
   [
    "SET",
    true
   ],
   [
    "GET",
    "v1"
   ],
   [
    "GET missing",
    null
   ],
   [
    "SET NX existing",
    null
   ],
   [
    "SET XX",
    true
   ],
   [
    "GETSET",
    "v2"
   ],
   [
    "APPEND",
    4
   ],
   [
    "STRLEN",
    4
   ],
   [
    "GETRANGE",
    "v3z"
   ],
   [
    "SETRANGE",
    4
   ],
   [
    "MSET",
    true
   ],
   [
    "MGET",
    [
     "1",
     "2",
     null
    ]
   ],
   [
    "INCR",
    1
   ],
   [
    "INCRBY",
    11
   ],
   [
    "DECR",
    10
   ],
   [
    "INCRBYFLOAT",
    1.5
   ],
   [
    "INCR non-int",
    "ERR ResponseError: value"
   ],
   [
    "EXPIRE",
    true
   ],
   [
    "TTL in range",
    true
   ],
   [
    "PERSIST",
    true
   ],
   [
    "TTL none",
    -1
   ],
   [
    "TTL missing",
    -2
   ],
   [
    "SET PX + expiry works",
    0
   ],
   [
    "EXISTS",
    2
   ],
   [
    "DEL",
    1
   ],
   [
    "TYPE string",
    "string"
   ],
   [
    "RENAME",
    true
   ],
   [
    "TYPE missing",
    "none"
   ],
   [
    "HSET",
    2
   ],
   [
    "HGET",
    "1"
   ],
   [
    "HGETALL",
    {
     "f1": "1",
     "f2": "2"
    }
   ],
   [
    "HINCRBY",
    6
   ],
   [
    "HDEL",
    1
   ],
   [
    "HLEN",
    1
   ],
   [
    "HEXISTS",
    true
   ],
   [
    "HKEYS",
    [
     "f1"
    ]
   ],
   [
    "LPUSH",
    2
   ],
   [
    "RPUSH",
    3
   ],
   [
    "LRANGE",
    [
     "b",
     "a",
     "c"
    ]
   ],
   [
    "LPOP",
    "b"
   ],
   [
    "RPOP count",
    [
     "c",
     "a"
    ]
   ],
   [
    "LLEN empty",
    0
   ],
   [
    "LINDEX",
    "y"
   ],
   [
    "LREM",
    1
   ],
   [
    "LTRIM",
    true
   ],
   [
    "LRANGE after trim",
    [
     "y"
    ]
   ],
   [
    "SADD",
    3
   ],
   [
    "SMEMBERS",
    [
     "a",
     "b",
     "c"
    ]
   ],
   [
    "SISMEMBER",
    1
   ],
   [
    "SREM",
    1
   ],
   [
    "SCARD",
    2
   ],
   [
    "SINTER",
    [
     "b"
    ]
   ],
   [
    "SUNION",
    [
     "b",
     "c",
     "z"
    ]
   ],
   [
    "SDIFF",
    [
     "c"
    ]
   ],
   [
    "ZADD",
    3
   ],
   [
    "ZRANGE withscores",
    [
     [
      "a",
      1.0
     ],
     [
      "b",
      2.0
     ],
     [
      "c",
      3.0
     ]
    ]
   ],
   [
    "ZSCORE",
    2.0
   ],
   [
    "ZINCRBY",
    6.0
   ],
   [
    "ZRANK",
    2
   ],
   [
    "ZREVRANGE",
    [
     "a",
     "c"
    ]
   ],
   [
    "ZRANGEBYSCORE",
    [
     "b",
     "c"
    ]
   ],
   [
    "ZREM",
    1
   ],
   [
    "ZCARD",
    2
   ],
   [
    "WRONGTYPE",
    "ERR ResponseError: WRONGTYPE"
   ],
   [
    "binary-safe value",
    true
   ],
   [
    "SCAN all keys",
    [
     "a2",
     "bin",
     "f",
     "h",
     "l2",
     "n",
     "s",
     "st",
     "st2",
     "z"
    ]
   ],
   [
    "KEYS pattern",
    [
     "l2"
    ]
   ],
   [
    "DBSIZE",
    10
   ],
   [
    "MULTI/EXEC",
    [
     true,
     2,
     "2"
    ]
   ],
   [
    "pipeline 100 INCR",
    100
   ],
   [
    "WATCH abort",
    "WatchError (aborted)"
   ],
   [
    "pubsub",
    [
     1,
     [
      [
       "subscribe",
       1
      ],
      [
       "message",
       "hello"
      ]
     ]
    ]
   ],
   [
    "unknown command",
    "ERR ResponseError: unknown"
   ],
   [
    "SELECT db 1 isolation",
    0
   ],
   [
    "OBJECT ENCODING int",
    "int"
   ],
   [
    "COPY",
    true
   ],
   [
    "GETDEL",
    "vABz"
   ],
   [
    "SETEX + TTL",
    true
   ]
  ]
 }
}