@@ -95,13 +95,14 @@ def mock_catalog_api_get_service_access_rights_response(mocker: MockerFixture):
9595async def test_user_role_access (
9696 client : TestClient ,
9797 user_project : ProjectDict ,
98+ logged_user : dict ,
9899 expected : HTTPStatus ,
99100 mock_catalog_api_get_service_access_rights_response ,
100101):
101102 assert client .app
102103
103104 project_id = user_project ["uuid" ]
104- for_gid = 3
105+ for_gid = logged_user [ "primary_gid" ]
105106
106107 expected_url = client .app .router ["get_project_services_access_for_gid" ].url_for (
107108 project_id = project_id
@@ -119,7 +120,10 @@ async def test_user_role_access(
119120
120121@pytest .mark .parametrize ("user_role" , [UserRole .USER ])
121122async def test_accessible_thanks_to_everyone_group_id (
122- client : TestClient , user_project : ProjectDict , mocker : MockerFixture
123+ client : TestClient ,
124+ user_project : ProjectDict ,
125+ mocker : MockerFixture ,
126+ logged_user : dict ,
123127):
124128 mocker .patch (
125129 "simcore_service_webserver.projects._nodes_handlers.catalog_client.get_service_access_rights" ,
@@ -152,7 +156,7 @@ async def test_accessible_thanks_to_everyone_group_id(
152156 assert client .app
153157
154158 project_id = user_project ["uuid" ]
155- for_gid = 3
159+ for_gid = logged_user [ "primary_gid" ]
156160
157161 expected_url = client .app .router ["get_project_services_access_for_gid" ].url_for (
158162 project_id = project_id
@@ -169,8 +173,13 @@ async def test_accessible_thanks_to_everyone_group_id(
169173
170174@pytest .mark .parametrize ("user_role" , [UserRole .USER ])
171175async def test_accessible_thanks_to_concrete_group_id (
172- client : TestClient , user_project : ProjectDict , mocker : MockerFixture
176+ client : TestClient ,
177+ user_project : ProjectDict ,
178+ mocker : MockerFixture ,
179+ logged_user : dict ,
173180):
181+ for_gid = logged_user ["primary_gid" ]
182+
174183 mocker .patch (
175184 "simcore_service_webserver.projects._nodes_handlers.catalog_client.get_service_access_rights" ,
176185 spec = True ,
@@ -179,7 +188,7 @@ async def test_accessible_thanks_to_concrete_group_id(
179188 service_key = "simcore/services/comp/itis/sleeper" ,
180189 service_version = "2.1.4" ,
181190 gids_with_access_rights = {
182- 3 : {"execute_access" : True },
191+ for_gid : {"execute_access" : True },
183192 5 : {"execute_access" : True },
184193 },
185194 ),
@@ -193,15 +202,14 @@ async def test_accessible_thanks_to_concrete_group_id(
193202 ServiceAccessRightsGet (
194203 service_key = "simcore/services/comp/itis/sleeper" ,
195204 service_version = "2.1.5" ,
196- gids_with_access_rights = {3 : {"execute_access" : True }},
205+ gids_with_access_rights = {for_gid : {"execute_access" : True }},
197206 ),
198207 ],
199208 )
200209
201210 assert client .app
202211
203212 project_id = user_project ["uuid" ]
204- for_gid = 3
205213
206214 expected_url = client .app .router ["get_project_services_access_for_gid" ].url_for (
207215 project_id = project_id
@@ -218,8 +226,13 @@ async def test_accessible_thanks_to_concrete_group_id(
218226
219227@pytest .mark .parametrize ("user_role" , [UserRole .USER ])
220228async def test_not_accessible_for_one_service (
221- client : TestClient , user_project : ProjectDict , mocker : MockerFixture
229+ client : TestClient ,
230+ user_project : ProjectDict ,
231+ mocker : MockerFixture ,
232+ logged_user : dict ,
222233):
234+ for_gid = logged_user ["primary_gid" ]
235+
223236 mocker .patch (
224237 "simcore_service_webserver.projects._nodes_handlers.catalog_client.get_service_access_rights" ,
225238 spec = True ,
@@ -236,22 +249,21 @@ async def test_not_accessible_for_one_service(
236249 service_key = "simcore/services/frontend/parameter/integer" ,
237250 service_version = "1.0.0" ,
238251 gids_with_access_rights = {
239- 3 : {"execute_access" : True },
252+ for_gid : {"execute_access" : True },
240253 2 : {"execute_access" : True },
241254 },
242255 ),
243256 ServiceAccessRightsGet (
244257 service_key = "simcore/services/comp/itis/sleeper" ,
245258 service_version = "2.1.5" ,
246- gids_with_access_rights = {3 : {"execute_access" : True }},
259+ gids_with_access_rights = {for_gid : {"execute_access" : True }},
247260 ),
248261 ],
249262 )
250263
251264 assert client .app
252265
253266 project_id = user_project ["uuid" ]
254- for_gid = 3
255267
256268 expected_url = client .app .router ["get_project_services_access_for_gid" ].url_for (
257269 project_id = project_id
@@ -274,7 +286,10 @@ async def test_not_accessible_for_one_service(
274286
275287@pytest .mark .parametrize ("user_role" , [UserRole .USER ])
276288async def test_not_accessible_for_more_services (
277- client : TestClient , user_project : ProjectDict , mocker : MockerFixture
289+ client : TestClient ,
290+ user_project : ProjectDict ,
291+ mocker : MockerFixture ,
292+ logged_user : dict ,
278293):
279294 mocker .patch (
280295 "simcore_service_webserver.projects._nodes_handlers.catalog_client.get_service_access_rights" ,
@@ -310,7 +325,7 @@ async def test_not_accessible_for_more_services(
310325 assert client .app
311326
312327 project_id = user_project ["uuid" ]
313- for_gid = 3
328+ for_gid = logged_user [ "primary_gid" ]
314329
315330 expected_url = client .app .router ["get_project_services_access_for_gid" ].url_for (
316331 project_id = project_id
@@ -335,34 +350,40 @@ async def test_not_accessible_for_more_services(
335350
336351@pytest .mark .parametrize ("user_role" , [UserRole .USER ])
337352async def test_not_accessible_for_service_because_of_execute_access_false (
338- client : TestClient , user_project : ProjectDict , mocker : MockerFixture
353+ client : TestClient ,
354+ user_project : ProjectDict ,
355+ mocker : MockerFixture ,
356+ logged_user : dict ,
339357):
358+ for_gid = logged_user ["primary_gid" ]
359+
340360 mocker .patch (
341361 "simcore_service_webserver.projects._nodes_handlers.catalog_client.get_service_access_rights" ,
342362 spec = True ,
343363 side_effect = [
344364 ServiceAccessRightsGet (
345365 service_key = "simcore/services/comp/itis/sleeper" ,
346366 service_version = "2.1.4" ,
347- gids_with_access_rights = {3 : {"execute_access" : False }}, # <-- FALSE
367+ gids_with_access_rights = {
368+ for_gid : {"execute_access" : False }
369+ }, # <-- FALSE
348370 ),
349371 ServiceAccessRightsGet (
350372 service_key = "simcore/services/frontend/parameter/integer" ,
351373 service_version = "1.0.0" ,
352- gids_with_access_rights = {3 : {"execute_access" : True }},
374+ gids_with_access_rights = {for_gid : {"execute_access" : True }},
353375 ),
354376 ServiceAccessRightsGet (
355377 service_key = "simcore/services/comp/itis/sleeper" ,
356378 service_version = "2.1.5" ,
357- gids_with_access_rights = {3 : {"execute_access" : True }},
379+ gids_with_access_rights = {for_gid : {"execute_access" : True }},
358380 ),
359381 ],
360382 )
361383
362384 assert client .app
363385
364386 project_id = user_project ["uuid" ]
365- for_gid = 3
366387
367388 expected_url = client .app .router ["get_project_services_access_for_gid" ].url_for (
368389 project_id = project_id
0 commit comments