Вопрос следующий: есть 2 класса A и B. Класс A зависит от класса B. Класс B в свою очередь зависит от сложных ресурсов (коннекта к БД) и инициализировать его по-настоящему не предоставляется возможным в юниттестах.
Каким способом, можно пропатчить класс B так, чтобы фактически он был пустышкой, но успешно прокидывался в класс A?
class B:
def __init__(self, db_connection):
self.__db_connection = db_connection
class A:
def __init__(self, b: B):
self.__b = b
def do_something() -> None: ...
@pytest.fixture(scope="module")
def mock_b() -> B:
"""Вот тут необходимо что-то сделать, чтобы можно было вернуть класс B пустышку"""