Skip to content

Commit f3de962

Browse files
committed
dont retain http headers in cassettes
1 parent 10cbc11 commit f3de962

9 files changed

+52
-302
lines changed

tests/conftest.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,3 +36,25 @@ class _AlleleFixture(BaseModel):
3636
for allele in alleles.values():
3737
assert _AlleleFixture(**allele), f"Not a valid allele fixture: {allele}"
3838
return alleles
39+
40+
41+
def remove_request_headers(request):
42+
"""Remove all headers from VCR request before recording."""
43+
request.headers = {}
44+
return request
45+
46+
47+
def remove_response_headers(response):
48+
"""Remove all headers from VCR response before recording."""
49+
response["headers"] = {}
50+
return response
51+
52+
53+
@pytest.fixture(scope="module")
54+
def vcr_config():
55+
"""Configure VCR to filter out headers from cassettes."""
56+
return {
57+
"before_record_request": remove_request_headers,
58+
"before_record_response": remove_response_headers,
59+
"decode_compressed_response": True,
60+
}

tests/unit/anyvar/cassettes/test_http_client/test_put_objects.yaml

Lines changed: 14 additions & 154 deletions
Original file line numberDiff line numberDiff line change
@@ -6,33 +6,13 @@ interactions:
66
{"type": "SequenceReference", "refgetAccession": "SQ.IW78mgV5Cqf6M24hy52hPjyyo5tCCd86"},
77
"start": 36561661, "end": 36561663}, "state": {"type": "ReferenceLengthExpression",
88
"length": 0, "sequence": "", "repeatSubunitLength": 2}}'
9-
headers:
10-
Accept:
11-
- '*/*'
12-
Accept-Encoding:
13-
- gzip, deflate
14-
Connection:
15-
- keep-alive
16-
Content-Length:
17-
- '503'
18-
Content-Type:
19-
- application/json
20-
User-Agent:
21-
- python-requests/2.32.5
9+
headers: {}
2210
method: PUT
2311
uri: http://localhost:8000/vrs_variation
2412
response:
2513
body:
2614
string: '{"messages":[],"object":{"id":"ga4gh:VA.d6ru7RcuVO0-v3TtPFX5fZz-GLQDhMVb","type":"Allele","digest":"d6ru7RcuVO0-v3TtPFX5fZz-GLQDhMVb","location":{"id":"ga4gh:SL.JOFKL4nL5mRUlO_xLwQ8VOD1v7mxhs3I","type":"SequenceLocation","digest":"JOFKL4nL5mRUlO_xLwQ8VOD1v7mxhs3I","sequenceReference":{"type":"SequenceReference","refgetAccession":"SQ.IW78mgV5Cqf6M24hy52hPjyyo5tCCd86"},"start":36561661,"end":36561663},"state":{"type":"ReferenceLengthExpression","length":0,"sequence":"","repeatSubunitLength":2}},"object_id":"ga4gh:VA.d6ru7RcuVO0-v3TtPFX5fZz-GLQDhMVb"}'
27-
headers:
28-
content-length:
29-
- '554'
30-
content-type:
31-
- application/json
32-
date:
33-
- Mon, 08 Dec 2025 21:17:13 GMT
34-
server:
35-
- uvicorn
15+
headers: {}
3616
status:
3717
code: 200
3818
message: OK
@@ -43,33 +23,13 @@ interactions:
4323
{"type": "SequenceReference", "refgetAccession": "SQ.F-LrLMe1SRpfUZHkQmvkVKFEGaoDeHul"},
4424
"start": 140753335, "end": 140753336}, "state": {"type": "LiteralSequenceExpression",
4525
"sequence": "T"}}'
46-
headers:
47-
Accept:
48-
- '*/*'
49-
Accept-Encoding:
50-
- gzip, deflate
51-
Connection:
52-
- keep-alive
53-
Content-Length:
54-
- '467'
55-
Content-Type:
56-
- application/json
57-
User-Agent:
58-
- python-requests/2.32.5
26+
headers: {}
5927
method: PUT
6028
uri: http://localhost:8000/vrs_variation
6129
response:
6230
body:
6331
string: '{"messages":[],"object":{"id":"ga4gh:VA.Otc5ovrw906Ack087o1fhegB4jDRqCAe","type":"Allele","digest":"Otc5ovrw906Ack087o1fhegB4jDRqCAe","location":{"id":"ga4gh:SL.nhul5x5P_fKjGEpY9PEkMIekJfZaKom2","type":"SequenceLocation","digest":"nhul5x5P_fKjGEpY9PEkMIekJfZaKom2","sequenceReference":{"type":"SequenceReference","refgetAccession":"SQ.F-LrLMe1SRpfUZHkQmvkVKFEGaoDeHul"},"start":140753335,"end":140753336},"state":{"type":"LiteralSequenceExpression","sequence":"T"}},"object_id":"ga4gh:VA.Otc5ovrw906Ack087o1fhegB4jDRqCAe"}'
64-
headers:
65-
content-length:
66-
- '522'
67-
content-type:
68-
- application/json
69-
date:
70-
- Mon, 08 Dec 2025 21:17:13 GMT
71-
server:
72-
- uvicorn
32+
headers: {}
7333
status:
7434
code: 200
7535
message: OK
@@ -80,33 +40,13 @@ interactions:
8040
{"type": "SequenceReference", "refgetAccession": "SQ.8_liLu1aycC0tPQPFmUaGXJLDs5SbPZ5"},
8141
"start": 2781703, "end": 2781704}, "state": {"type": "LiteralSequenceExpression",
8242
"sequence": "G"}}'
83-
headers:
84-
Accept:
85-
- '*/*'
86-
Accept-Encoding:
87-
- gzip, deflate
88-
Connection:
89-
- keep-alive
90-
Content-Length:
91-
- '463'
92-
Content-Type:
93-
- application/json
94-
User-Agent:
95-
- python-requests/2.32.5
43+
headers: {}
9644
method: PUT
9745
uri: http://localhost:8000/vrs_variation
9846
response:
9947
body:
10048
string: '{"messages":[],"object":{"id":"ga4gh:VA.ruQCmfXJrEylHmOQF-1PG6bLwQesDU2g","type":"Allele","digest":"ruQCmfXJrEylHmOQF-1PG6bLwQesDU2g","location":{"id":"ga4gh:SL.JqeJ3V-75edWj03xbzw1gtSw3qPQVV2D","type":"SequenceLocation","digest":"JqeJ3V-75edWj03xbzw1gtSw3qPQVV2D","sequenceReference":{"type":"SequenceReference","refgetAccession":"SQ.8_liLu1aycC0tPQPFmUaGXJLDs5SbPZ5"},"start":2781703,"end":2781704},"state":{"type":"LiteralSequenceExpression","sequence":"G"}},"object_id":"ga4gh:VA.ruQCmfXJrEylHmOQF-1PG6bLwQesDU2g"}'
101-
headers:
102-
content-length:
103-
- '518'
104-
content-type:
105-
- application/json
106-
date:
107-
- Mon, 08 Dec 2025 21:17:13 GMT
108-
server:
109-
- uvicorn
49+
headers: {}
11050
status:
11151
code: 200
11252
message: OK
@@ -117,33 +57,13 @@ interactions:
11757
{"type": "SequenceReference", "refgetAccession": "SQ.8_liLu1aycC0tPQPFmUaGXJLDs5SbPZ5"},
11858
"start": 2781760, "end": 2781762}, "state": {"type": "LiteralSequenceExpression",
11959
"sequence": "CA"}}'
120-
headers:
121-
Accept:
122-
- '*/*'
123-
Accept-Encoding:
124-
- gzip, deflate
125-
Connection:
126-
- keep-alive
127-
Content-Length:
128-
- '464'
129-
Content-Type:
130-
- application/json
131-
User-Agent:
132-
- python-requests/2.32.5
60+
headers: {}
13361
method: PUT
13462
uri: http://localhost:8000/vrs_variation
13563
response:
13664
body:
13765
string: '{"messages":[],"object":{"id":"ga4gh:VA.IM4QyU9D2kTJzeftUBBD4Vcd1peq0dn1","type":"Allele","digest":"IM4QyU9D2kTJzeftUBBD4Vcd1peq0dn1","location":{"id":"ga4gh:SL.sWfeTXwGUkfIuYRAkiFGPjkSk_mIDuXG","type":"SequenceLocation","digest":"sWfeTXwGUkfIuYRAkiFGPjkSk_mIDuXG","sequenceReference":{"type":"SequenceReference","refgetAccession":"SQ.8_liLu1aycC0tPQPFmUaGXJLDs5SbPZ5"},"start":2781760,"end":2781762},"state":{"type":"LiteralSequenceExpression","sequence":"CA"}},"object_id":"ga4gh:VA.IM4QyU9D2kTJzeftUBBD4Vcd1peq0dn1"}'
138-
headers:
139-
content-length:
140-
- '519'
141-
content-type:
142-
- application/json
143-
date:
144-
- Mon, 08 Dec 2025 21:17:13 GMT
145-
server:
146-
- uvicorn
66+
headers: {}
14767
status:
14868
code: 200
14969
message: OK
@@ -154,33 +74,13 @@ interactions:
15474
{"type": "SequenceReference", "refgetAccession": "SQ.8_liLu1aycC0tPQPFmUaGXJLDs5SbPZ5"},
15575
"start": 2781760, "end": 2781761}, "state": {"type": "LiteralSequenceExpression",
15676
"sequence": "C"}}'
157-
headers:
158-
Accept:
159-
- '*/*'
160-
Accept-Encoding:
161-
- gzip, deflate
162-
Connection:
163-
- keep-alive
164-
Content-Length:
165-
- '463'
166-
Content-Type:
167-
- application/json
168-
User-Agent:
169-
- python-requests/2.32.5
77+
headers: {}
17078
method: PUT
17179
uri: http://localhost:8000/vrs_variation
17280
response:
17381
body:
17482
string: '{"messages":[],"object":{"id":"ga4gh:VA.xbX035HgURWIUAjn6x3cS26jafP8Q_bk","type":"Allele","digest":"xbX035HgURWIUAjn6x3cS26jafP8Q_bk","location":{"id":"ga4gh:SL.sYiBcbbgF-1CANNCTfQ6zwZOU0iHhymR","type":"SequenceLocation","digest":"sYiBcbbgF-1CANNCTfQ6zwZOU0iHhymR","sequenceReference":{"type":"SequenceReference","refgetAccession":"SQ.8_liLu1aycC0tPQPFmUaGXJLDs5SbPZ5"},"start":2781760,"end":2781761},"state":{"type":"LiteralSequenceExpression","sequence":"C"}},"object_id":"ga4gh:VA.xbX035HgURWIUAjn6x3cS26jafP8Q_bk"}'
175-
headers:
176-
content-length:
177-
- '518'
178-
content-type:
179-
- application/json
180-
date:
181-
- Mon, 08 Dec 2025 21:17:13 GMT
182-
server:
183-
- uvicorn
83+
headers: {}
18484
status:
18585
code: 200
18686
message: OK
@@ -191,33 +91,13 @@ interactions:
19191
{"type": "SequenceReference", "refgetAccession": "SQ.8_liLu1aycC0tPQPFmUaGXJLDs5SbPZ5"},
19292
"start": 2781760, "end": 2781761}, "state": {"type": "LiteralSequenceExpression",
19393
"sequence": "A"}}'
194-
headers:
195-
Accept:
196-
- '*/*'
197-
Accept-Encoding:
198-
- gzip, deflate
199-
Connection:
200-
- keep-alive
201-
Content-Length:
202-
- '463'
203-
Content-Type:
204-
- application/json
205-
User-Agent:
206-
- python-requests/2.32.5
94+
headers: {}
20795
method: PUT
20896
uri: http://localhost:8000/vrs_variation
20997
response:
21098
body:
21199
string: '{"messages":[],"object":{"id":"ga4gh:VA.9VDxL0stMBOZwcTKw3yb3UoWQkpaI9OD","type":"Allele","digest":"9VDxL0stMBOZwcTKw3yb3UoWQkpaI9OD","location":{"id":"ga4gh:SL.sYiBcbbgF-1CANNCTfQ6zwZOU0iHhymR","type":"SequenceLocation","digest":"sYiBcbbgF-1CANNCTfQ6zwZOU0iHhymR","sequenceReference":{"type":"SequenceReference","refgetAccession":"SQ.8_liLu1aycC0tPQPFmUaGXJLDs5SbPZ5"},"start":2781760,"end":2781761},"state":{"type":"LiteralSequenceExpression","sequence":"A"}},"object_id":"ga4gh:VA.9VDxL0stMBOZwcTKw3yb3UoWQkpaI9OD"}'
212-
headers:
213-
content-length:
214-
- '518'
215-
content-type:
216-
- application/json
217-
date:
218-
- Mon, 08 Dec 2025 21:17:13 GMT
219-
server:
220-
- uvicorn
100+
headers: {}
221101
status:
222102
code: 200
223103
message: OK
@@ -229,33 +109,13 @@ interactions:
229109
"start": 2781761, "end": 2781785}, "state": {"type": "ReferenceLengthExpression",
230110
"length": 23, "sequence": "AAAAAAAAAAAAAAAAAAAAAAA", "repeatSubunitLength":
231111
1}}'
232-
headers:
233-
Accept:
234-
- '*/*'
235-
Accept-Encoding:
236-
- gzip, deflate
237-
Connection:
238-
- keep-alive
239-
Content-Length:
240-
- '525'
241-
Content-Type:
242-
- application/json
243-
User-Agent:
244-
- python-requests/2.32.5
112+
headers: {}
245113
method: PUT
246114
uri: http://localhost:8000/vrs_variation
247115
response:
248116
body:
249117
string: '{"messages":[],"object":{"id":"ga4gh:VA.yi7A2l0uIUMaInQaJnHU_B2Cf_OuZRJg","type":"Allele","digest":"yi7A2l0uIUMaInQaJnHU_B2Cf_OuZRJg","location":{"id":"ga4gh:SL.JsFGLKlUDocinf7oWTXAvVT2WOso7R9u","type":"SequenceLocation","digest":"JsFGLKlUDocinf7oWTXAvVT2WOso7R9u","sequenceReference":{"type":"SequenceReference","refgetAccession":"SQ.8_liLu1aycC0tPQPFmUaGXJLDs5SbPZ5"},"start":2781761,"end":2781785},"state":{"type":"ReferenceLengthExpression","length":23,"sequence":"AAAAAAAAAAAAAAAAAAAAAAA","repeatSubunitLength":1}},"object_id":"ga4gh:VA.yi7A2l0uIUMaInQaJnHU_B2Cf_OuZRJg"}'
250-
headers:
251-
content-length:
252-
- '576'
253-
content-type:
254-
- application/json
255-
date:
256-
- Mon, 08 Dec 2025 21:17:13 GMT
257-
server:
258-
- uvicorn
118+
headers: {}
259119
status:
260120
code: 200
261121
message: OK

tests/unit/anyvar/cassettes/test_http_client/test_search_by_interval.yaml

Lines changed: 4 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,57 +1,25 @@
11
interactions:
22
- request:
33
body: null
4-
headers:
5-
Accept:
6-
- '*/*'
7-
Accept-Encoding:
8-
- gzip, deflate
9-
Connection:
10-
- keep-alive
11-
User-Agent:
12-
- python-requests/2.32.5
4+
headers: {}
135
method: GET
146
uri: http://localhost:8000/search?accession=ga4gh:SQ.8_liLu1aycC0tPQPFmUaGXJLDs5SbPZ5&start=2781760&end=2781760
157
response:
168
body:
179
string: '{"variations":[{"id":"ga4gh:VA.IM4QyU9D2kTJzeftUBBD4Vcd1peq0dn1","type":"Allele","digest":"IM4QyU9D2kTJzeftUBBD4Vcd1peq0dn1","location":{"id":"ga4gh:SL.sWfeTXwGUkfIuYRAkiFGPjkSk_mIDuXG","type":"SequenceLocation","digest":"sWfeTXwGUkfIuYRAkiFGPjkSk_mIDuXG","sequenceReference":{"type":"SequenceReference","refgetAccession":"SQ.8_liLu1aycC0tPQPFmUaGXJLDs5SbPZ5"},"start":2781760,"end":2781762},"state":{"type":"LiteralSequenceExpression","sequence":"CA"}},{"id":"ga4gh:VA.9VDxL0stMBOZwcTKw3yb3UoWQkpaI9OD","type":"Allele","digest":"9VDxL0stMBOZwcTKw3yb3UoWQkpaI9OD","location":{"id":"ga4gh:SL.sYiBcbbgF-1CANNCTfQ6zwZOU0iHhymR","type":"SequenceLocation","digest":"sYiBcbbgF-1CANNCTfQ6zwZOU0iHhymR","sequenceReference":{"type":"SequenceReference","refgetAccession":"SQ.8_liLu1aycC0tPQPFmUaGXJLDs5SbPZ5"},"start":2781760,"end":2781761},"state":{"type":"LiteralSequenceExpression","sequence":"A"}},{"id":"ga4gh:VA.xbX035HgURWIUAjn6x3cS26jafP8Q_bk","type":"Allele","digest":"xbX035HgURWIUAjn6x3cS26jafP8Q_bk","location":{"id":"ga4gh:SL.sYiBcbbgF-1CANNCTfQ6zwZOU0iHhymR","type":"SequenceLocation","digest":"sYiBcbbgF-1CANNCTfQ6zwZOU0iHhymR","sequenceReference":{"type":"SequenceReference","refgetAccession":"SQ.8_liLu1aycC0tPQPFmUaGXJLDs5SbPZ5"},"start":2781760,"end":2781761},"state":{"type":"LiteralSequenceExpression","sequence":"C"}}]}'
18-
headers:
19-
content-length:
20-
- '1331'
21-
content-type:
22-
- application/json
23-
date:
24-
- Mon, 08 Dec 2025 21:17:13 GMT
25-
server:
26-
- uvicorn
10+
headers: {}
2711
status:
2812
code: 200
2913
message: OK
3014
- request:
3115
body: null
32-
headers:
33-
Accept:
34-
- '*/*'
35-
Accept-Encoding:
36-
- gzip, deflate
37-
Connection:
38-
- keep-alive
39-
User-Agent:
40-
- python-requests/2.32.5
16+
headers: {}
4117
method: GET
4218
uri: http://localhost:8000/search?accession=ga4gh:SQ.8_liLu1aycC0tPQPFmUaGXJLDs5SbPZ5&start=2781760&end=2781768
4319
response:
4420
body:
4521
string: '{"variations":[{"id":"ga4gh:VA.IM4QyU9D2kTJzeftUBBD4Vcd1peq0dn1","type":"Allele","digest":"IM4QyU9D2kTJzeftUBBD4Vcd1peq0dn1","location":{"id":"ga4gh:SL.sWfeTXwGUkfIuYRAkiFGPjkSk_mIDuXG","type":"SequenceLocation","digest":"sWfeTXwGUkfIuYRAkiFGPjkSk_mIDuXG","sequenceReference":{"type":"SequenceReference","refgetAccession":"SQ.8_liLu1aycC0tPQPFmUaGXJLDs5SbPZ5"},"start":2781760,"end":2781762},"state":{"type":"LiteralSequenceExpression","sequence":"CA"}},{"id":"ga4gh:VA.9VDxL0stMBOZwcTKw3yb3UoWQkpaI9OD","type":"Allele","digest":"9VDxL0stMBOZwcTKw3yb3UoWQkpaI9OD","location":{"id":"ga4gh:SL.sYiBcbbgF-1CANNCTfQ6zwZOU0iHhymR","type":"SequenceLocation","digest":"sYiBcbbgF-1CANNCTfQ6zwZOU0iHhymR","sequenceReference":{"type":"SequenceReference","refgetAccession":"SQ.8_liLu1aycC0tPQPFmUaGXJLDs5SbPZ5"},"start":2781760,"end":2781761},"state":{"type":"LiteralSequenceExpression","sequence":"A"}},{"id":"ga4gh:VA.xbX035HgURWIUAjn6x3cS26jafP8Q_bk","type":"Allele","digest":"xbX035HgURWIUAjn6x3cS26jafP8Q_bk","location":{"id":"ga4gh:SL.sYiBcbbgF-1CANNCTfQ6zwZOU0iHhymR","type":"SequenceLocation","digest":"sYiBcbbgF-1CANNCTfQ6zwZOU0iHhymR","sequenceReference":{"type":"SequenceReference","refgetAccession":"SQ.8_liLu1aycC0tPQPFmUaGXJLDs5SbPZ5"},"start":2781760,"end":2781761},"state":{"type":"LiteralSequenceExpression","sequence":"C"}},{"id":"ga4gh:VA.yi7A2l0uIUMaInQaJnHU_B2Cf_OuZRJg","type":"Allele","digest":"yi7A2l0uIUMaInQaJnHU_B2Cf_OuZRJg","location":{"id":"ga4gh:SL.JsFGLKlUDocinf7oWTXAvVT2WOso7R9u","type":"SequenceLocation","digest":"JsFGLKlUDocinf7oWTXAvVT2WOso7R9u","sequenceReference":{"type":"SequenceReference","refgetAccession":"SQ.8_liLu1aycC0tPQPFmUaGXJLDs5SbPZ5"},"start":2781761,"end":2781785},"state":{"type":"ReferenceLengthExpression","length":23,"sequence":"AAAAAAAAAAAAAAAAAAAAAAA","repeatSubunitLength":1}}]}'
46-
headers:
47-
content-length:
48-
- '1827'
49-
content-type:
50-
- application/json
51-
date:
52-
- Mon, 08 Dec 2025 21:17:13 GMT
53-
server:
54-
- uvicorn
22+
headers: {}
5523
status:
5624
code: 200
5725
message: OK

tests/unit/anyvar/cassettes/test_http_client/test_search_by_interval_not_found.yaml

Lines changed: 2 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,13 @@
11
interactions:
22
- request:
33
body: null
4-
headers:
5-
Accept:
6-
- '*/*'
7-
Accept-Encoding:
8-
- gzip, deflate
9-
Connection:
10-
- keep-alive
11-
User-Agent:
12-
- python-requests/2.32.5
4+
headers: {}
135
method: GET
146
uri: http://localhost:8000/search?accession=ga4gh:SQ.8_liLu1aycC0tPQPFmUaGXJLDs5SbPZ5&start=1&end=100
157
response:
168
body:
179
string: '{"variations":[]}'
18-
headers:
19-
content-length:
20-
- '17'
21-
content-type:
22-
- application/json
23-
date:
24-
- Mon, 08 Dec 2025 21:17:13 GMT
25-
server:
26-
- uvicorn
10+
headers: {}
2711
status:
2812
code: 200
2913
message: OK

0 commit comments

Comments
 (0)