У меня есть следующая реализация для запроса на получение
def function():
async with aiohttp.ClientSession() as session:
try:
async with session.get(
url="http://test-api/v1/radiation",
allow_redirects=False,
params={
"alpha": "a",
"beta": "b",
},
timeout=5
) as response:
return await self.json_response(
results=await response.json(),
status=response.status
)
except ClientError as e:
return await self.json_response(
results={"100": "error"},
status=408
)
Я смоделировал aiohttp.ClientSession.get
следующим образом
def r_val():
sleep(10)
return CoroutineMock(side_effect=[{}])
with asynctest.patch("aiohttp.ClientSession.get") as mocked_session:
mock = mocked_session.return_value.__aenter__.return_value
mock.json = r_val()
mock.status = 200
Как смоделировать сценарий тайм-аута здесь?