| Total Complexity | 4 |
| Total Lines | 71 |
| Duplicated Lines | 0 % |
| Changes | 0 | ||
| 1 | from injectify.api import inject |
||
| 2 | from injectify.injectors import ( |
||
| 3 | HeadInjector, |
||
| 4 | TailInjector, |
||
| 5 | FieldInjector, |
||
| 6 | ) |
||
| 7 | |||
| 8 | |||
| 9 | class cls11: |
||
| 10 | x = 10 |
||
| 11 | |||
| 12 | |||
| 13 | def test_head_injector_correctly_injects_class(): |
||
| 14 | @inject(target=cls11, injector=HeadInjector()) |
||
| 15 | def handler(): |
||
| 16 | x = 11 |
||
| 17 | |||
| 18 | assert cls11.x == 10 |
||
| 19 | assert cls11().x == 10 |
||
| 20 | |||
| 21 | |||
| 22 | class cls24: |
||
| 23 | x = 10 |
||
| 24 | |||
| 25 | |||
| 26 | def test_tail_injector_correctly_injects_class(): |
||
| 27 | @inject(target=cls24, injector=TailInjector()) |
||
| 28 | def handler(): |
||
| 29 | x = 11 |
||
| 30 | |||
| 31 | assert cls24.x == 11 |
||
| 32 | assert cls24().x == 11 |
||
| 33 | |||
| 34 | |||
| 35 | class cls37: |
||
| 36 | x = 10 |
||
| 37 | y = 20 |
||
| 38 | z = 30 |
||
| 39 | |||
| 40 | |||
| 41 | def test_field_injector_correctly_injects_class_before_field(): |
||
| 42 | @inject(target=cls37, injector=FieldInjector('y', insert='before')) |
||
| 43 | def handler(): |
||
| 44 | x = 15 |
||
| 45 | |||
| 46 | assert cls37.x == 15 |
||
| 47 | assert cls37().x == 15 |
||
| 48 | assert cls37.y == 20 |
||
| 49 | assert cls37().y == 20 |
||
| 50 | assert cls37.z == 30 |
||
| 51 | assert cls37().z == 30 |
||
| 52 | |||
| 53 | |||
| 54 | class cls54: |
||
| 55 | x = 10 |
||
| 56 | y = 20 |
||
| 57 | z = 30 |
||
| 58 | |||
| 59 | |||
| 60 | def test_field_injector_correctly_injects_class_after_field(): |
||
| 61 | @inject(target=cls54, injector=FieldInjector('y', insert='after')) |
||
| 62 | def handler(): |
||
| 63 | y = 25 |
||
| 64 | |||
| 65 | assert cls37.x == 10 |
||
| 66 | assert cls37().x == 10 |
||
| 67 | assert cls37.y == 25 |
||
| 68 | assert cls37().y == 25 |
||
| 69 | assert cls37.z == 30 |
||
| 70 | assert cls37().z == 30 |
||
| 71 |