diff options
-rw-r--r-- | redis/commands/core.py | 10 | ||||
-rw-r--r-- | tests/test_commands.py | 10 |
2 files changed, 18 insertions, 2 deletions
diff --git a/redis/commands/core.py b/redis/commands/core.py index 83b97d7..1d0be8a 100644 --- a/redis/commands/core.py +++ b/redis/commands/core.py @@ -770,12 +770,18 @@ class ManagementCommands(CommandsProtocol): """ return self.execute_command("CONFIG GET", pattern, *args, **kwargs) - def config_set(self, name: KeyT, value: EncodableT, **kwargs) -> ResponseT: + def config_set( + self, + name: KeyT, + value: EncodableT, + *args: List[Union[KeyT, EncodableT]], + **kwargs, + ) -> ResponseT: """Set config item ``name`` with ``value`` For more information see https://redis.io/commands/config-set """ - return self.execute_command("CONFIG SET", name, value, **kwargs) + return self.execute_command("CONFIG SET", name, value, *args, **kwargs) def config_resetstat(self, **kwargs) -> ResponseT: """ diff --git a/tests/test_commands.py b/tests/test_commands.py index 57182fc..aa29e6f 100644 --- a/tests/test_commands.py +++ b/tests/test_commands.py @@ -692,6 +692,16 @@ class TestRedisCommands: assert r.config_set("timeout", 0) assert r.config_get()["timeout"] == "0" + @skip_if_server_version_lt("7.0.0") + @skip_if_redis_enterprise() + def test_config_set_multi_params(self, r: redis.Redis): + r.config_set("timeout", 70, "maxmemory", 100) + assert r.config_get()["timeout"] == "70" + assert r.config_get()["maxmemory"] == "100" + assert r.config_set("timeout", 0, "maxmemory", 0) + assert r.config_get()["timeout"] == "0" + assert r.config_get()["maxmemory"] == "0" + @skip_if_server_version_lt("6.0.0") @skip_if_redis_enterprise() def test_failover(self, r): |