aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorGravatar Leon Sandøy <[email protected]>2020-05-24 11:42:33 +0200
committerGravatar Leon Sandøy <[email protected]>2020-05-24 11:42:33 +0200
commitb2009d5304beba4829b7727ca154bb6a0d1cd50a (patch)
tree5e08648ade4f01db9280e8413d50592388eba3ed /tests
parentBetter RuntimeErrors. (diff)
Make .items return ItemsView instead of AsyncIter
There really was no compelling reason why this method should return an AsyncIterator or than that `async for items in cache.items()` has nice readability, but there were a few concerns. One is a concern about race conditions raised by @SebastiaanZ, and @MarkKoz raised a concern that it was misleading to have an AsyncIterator that only "pretended" to be lazy. To address these concerns, I've refactored it to return a regular ItemsView instead. I also improved the docstring, and fixed the relevant tests.
Diffstat (limited to 'tests')
-rw-r--r--tests/bot/utils/test_redis_cache.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/tests/bot/utils/test_redis_cache.py b/tests/bot/utils/test_redis_cache.py
index 150195726..6e12002ed 100644
--- a/tests/bot/utils/test_redis_cache.py
+++ b/tests/bot/utils/test_redis_cache.py
@@ -88,7 +88,7 @@ class RedisCacheTests(unittest.IsolatedAsyncioTestCase):
await self.redis.set(key, value)
# Consume the AsyncIterator into a regular list, easier to compare that way.
- redis_items = [item async for item in self.redis.items()]
+ redis_items = [item for item in await self.redis.items()]
# These sequences are probably in the same order now, but probably
# isn't good enough for tests. Let's not rely on .hgetall always
@@ -113,7 +113,7 @@ class RedisCacheTests(unittest.IsolatedAsyncioTestCase):
async def test_to_dict(self):
"""Test that the .to_dict method returns a workable dictionary copy."""
copy = await self.redis.to_dict()
- local_copy = {key: value async for key, value in self.redis.items()}
+ local_copy = {key: value for key, value in await self.redis.items()}
self.assertIs(type(copy), dict)
self.assertDictEqual(copy, local_copy)