def execute_command(conn, hashmap): command, params = redis_commands.parse(receive_data(conn)) command_fn = redis_commands.find(command) hashmap, response = command_fn(conn, hashmap, *params) conn.sendall(response) print("--- Received command: %s" % command.upper()) execute_command(conn, hashmap)
def test_parse_set_command(self): received_data = "*3\r\n$3\r\nSET\r\n$3\r\nkey\r\n$1\r\n'Hello'\r\n" command, params = redis_commands.parse(received_data) self.assertEquals(command, "set") self.assertEquals(params, ("key", "Hello"))
def execute_command(conn, hashmap): command, params = redis_commands.parse(receive_data(conn)) command_fn = redis_commands.find(command) hashmap, response = command_fn(conn, hashmap, *params) conn.sendall(response) execute_command(conn, hashmap)