9191}
9292
9393EXPECTED_REQUESTS_PARTITIONED = [
94+ {
95+ "json" : None ,
96+ "method" : "GET" ,
97+ "url" : f"{ DATASTORE_API_URL } /datastores/{ DATASTORE_RDN } " ,
98+ },
9499 {
95100 "json" : {"status" : "decrypting" },
96101 "method" : "PUT" ,
186191]
187192
188193EXPECTED_REQUESTS_IMPORT = [
194+ {
195+ "json" : None ,
196+ "method" : "GET" ,
197+ "url" : f"{ DATASTORE_API_URL } /datastores/{ DATASTORE_RDN } " ,
198+ },
189199 {
190200 "json" : {"status" : "decrypting" },
191201 "method" : "PUT" ,
247257 and "mock.pseudonym.service" not in request ["url" ]
248258]
249259JOB = SimpleNamespace (job_id = JOB_ID , datastore_rdn = DATASTORE_RDN )
260+ DATASTORE_RESPONSE = {
261+ "datastore_id" : 1 ,
262+ "rdn" : DATASTORE_RDN ,
263+ "name" : "" ,
264+ "description" : "" ,
265+ "bump_enabled" : True ,
266+ "directory" : DATASTORE_DIR ,
267+ }
250268
251269
252270def setup_function ():
@@ -273,6 +291,10 @@ def test_build_partitioned_dataset(requests_mock: RequestsMocker):
273291 requests_mock .put (
274292 f"{ DATASTORE_API_URL } /jobs/{ JOB_ID } " , json = {"message" : "OK" }
275293 )
294+ requests_mock .get (
295+ f"{ DATASTORE_API_URL } /datastores/{ DATASTORE_RDN } " ,
296+ json = DATASTORE_RESPONSE ,
297+ )
276298 requests_mock .post (
277299 f"{ PSEUDONYM_SERVICE_URL } ?unit_id_type=FNR&job_id={ JOB_ID } " ,
278300 json = PSEUDONYM_DICT ,
@@ -284,7 +306,11 @@ def test_build_partitioned_dataset(requests_mock: RequestsMocker):
284306 f"{ WORKING_DIR } /{ PARTITIONED_DATASET_NAME } __DRAFT.json"
285307 )
286308 requests_made = [
287- {"method" : req .method , "json" : req .json (), "url" : req .url }
309+ {
310+ "method" : req .method ,
311+ "json" : req .json () if req .method != "GET" else None ,
312+ "url" : req .url ,
313+ }
288314 for req in requests_mock .request_history
289315 ]
290316 assert len (requests_made ) == len (EXPECTED_REQUESTS_PARTITIONED )
@@ -298,6 +324,10 @@ def test_import(requests_mock: RequestsMocker):
298324 requests_mock .put (
299325 f"{ DATASTORE_API_URL } /jobs/{ JOB_ID } " , json = {"message" : "OK" }
300326 )
327+ requests_mock .get (
328+ f"{ DATASTORE_API_URL } /datastores/{ DATASTORE_RDN } " ,
329+ json = DATASTORE_RESPONSE ,
330+ )
301331 requests_mock .post (
302332 f"{ PSEUDONYM_SERVICE_URL } ?unit_id_type=FNR&job_id={ JOB_ID } " ,
303333 json = PSEUDONYM_DICT ,
@@ -315,7 +345,11 @@ def test_import(requests_mock: RequestsMocker):
315345 Path (INPUT_DIR_ARCHIVE ) / f"unpackaged/{ DATASET_NAME } .tar"
316346 ).exists ()
317347 requests_made = [
318- {"method" : req .method , "json" : req .json (), "url" : req .url }
348+ {
349+ "method" : req .method ,
350+ "json" : req .json () if req .method != "GET" else None ,
351+ "url" : req .url ,
352+ }
319353 for req in requests_mock .request_history
320354 ]
321355 assert len (requests_made ) == len (EXPECTED_REQUESTS_IMPORT )
@@ -329,6 +363,10 @@ def test_import_no_pseudonymization(requests_mock: RequestsMocker):
329363 requests_mock .put (
330364 f"{ DATASTORE_API_URL } /jobs/{ JOB_ID } " , json = {"message" : "OK" }
331365 )
366+ requests_mock .get (
367+ f"{ DATASTORE_API_URL } /datastores/{ DATASTORE_RDN } " ,
368+ json = DATASTORE_RESPONSE ,
369+ )
332370 run_worker (JOB , NO_PSEUDONYM_DATASET_NAME , Queue ()) # type: ignore
333371 assert not os .path .exists (f"{ INPUT_DIR } /{ NO_PSEUDONYM_DATASET_NAME } .tar" )
334372 assert not os .path .exists (f"{ INPUT_DIR } /{ NO_PSEUDONYM_DATASET_NAME } " )
@@ -343,7 +381,11 @@ def test_import_no_pseudonymization(requests_mock: RequestsMocker):
343381 Path (INPUT_DIR_ARCHIVE ) / f"unpackaged/{ NO_PSEUDONYM_DATASET_NAME } .tar"
344382 ).exists ()
345383 requests_made = [
346- {"method" : req .method , "json" : req .json (), "url" : req .url }
384+ {
385+ "method" : req .method ,
386+ "json" : req .json () if req .method != "GET" else None ,
387+ "url" : req .url ,
388+ }
347389 for req in requests_mock .request_history
348390 ]
349391 assert len (requests_made ) == len (EXPECTED_REQUESTS_IMPORT_NO_PSEUDONYM )
@@ -359,6 +401,10 @@ def test_import_no_pseudonymization_no_partitioning(
359401 requests_mock .put (
360402 f"{ DATASTORE_API_URL } /jobs/{ JOB_ID } " , json = {"message" : "OK" }
361403 )
404+ requests_mock .get (
405+ f"{ DATASTORE_API_URL } /datastores/{ DATASTORE_RDN } " ,
406+ json = DATASTORE_RESPONSE ,
407+ )
362408 run_worker (JOB , NO_PSEUDONYM_FIXED_DATASET_NAME , Queue ()) # type: ignore
363409 assert not os .path .exists (
364410 f"{ INPUT_DIR } /{ NO_PSEUDONYM_FIXED_DATASET_NAME } .tar"
@@ -384,7 +430,11 @@ def test_import_no_pseudonymization_no_partitioning(
384430 / f"unpackaged/{ NO_PSEUDONYM_FIXED_DATASET_NAME } .tar"
385431 ).exists ()
386432 requests_made = [
387- {"method" : req .method , "json" : req .json (), "url" : req .url }
433+ {
434+ "method" : req .method ,
435+ "json" : req .json () if req .method != "GET" else None ,
436+ "url" : req .url ,
437+ }
388438 for req in requests_mock .request_history
389439 ]
390440 assert len (requests_made ) == len (EXPECTED_REQUESTS_IMPORT_NO_PSEUDONYM )
0 commit comments