Mocking de dépendances avec pytest
Bonjour,
J'ai un code existant qui appelle un module que je ne peut pas modifier.
Exemple je ne peux pas modifier module_non_modifiable.py:
Code:
1 2 3 4
|
import a.b.module_non_modifiable
module_non_modifiable.fonction() |
Je dois "bouchonner" la fonction "fonction().
Je cherche un mécanisme, qui me permette, si pytest est lancé de ne plus importer a.b.module_non_modifiable mais avoir un code "bouchon" (un mock).
L'idée étant d'éviter de faire:
Code:
1 2 3 4 5 6 7 8
|
C_PYTEST_ACTIF = True
if C_PYTEST_ACTIF:
import test.module_non_modifiable
else:
import a.b.module_non_modifiable |
Mes recherches s'orientent vers monkepatch : https://docs.pytest.org/en/7.1.x/how...nkeypatch.html
Suis-je sur la bonne voie ?
Cordialement