mirror of
				https://github.com/ets-labs/python-dependency-injector.git
				synced 2025-10-31 16:07:51 +03:00 
			
		
		
		
	fixup! Add support for Fast Stream Depends
This commit is contained in:
		
							parent
							
								
									be7078387c
								
							
						
					
					
						commit
						aaf9878266
					
				|  | @ -1,10 +1,19 @@ | |||
| import sys | ||||
| 
 | ||||
| from dependency_injector import containers, providers | ||||
| from dependency_injector.wiring import inject, Provide | ||||
| from fast_depends import Depends | ||||
| from wiringfastdepends.sample import CoefficientService, Container | ||||
| 
 | ||||
| 
 | ||||
| class CoefficientService: | ||||
|     @staticmethod | ||||
|     def get_coefficient() -> float: | ||||
|         return 1.2 | ||||
| 
 | ||||
| 
 | ||||
| class Container(containers.DeclarativeContainer): | ||||
|     service = providers.Factory(CoefficientService) | ||||
| 
 | ||||
| 
 | ||||
| @inject | ||||
| def apply_coefficient( | ||||
|  | @ -15,8 +24,4 @@ def apply_coefficient( | |||
| 
 | ||||
| 
 | ||||
| container = Container() | ||||
| container.wire(modules=[sys.modules[__name__]]) | ||||
| 
 | ||||
| 
 | ||||
| def test_wire_positive() -> None: | ||||
|     assert apply_coefficient(100) == 120.0 | ||||
| container.wire(modules=[sys.modules[__name__]]) | ||||
|  | @ -1,31 +1,7 @@ | |||
| 
 | ||||
| import sys | ||||
| 
 | ||||
| from dependency_injector import containers, providers | ||||
| from dependency_injector.wiring import inject, Provide | ||||
| from fast_depends import Depends | ||||
| 
 | ||||
| from wiringfastdepends import sample | ||||
| 
 | ||||
| class CoefficientService: | ||||
|     @staticmethod | ||||
|     def get_coefficient() -> float: | ||||
|         return 1.2 | ||||
| 
 | ||||
| 
 | ||||
| class Container(containers.DeclarativeContainer): | ||||
|     service = providers.Factory(CoefficientService) | ||||
| 
 | ||||
| 
 | ||||
| @inject | ||||
| def apply_coefficient( | ||||
|     a: int, | ||||
|     coefficient_provider: CoefficientService = Depends(Provide[Container.service]), | ||||
| ) -> float: | ||||
|     return a * coefficient_provider.get_coefficient() | ||||
| 
 | ||||
| 
 | ||||
| container = Container() | ||||
| container.wire(modules=[sys.modules[__name__]]) | ||||
| 
 | ||||
| def test_apply_coefficient(): | ||||
|     assert apply_coefficient(100) == 120.0 | ||||
|     assert sample.apply_coefficient(100) == 120.0 | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user