diff --git a/RLTest/env.py b/RLTest/env.py index 3b6d29d1..c0ffe4ae 100644 --- a/RLTest/env.py +++ b/RLTest/env.py @@ -152,7 +152,7 @@ def getKwargs(self): class Env: RTestInstance = None EnvCompareParams = ['module', 'moduleArgs', 'env', 'useSlaves', 'shardsCount', 'useAof', - 'useRdbPreamble', 'forceTcp'] + 'useRdbPreamble', 'forceTcp', 'decodeResponses'] def compareEnvs(self, env): if env is None: @@ -182,7 +182,7 @@ def __init__(self, testName=None, testDescription=None, module=None, self.env = env if env else Defaults.env self.useSlaves = useSlaves if useSlaves else Defaults.use_slaves self.shardsCount = shardsCount if shardsCount else Defaults.num_shards - self.decodeResponses = decodeResponses if decodeResponses else Defaults.decode_responses + self.decodeResponses = decodeResponses if decodeResponses is not None else Defaults.decode_responses self.useAof = useAof if useAof else Defaults.use_aof self.useRdbPreamble = useRdbPreamble if useRdbPreamble is not None else Defaults.use_rdb_preamble self.verbose = Defaults.verbose diff --git a/RLTest/exists_redis.py b/RLTest/exists_redis.py index e71044fc..a36f6d05 100644 --- a/RLTest/exists_redis.py +++ b/RLTest/exists_redis.py @@ -12,10 +12,11 @@ class ExistsRedisEnv(object): - def __init__(self, addr='localhost:6379', password = None, **kargs): + def __init__(self, addr='localhost:6379', password = None, decodeResponses=False, **kargs): self.host, self.port = addr.split(':') self.port = int(self.port) self.password = password + self.decodeResponses = decodeResponses @property def has_interactive_debugger(self): @@ -36,7 +37,7 @@ def stopEnv(self, masters = True, slaves = True): pass def getConnection(self, shardId=1): - return redis.StrictRedis(self.host, self.port, password=self.password) + return redis.StrictRedis(self.host, self.port, password=self.password, decode_responses=self.decodeResponses) def getSlaveConnection(self): raise Exception('asked for slave connection but no slave exists') @@ -63,7 +64,7 @@ def _waitForBgsaveToFinish(self): while True: if not self.getConnection().execute_command('info', 'Persistence')['rdb_bgsave_in_progress']: break - + def flush(self): self.getConnection().flushall() self._waitForBgsaveToFinish() diff --git a/pyproject.toml b/pyproject.toml index f7ef301f..e6ec29c8 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "RLTest" -version = "0.4.2" +version = "0.4.4" description="Redis Labs Test Framework, allow to run tests on redis and modules on a variety of environments" authors = ["RedisLabs "] license = "BSD-3-Clause" @@ -25,7 +25,8 @@ classifiers = [ [tool.poetry.dependencies] python = "^2.7,<2.8 || >= 3.5.0" distro = "^1.5.0" -redis = "^3.5.3" +# redis = "^3.5.3" +redis = { git = "https://github.com/redisfab/redis-py.git", branch = "3.5" } redis-py-cluster = "*" psutil = "^5.8.0" pytest-cov = "2.5"