@@ -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
84100def 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