Skip to content

Commit

Permalink
Migrate wiring async injection tests
Browse files Browse the repository at this point in the history
  • Loading branch information
rmk135 committed Oct 13, 2021
1 parent 0cd1a16 commit 5e59e8d
Show file tree
Hide file tree
Showing 4 changed files with 110 additions and 110 deletions.
55 changes: 55 additions & 0 deletions tests/unit/wiring/provider_ids/test_async_injections_py36.py
Original file line number Diff line number Diff line change
@@ -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 changes: 55 additions & 0 deletions tests/unit/wiring/string_ids/test_async_injections_py36.py
Original file line number Diff line number Diff line change
@@ -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
55 changes: 0 additions & 55 deletions tests/unit/wiring/test_wiring_py36.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,6 @@
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
Expand Down Expand Up @@ -487,56 +485,3 @@ def test_closing_resource_bypass_marker_injection(self):
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)
55 changes: 0 additions & 55 deletions tests/unit/wiring/test_wiring_string_ids_py36.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,6 @@
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
Expand Down Expand Up @@ -358,56 +356,3 @@ def test_wire(self):

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)

0 comments on commit 5e59e8d

Please sign in to comment.