Skip to content
This repository was archived by the owner on Jul 16, 2025. It is now read-only.

Commit 447e0ea

Browse files
committed
Add test for upload_coverage upload sender
1 parent 4085c81 commit 447e0ea

File tree

1 file changed

+41
-0
lines changed

1 file changed

+41
-0
lines changed

tests/helpers/test_upload_sender.py

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,22 @@ def mocked_legacy_upload_endpoint(mocked_responses):
8080
yield resp
8181

8282

83+
@pytest.fixture
84+
def mocked_upload_coverage_endpoint(mocked_responses):
85+
encoded_slug = encode_slug(named_upload_data["slug"])
86+
resp = responses.Response(
87+
responses.POST,
88+
f"https://ingest.codecov.io/upload/github/{encoded_slug}/upload-coverage",
89+
status=200,
90+
json={
91+
"raw_upload_location": "https://puturl.com",
92+
"url": "https://app.codecov.io/commit-url",
93+
},
94+
)
95+
mocked_responses.add(resp)
96+
yield resp
97+
98+
8399
@pytest.fixture
84100
def mocked_test_results_endpoint(mocked_responses):
85101
resp = responses.Response(
@@ -193,6 +209,31 @@ def test_upload_sender_post_called_with_right_parameters(
193209
post_req_made.headers.items() >= headers.items()
194210
) # test dict is a subset of the other
195211

212+
def test_upload_sender_post_called_with_right_parameters_and_upload_coverage(
213+
self, mocked_responses, mocked_upload_coverage_endpoint, mocked_storage_server
214+
):
215+
headers = {"Authorization": f"token {random_token}"}
216+
217+
sending_result = UploadSender().send_upload_data(
218+
upload_collection, random_sha, random_token, upload_coverage=True, **named_upload_data
219+
)
220+
assert sending_result.error is None
221+
assert sending_result.warnings == []
222+
223+
assert len(mocked_responses.calls) == 2
224+
225+
post_req_made = mocked_responses.calls[0].request
226+
encoded_slug = encode_slug(named_upload_data["slug"])
227+
response = json.loads(mocked_responses.calls[0].response.text)
228+
assert response.get("url") == "https://app.codecov.io/commit-url"
229+
assert (
230+
post_req_made.url
231+
== f"https://ingest.codecov.io/upload/github/{encoded_slug}/upload-coverage"
232+
)
233+
assert (
234+
post_req_made.headers.items() >= headers.items()
235+
) # test dict is a subset of the other
236+
196237
def test_upload_sender_post_called_with_right_parameters_test_results(
197238
self, mocked_responses, mocked_test_results_endpoint, mocked_storage_server
198239
):

0 commit comments

Comments
 (0)