1
2async def test_select(service_client):
3 async with service_client.capture_logs(log_level='INFO') as capture:
4 response = await service_client.get('/logcapture')
5 assert response.status == 200
6
7 records = capture.select(
8 text='Message to capture',
9 link=response.headers['x-yarequestid'],
10 )
11 assert len(records) == 1, capture.select()
12
13
14
15async def test_subscribe(service_client, mockserver):
16 async with service_client.capture_logs() as capture:
17
18 @capture.subscribe(
19 text='Message to capture',
20 trace_id=mockserver.trace_id,
21 )
22 def log_event(link, **other):
23 pass
24
25 response = await service_client.get(
26 '/logcapture',
27 headers={'x-yatraceid': mockserver.trace_id},
28 )
29 assert response.status == 200
30
31 call = await log_event.wait_call()
32 assert call['link'] == response.headers['x-yarequestid']