@@ -2640,13 +2640,17 @@ def test_bad_hashes(client, user, typ, h, combined_default_and_single_table_sett
26402640 assert "does not match" in json_resp ["error" ]
26412641
26422642
2643- def test_dos_get (client , user , combined_default_and_single_table_settings ):
2643+ def test_dos_get (client , user , combined_default_and_single_table_settings , is_rbac_configured ):
26442644 data = get_doc (has_urls_metadata = True , has_metadata = True , has_baseid = True )
26452645
26462646 res_1 = client .post ("/index/" , json = data , headers = user )
26472647 assert res_1 .status_code == 200
26482648 rec_1 = res_1 .json
2649- res_2 = client .get ("/ga4gh/dos/v1/dataobjects/" + rec_1 ["did" ])
2649+ if is_rbac_configured :
2650+ res_2 = client .get ("/ga4gh/dos/v1/dataobjects/" + rec_1 ["did" ])
2651+ assert res_2 .status_code == 403 # No authz in request
2652+
2653+ res_2 = client .get ("/ga4gh/dos/v1/dataobjects/" + rec_1 ["did" ], headers = user )
26502654 assert res_2 .status_code == 200
26512655 rec_2 = res_2 .json
26522656 assert rec_2 ["data_object" ]["id" ] == rec_1 ["did" ]
@@ -2662,8 +2666,13 @@ def test_dos_get(client, user, combined_default_and_single_table_settings):
26622666 rec_2 ["data_object" ]["urls" ][0 ]["system_metadata" ]["project_id" ]
26632667 == "bpa-UChicago"
26642668 )
2665- res_3 = client .get ("/ga4gh/dos/v1/dataobjects/" + rec_1 ["baseid" ])
2669+ if is_rbac_configured :
2670+ res_3 = client .get ("/ga4gh/dos/v1/dataobjects/" + rec_1 ["baseid" ])
2671+ assert res_3 .status_code == 403
2672+
2673+ res_3 = client .get ("/ga4gh/dos/v1/dataobjects/" + rec_1 ["baseid" ], headers = user )
26662674 assert res_3 .status_code == 200
2675+
26672676 rec_3 = res_3 .json
26682677 assert rec_3 ["data_object" ]["id" ] == rec_1 ["did" ]
26692678
@@ -2675,15 +2684,20 @@ def test_get_dos_record_error(client, user, combined_default_and_single_table_se
26752684 assert res .status_code == 404
26762685
26772686
2678- def test_dos_list (client , user , combined_default_and_single_table_settings ):
2687+ def test_dos_list (client , user , combined_default_and_single_table_settings , is_rbac_configured ):
26792688 data = get_doc (has_urls_metadata = True , has_metadata = True , has_baseid = True )
26802689
26812690 res_1 = client .post ("/index/" , json = data , headers = user )
26822691 assert res_1 .status_code == 200
26832692 rec_1 = res_1 .json
26842693
2685- res_2 = client .get ("/ga4gh/dos/v1/dataobjects?page_size=100" )
2694+ if is_rbac_configured :
2695+ res_2 = client .get ("/ga4gh/dos/v1/dataobjects?page_size=100" )
2696+ assert res_2 .status_code == 403
2697+
2698+ res_2 = client .get ("/ga4gh/dos/v1/dataobjects?page_size=100" , headers = user )
26862699 assert res_2 .status_code == 200
2700+
26872701 rec_2 = res_2 .json
26882702 assert len (rec_2 ["data_objects" ]) == 1
26892703 assert rec_2 ["data_objects" ][0 ]["id" ] == rec_1 ["did" ]
0 commit comments