diff --git a/aioredis/commands/server.py b/aioredis/commands/server.py index 8108f2524..55c158ac6 100644 --- a/aioredis/commands/server.py +++ b/aioredis/commands/server.py @@ -240,7 +240,7 @@ def _split(s): def to_time(obj): - return float(obj[0] + b'.' + obj[1].zfill(6)) + return int(obj[0]) + int(obj[1]) * 1e-6 def to_tuples(value): diff --git a/tests/server_commands_test.py b/tests/server_commands_test.py index 9599e6cf9..a1492e492 100644 --- a/tests/server_commands_test.py +++ b/tests/server_commands_test.py @@ -273,6 +273,15 @@ def test_time(redis): pytest.assert_almost_equal(int(res), int(time.time()), delta=10) +@pytest.mark.run_loop +def test_time_with_encoding(create_redis, server, loop): + redis = yield from create_redis(server.tcp_address, loop=loop, + encoding='utf-8') + res = yield from redis.time() + assert isinstance(res, float) + pytest.assert_almost_equal(int(res), int(time.time()), delta=10) + + @pytest.mark.run_loop def test_slowlog_len(redis): res = yield from redis.slowlog_len()