From 6168cd3d9798987d7bb0a26eeb9a8ff700efe6a8 Mon Sep 17 00:00:00 2001 From: Dmitry Orlov Date: Wed, 20 Nov 2019 01:05:29 +0300 Subject: [PATCH] [fix] pool tests --- tests/test_pool.py | 33 ++++++++++++++++++++++----------- 1 file changed, 22 insertions(+), 11 deletions(-) diff --git a/tests/test_pool.py b/tests/test_pool.py index 5f09d36a..1823a22b 100644 --- a/tests/test_pool.py +++ b/tests/test_pool.py @@ -78,22 +78,25 @@ def setUp(self): super().setUp() async def create_instance(self): - obj = TestCaseClose.Instanse() + obj = TestCaseClose.Instance() self.instances.add(obj) return obj async def test_close(self): async def getter(): - async with self.pool.acquire() as instance: - assert instance > 0 - await asyncio.sleep(0.01) - return self.counter + async with self.pool.acquire(): + await asyncio.sleep(0.05) + + self.assertFalse(self.pool.is_closed) + self.assertTrue(len(self.instances) == 0) await asyncio.gather( *[getter() for _ in range(200)], loop=self.loop, return_exceptions=True ) + self.assertTrue(len(self.instances) > 1) + for instance in self.instances: self.assertFalse(instance.closed) @@ -102,27 +105,35 @@ async def getter(): for instance in self.instances: self.assertTrue(instance.closed) + self.assertTrue(self.pool.is_closed) + async def test_close_context_manager(self): async def getter(): - async with self.pool.acquire() as instance: - assert instance > 0 - await asyncio.sleep(0.01) - return self.counter + async with self.pool.acquire(): + await asyncio.sleep(0.05) async with self.pool: + self.assertFalse(self.pool.is_closed) + + self.assertTrue(len(self.instances) == 0) + await asyncio.gather( *[getter() for _ in range(200)], loop=self.loop, return_exceptions=True ) + self.assertTrue(len(self.instances) > 1) + for instance in self.instances: self.assertFalse(instance.closed) - for instance in self.instances: - self.assertTrue(instance.closed) + self.assertFalse(self.pool.is_closed) self.assertTrue(self.pool.is_closed) + for instance in self.instances: + self.assertTrue(instance.closed) + class TestCaseNoMaxSize(BaseTestCase): max_size = None