2
2
3
3
from decimal import Decimal
4
4
5
- from dependency_injector import errors
6
- from dependency_injector .wiring import Closing , Provide , Provider , wire
7
5
from pytest import fixture , mark , raises
8
-
9
6
from samples .wiringstringids import module , package , resourceclosing
10
- from samples .wiringstringids .service import Service
11
7
from samples .wiringstringids .container import Container , SubContainer
8
+ from samples .wiringstringids .service import Service
9
+
10
+ from dependency_injector import errors
11
+ from dependency_injector .wiring import Closing , Provide , Provider , wire
12
12
13
13
14
14
@fixture (autouse = True )
@@ -33,14 +33,12 @@ def subcontainer():
33
33
container .unwire ()
34
34
35
35
36
- @fixture (params = [
37
- resourceclosing .Container ,
38
- resourceclosing .ContainerSingleton ,
39
- ])
36
+ @fixture
40
37
def resourceclosing_container (request ):
41
- container = request . param ()
38
+ container = resourceclosing . Container ()
42
39
container .wire (modules = [resourceclosing ])
43
- yield container
40
+ with container .reset_singletons ():
41
+ yield container
44
42
container .unwire ()
45
43
46
44
@@ -277,8 +275,6 @@ def test_wire_multiple_containers():
277
275
278
276
@mark .usefixtures ("resourceclosing_container" )
279
277
def test_closing_resource ():
280
- resourceclosing .Service .reset_counter ()
281
-
282
278
result_1 = resourceclosing .test_function ()
283
279
assert isinstance (result_1 , resourceclosing .Service )
284
280
assert result_1 .init_counter == 1
@@ -294,55 +290,48 @@ def test_closing_resource():
294
290
295
291
@mark .usefixtures ("resourceclosing_container" )
296
292
def test_closing_dependency_resource ():
297
- resourceclosing .Service .reset_counter ()
298
-
299
293
result_1 = resourceclosing .test_function_dependency ()
300
294
assert isinstance (result_1 , resourceclosing .FactoryService )
301
- assert result_1 .service .init_counter == 1
302
- assert result_1 .service .shutdown_counter == 1
295
+ assert result_1 .service .init_counter == 2
296
+ assert result_1 .service .shutdown_counter == 2
303
297
304
298
result_2 = resourceclosing .test_function_dependency ()
299
+
305
300
assert isinstance (result_2 , resourceclosing .FactoryService )
306
- assert result_2 .service .init_counter == 2
307
- assert result_2 .service .shutdown_counter == 2
301
+ assert result_2 .service .init_counter == 4
302
+ assert result_2 .service .shutdown_counter == 4
308
303
309
304
310
305
@mark .usefixtures ("resourceclosing_container" )
311
306
def test_closing_dependency_resource_kwargs ():
312
- resourceclosing .Service .reset_counter ()
313
-
314
307
result_1 = resourceclosing .test_function_dependency_kwargs ()
315
308
assert isinstance (result_1 , resourceclosing .FactoryService )
316
- assert result_1 .service .init_counter == 1
317
- assert result_1 .service .shutdown_counter == 1
309
+ assert result_1 .service .init_counter == 2
310
+ assert result_1 .service .shutdown_counter == 2
318
311
319
312
result_2 = resourceclosing .test_function_dependency_kwargs ()
320
313
assert isinstance (result_2 , resourceclosing .FactoryService )
321
- assert result_2 .service .init_counter == 2
322
- assert result_2 .service .shutdown_counter == 2
314
+ assert result_2 .service .init_counter == 4
315
+ assert result_2 .service .shutdown_counter == 4
323
316
324
317
325
318
@mark .usefixtures ("resourceclosing_container" )
326
319
def test_closing_nested_dependency_resource ():
327
- resourceclosing .Service .reset_counter ()
328
-
329
320
result_1 = resourceclosing .test_function_nested_dependency ()
330
321
assert isinstance (result_1 , resourceclosing .NestedService )
331
- assert result_1 .factory_service .service .init_counter == 1
332
- assert result_1 .factory_service .service .shutdown_counter == 1
322
+ assert result_1 .factory_service .service .init_counter == 2
323
+ assert result_1 .factory_service .service .shutdown_counter == 2
333
324
334
325
result_2 = resourceclosing .test_function_nested_dependency ()
335
326
assert isinstance (result_2 , resourceclosing .NestedService )
336
- assert result_2 .factory_service .service .init_counter == 2
337
- assert result_2 .factory_service .service .shutdown_counter == 2
327
+ assert result_2 .factory_service .service .init_counter == 4
328
+ assert result_2 .factory_service .service .shutdown_counter == 4
338
329
339
330
assert result_1 is not result_2
340
331
341
332
342
333
@mark .usefixtures ("resourceclosing_container" )
343
334
def test_closing_resource_bypass_marker_injection ():
344
- resourceclosing .Service .reset_counter ()
345
-
346
335
result_1 = resourceclosing .test_function (service = Closing [Provide ["service" ]])
347
336
assert isinstance (result_1 , resourceclosing .Service )
348
337
assert result_1 .init_counter == 1
@@ -358,7 +347,6 @@ def test_closing_resource_bypass_marker_injection():
358
347
359
348
@mark .usefixtures ("resourceclosing_container" )
360
349
def test_closing_resource_context ():
361
- resourceclosing .Service .reset_counter ()
362
350
service = resourceclosing .Service ()
363
351
364
352
result_1 = resourceclosing .test_function (service = service )
0 commit comments