Skip to content

Commit 05ab1d2

Browse files
authored
Add password as a parameter for Env - [MOD-6117] (#208)
* added password as a parameter for Env * added a test
1 parent 26528b8 commit 05ab1d2

File tree

2 files changed

+22
-4
lines changed

2 files changed

+22
-4
lines changed

RLTest/env.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,7 @@ class Env:
182182
RTestInstance = None
183183
EnvCompareParams = ['module', 'moduleArgs', 'env', 'useSlaves', 'shardsCount', 'useAof',
184184
'useRdbPreamble', 'forceTcp', 'enableDebugCommand', 'enableProtectedConfigs',
185-
'enableModuleCommand', 'protocol']
185+
'enableModuleCommand', 'protocol', 'password']
186186

187187
def compareEnvs(self, env):
188188
if env is None:
@@ -193,7 +193,7 @@ def compareEnvs(self, env):
193193
return True
194194

195195
def __init__(self, testName=None, testDescription=None, module=None,
196-
moduleArgs=None, env=None, useSlaves=None, shardsCount=None, decodeResponses=None,
196+
moduleArgs=None, env=None, useSlaves=None, shardsCount=None, decodeResponses=None, password=None,
197197
useAof=None, useRdbPreamble=None, forceTcp=False, useTLS=False, tlsCertFile=None, tlsKeyFile=None,
198198
tlsCaCertFile=None, tlsPassphrase=None, logDir=None, redisBinaryPath=None, dmcBinaryPath=None,
199199
redisEnterpriseBinaryPath=None, noDefaultModuleArgs=False, clusterNodeTimeout = None,
@@ -222,6 +222,7 @@ def __init__(self, testName=None, testDescription=None, module=None,
222222
self.verbose = Defaults.verbose
223223
self.logDir = logDir if logDir else Defaults.logdir
224224
self.forceTcp = forceTcp
225+
self.password = password
225226
self.debugger = Defaults.debugger
226227
self.sanitizer = Defaults.sanitizer
227228
self.useTLS = useTLS if useTLS else Defaults.use_TLS
@@ -289,7 +290,7 @@ def getEnvByName(self):
289290

290291
if self.env == 'oss':
291292
kwargs.update(single_args)
292-
kwargs['password'] = Defaults.oss_password
293+
kwargs['password'] = Defaults.oss_password if self.password is None else self.password
293294
return StandardEnv(redisBinaryPath=self.redisBinaryPath,
294295
outputFilesFormat='%s-' + '%s-oss' % test_fname,
295296
**kwargs)
@@ -307,7 +308,7 @@ def getEnvByName(self):
307308
dmcBinaryPath=Defaults.proxy_binary,
308309
**kwargs)
309310
if self.env == 'oss-cluster':
310-
kwargs['password'] = Defaults.oss_password
311+
kwargs['password'] = Defaults.oss_password if self.password is None else self.password
311312
return ClusterEnv(shardsCount=self.shardsCount, redisBinaryPath=self.redisBinaryPath,
312313
outputFilesFormat='%s-' + '%s-oss-cluster' % test_fname,
313314
randomizePorts=Defaults.randomize_ports,

tests/unit/test_env.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
from unittest import TestCase
44

55
from RLTest import Env
6+
from RLTest.redis_cluster import ClusterEnv
67
from tests.unit.test_common import REDIS_BINARY
78

89

@@ -221,3 +222,19 @@ def test_skip_on_unix_socket(self):
221222

222223
def test_skip_on_enterprise_cluster(self):
223224
pass
225+
226+
def test_with_password(self):
227+
password = 'GoodPassword42'
228+
self.env = Env(useSlaves=True, env='oss', password=password, logDir=self.test_dir, redisBinaryPath=REDIS_BINARY)
229+
assert self.env.envRunner.getPassword() == password
230+
conn = self.env.getConnection()
231+
assert conn.ping() == True
232+
self.env.stop()
233+
assert self.env.isUp() == False
234+
self.env = Env(useSlaves=True, env='oss-cluster', password=password, logDir=self.test_dir, redisBinaryPath=REDIS_BINARY)
235+
assert isinstance(self.env.envRunner, ClusterEnv)
236+
assert self.env.envRunner.password == password
237+
conn = self.env.getConnection()
238+
assert conn.ping() == True
239+
self.env.stop()
240+
assert self.env.isUp() == False

0 commit comments

Comments
 (0)