async def flat_repository() -> FlatRepository: try: scribbler = Mock() scribbler.add = CoroutineMock() repository = FlatRepository(scribbler) await repository.prepare(TESTING_DSN) await truncate_tables(repository._pool) # noqa yield repository finally: await truncate_tables(repository._pool) # noqa await repository.spare()