[Python] dependency injection con i decoratori
Federico Fissore
federico a fsfe.org
Sab 3 Ott 2020 20:07:00 CEST
Federico Cerchiari wrote on 03/10/20 09:33:
>
> from functools import partial
> from eventuale_modulo_config import landscape
> from mocks import collaboratori as collaboratori_mock
> from validators import collaboratori
>
> def decoratore_generic(func, collaboratori):
> def inner(*args, **kwargs):
> ...
> return inner
>
> if landscape == "TEST":
>
> decoratore = partial(decoratore_generic, collaboratori_mock)
>
> else:
> decoratore = partial(decoratore_generic, collaboratori)
>
>
>
> @decoratore()
> def func1():
> pass
>
>
Ah questa è carina: e potrei mettere l'import dentro l'IF così posso
evitare di portare i mock in produzione
grazie: mi pare una buona soluzione
federico
Maggiori informazioni sulla lista
Python