mirror of
https://github.com/ets-labs/python-dependency-injector.git
synced 2025-07-02 03:13:15 +03:00
Migrate wiring async injection tests
This commit is contained in:
parent
0cd1a1646d
commit
5e59e8d729
55
tests/unit/wiring/provider_ids/test_async_injections_py36.py
Normal file
55
tests/unit/wiring/provider_ids/test_async_injections_py36.py
Normal file
|
@ -0,0 +1,55 @@
|
|||
"""Async injection tests."""
|
||||
|
||||
from pytest import fixture, mark
|
||||
|
||||
from wiringsamples import asyncinjections
|
||||
|
||||
|
||||
@fixture(autouse=True)
|
||||
def container():
|
||||
container = asyncinjections.Container()
|
||||
container.wire(modules=[asyncinjections])
|
||||
yield container
|
||||
container.unwire()
|
||||
|
||||
|
||||
@fixture(autouse=True)
|
||||
def reset_counters():
|
||||
asyncinjections.resource1.reset_counters()
|
||||
asyncinjections.resource2.reset_counters()
|
||||
|
||||
|
||||
@mark.asyncio
|
||||
async def test_async_injections():
|
||||
resource1, resource2 = await asyncinjections.async_injection()
|
||||
|
||||
assert resource1 is asyncinjections.resource1
|
||||
assert asyncinjections.resource1.init_counter == 1
|
||||
assert asyncinjections.resource1.shutdown_counter == 0
|
||||
|
||||
assert resource2 is asyncinjections.resource2
|
||||
assert asyncinjections.resource2.init_counter == 1
|
||||
assert asyncinjections.resource2.shutdown_counter == 0
|
||||
|
||||
|
||||
@mark.asyncio
|
||||
async def test_async_injections_with_closing():
|
||||
resource1, resource2 = await asyncinjections.async_injection_with_closing()
|
||||
|
||||
assert resource1 is asyncinjections.resource1
|
||||
assert asyncinjections.resource1.init_counter == 1
|
||||
assert asyncinjections.resource1.shutdown_counter == 1
|
||||
|
||||
assert resource2 is asyncinjections.resource2
|
||||
assert asyncinjections.resource2.init_counter == 1
|
||||
assert asyncinjections.resource2.shutdown_counter == 1
|
||||
|
||||
resource1, resource2 = await asyncinjections.async_injection_with_closing()
|
||||
|
||||
assert resource1 is asyncinjections.resource1
|
||||
assert asyncinjections.resource1.init_counter == 2
|
||||
assert asyncinjections.resource1.shutdown_counter == 2
|
||||
|
||||
assert resource2 is asyncinjections.resource2
|
||||
assert asyncinjections.resource2.init_counter == 2
|
||||
assert asyncinjections.resource2.shutdown_counter == 2
|
55
tests/unit/wiring/string_ids/test_async_injections_py36.py
Normal file
55
tests/unit/wiring/string_ids/test_async_injections_py36.py
Normal file
|
@ -0,0 +1,55 @@
|
|||
"""Async injection tests."""
|
||||
|
||||
from pytest import fixture, mark
|
||||
|
||||
from wiringstringidssamples import asyncinjections
|
||||
|
||||
|
||||
@fixture(autouse=True)
|
||||
def container():
|
||||
container = asyncinjections.Container()
|
||||
container.wire(modules=[asyncinjections])
|
||||
yield container
|
||||
container.unwire()
|
||||
|
||||
|
||||
@fixture(autouse=True)
|
||||
def reset_counters():
|
||||
asyncinjections.resource1.reset_counters()
|
||||
asyncinjections.resource2.reset_counters()
|
||||
|
||||
|
||||
@mark.asyncio
|
||||
async def test_async_injections():
|
||||
resource1, resource2 = await asyncinjections.async_injection()
|
||||
|
||||
assert resource1 is asyncinjections.resource1
|
||||
assert asyncinjections.resource1.init_counter == 1
|
||||
assert asyncinjections.resource1.shutdown_counter == 0
|
||||
|
||||
assert resource2 is asyncinjections.resource2
|
||||
assert asyncinjections.resource2.init_counter == 1
|
||||
assert asyncinjections.resource2.shutdown_counter == 0
|
||||
|
||||
|
||||
@mark.asyncio
|
||||
async def test_async_injections_with_closing():
|
||||
resource1, resource2 = await asyncinjections.async_injection_with_closing()
|
||||
|
||||
assert resource1 is asyncinjections.resource1
|
||||
assert asyncinjections.resource1.init_counter == 1
|
||||
assert asyncinjections.resource1.shutdown_counter == 1
|
||||
|
||||
assert resource2 is asyncinjections.resource2
|
||||
assert asyncinjections.resource2.init_counter == 1
|
||||
assert asyncinjections.resource2.shutdown_counter == 1
|
||||
|
||||
resource1, resource2 = await asyncinjections.async_injection_with_closing()
|
||||
|
||||
assert resource1 is asyncinjections.resource1
|
||||
assert asyncinjections.resource1.init_counter == 2
|
||||
assert asyncinjections.resource1.shutdown_counter == 2
|
||||
|
||||
assert resource2 is asyncinjections.resource2
|
||||
assert asyncinjections.resource2.init_counter == 2
|
||||
assert asyncinjections.resource2.shutdown_counter == 2
|
|
@ -27,8 +27,6 @@ import sys
|
|||
sys.path.append(_TOP_DIR)
|
||||
sys.path.append(_SAMPLES_DIR)
|
||||
|
||||
from asyncutils import AsyncTestCase
|
||||
|
||||
from wiringsamples import module, package
|
||||
from wiringsamples.service import Service
|
||||
from wiringsamples.container import Container, SubContainer
|
||||
|
@ -487,56 +485,3 @@ class WiringAndFastAPITest(unittest.TestCase):
|
|||
self.assertEqual(result_2.shutdown_counter, 2)
|
||||
|
||||
self.assertIsNot(result_1, result_2)
|
||||
|
||||
|
||||
class WiringAsyncInjectionsTest(AsyncTestCase):
|
||||
|
||||
def test_async_injections(self):
|
||||
from wiringsamples import asyncinjections
|
||||
|
||||
container = asyncinjections.Container()
|
||||
container.wire(modules=[asyncinjections])
|
||||
self.addCleanup(container.unwire)
|
||||
|
||||
asyncinjections.resource1.reset_counters()
|
||||
asyncinjections.resource2.reset_counters()
|
||||
|
||||
resource1, resource2 = self._run(asyncinjections.async_injection())
|
||||
|
||||
self.assertIs(resource1, asyncinjections.resource1)
|
||||
self.assertEqual(asyncinjections.resource1.init_counter, 1)
|
||||
self.assertEqual(asyncinjections.resource1.shutdown_counter, 0)
|
||||
|
||||
self.assertIs(resource2, asyncinjections.resource2)
|
||||
self.assertEqual(asyncinjections.resource2.init_counter, 1)
|
||||
self.assertEqual(asyncinjections.resource2.shutdown_counter, 0)
|
||||
|
||||
def test_async_injections_with_closing(self):
|
||||
from wiringsamples import asyncinjections
|
||||
|
||||
container = asyncinjections.Container()
|
||||
container.wire(modules=[asyncinjections])
|
||||
self.addCleanup(container.unwire)
|
||||
|
||||
asyncinjections.resource1.reset_counters()
|
||||
asyncinjections.resource2.reset_counters()
|
||||
|
||||
resource1, resource2 = self._run(asyncinjections.async_injection_with_closing())
|
||||
|
||||
self.assertIs(resource1, asyncinjections.resource1)
|
||||
self.assertEqual(asyncinjections.resource1.init_counter, 1)
|
||||
self.assertEqual(asyncinjections.resource1.shutdown_counter, 1)
|
||||
|
||||
self.assertIs(resource2, asyncinjections.resource2)
|
||||
self.assertEqual(asyncinjections.resource2.init_counter, 1)
|
||||
self.assertEqual(asyncinjections.resource2.shutdown_counter, 1)
|
||||
|
||||
resource1, resource2 = self._run(asyncinjections.async_injection_with_closing())
|
||||
|
||||
self.assertIs(resource1, asyncinjections.resource1)
|
||||
self.assertEqual(asyncinjections.resource1.init_counter, 2)
|
||||
self.assertEqual(asyncinjections.resource1.shutdown_counter, 2)
|
||||
|
||||
self.assertIs(resource2, asyncinjections.resource2)
|
||||
self.assertEqual(asyncinjections.resource2.init_counter, 2)
|
||||
self.assertEqual(asyncinjections.resource2.shutdown_counter, 2)
|
||||
|
|
|
@ -31,8 +31,6 @@ import sys
|
|||
sys.path.append(_TOP_DIR)
|
||||
sys.path.append(_SAMPLES_DIR)
|
||||
|
||||
from asyncutils import AsyncTestCase
|
||||
|
||||
from wiringstringidssamples import module, package
|
||||
from wiringstringidssamples.service import Service
|
||||
from wiringstringidssamples.container import Container, SubContainer
|
||||
|
@ -358,56 +356,3 @@ class WireDynamicContainerTest(unittest.TestCase):
|
|||
|
||||
service = module.test_function()
|
||||
self.assertIsInstance(service, Service)
|
||||
|
||||
|
||||
class WiringAsyncInjectionsTest(AsyncTestCase):
|
||||
|
||||
def test_async_injections(self):
|
||||
from wiringstringidssamples import asyncinjections
|
||||
|
||||
container = asyncinjections.Container()
|
||||
container.wire(modules=[asyncinjections])
|
||||
self.addCleanup(container.unwire)
|
||||
|
||||
asyncinjections.resource1.reset_counters()
|
||||
asyncinjections.resource2.reset_counters()
|
||||
|
||||
resource1, resource2 = self._run(asyncinjections.async_injection())
|
||||
|
||||
self.assertIs(resource1, asyncinjections.resource1)
|
||||
self.assertEqual(asyncinjections.resource1.init_counter, 1)
|
||||
self.assertEqual(asyncinjections.resource1.shutdown_counter, 0)
|
||||
|
||||
self.assertIs(resource2, asyncinjections.resource2)
|
||||
self.assertEqual(asyncinjections.resource2.init_counter, 1)
|
||||
self.assertEqual(asyncinjections.resource2.shutdown_counter, 0)
|
||||
|
||||
def test_async_injections_with_closing(self):
|
||||
from wiringstringidssamples import asyncinjections
|
||||
|
||||
container = asyncinjections.Container()
|
||||
container.wire(modules=[asyncinjections])
|
||||
self.addCleanup(container.unwire)
|
||||
|
||||
asyncinjections.resource1.reset_counters()
|
||||
asyncinjections.resource2.reset_counters()
|
||||
|
||||
resource1, resource2 = self._run(asyncinjections.async_injection_with_closing())
|
||||
|
||||
self.assertIs(resource1, asyncinjections.resource1)
|
||||
self.assertEqual(asyncinjections.resource1.init_counter, 1)
|
||||
self.assertEqual(asyncinjections.resource1.shutdown_counter, 1)
|
||||
|
||||
self.assertIs(resource2, asyncinjections.resource2)
|
||||
self.assertEqual(asyncinjections.resource2.init_counter, 1)
|
||||
self.assertEqual(asyncinjections.resource2.shutdown_counter, 1)
|
||||
|
||||
resource1, resource2 = self._run(asyncinjections.async_injection_with_closing())
|
||||
|
||||
self.assertIs(resource1, asyncinjections.resource1)
|
||||
self.assertEqual(asyncinjections.resource1.init_counter, 2)
|
||||
self.assertEqual(asyncinjections.resource1.shutdown_counter, 2)
|
||||
|
||||
self.assertIs(resource2, asyncinjections.resource2)
|
||||
self.assertEqual(asyncinjections.resource2.init_counter, 2)
|
||||
self.assertEqual(asyncinjections.resource2.shutdown_counter, 2)
|
||||
|
|
Loading…
Reference in New Issue
Block a user