I have a pytest fixture that imports a specific module. This is needed as importing the module is very expensive, so we don't want to do it on import-time (i.e. during pytest test collection). This results in code like this:
@pytest.fixture
def my_module_fix():
import my_module
yield my_module
def test_something(my_module_fix):
assert my_module_fix.my_func() = 5
I am using PyCharm and would like to have type-checking and autocompletion in my tests. To achieve that, I would somehow have to annotate the my_module_fix
parameter as having the type of the my_module
module.
I have no idea how to achieve that. All I found is that I can annotate my_module_fix
as being of type types.ModuleType
, but that is not enough: It is not any module, it is always my_module
.
from Annotate a function argument as being a specific module
No comments:
Post a Comment