|
8 | 8 | class GroupNameUpdate(BaseIntegrationTest):
|
9 | 9 |
|
10 | 10 | @parameterized.expand([
|
11 |
| - # TEST_NAME EXEC_USER TARGET_GRP RESP |
12 |
| - ("foreign_as_admin" , "admin" , "group_x_id" , 204), |
13 |
| - ("own_as_group_admin" , "group_x_admin" , "group_x_id" , 403), |
14 |
| - ("foreign_as_group_admin" , "group_x_admin" , "group_y_id" , 403), |
15 |
| - ("invalid_group" , "admin" , "duckburgh" , 403), |
16 |
| - ("own_as_regular_user" , "user_a" , "group_x_id" , 403), |
17 |
| - ("foreign_as_regular_user" , "user_a" , "group_y_id" , 403) |
| 11 | + # TEST_NAME EXEC_USER TARGET_GRP NEW_GROUPNAME RESP |
| 12 | + ("foreign_as_admin" , "admin" , "group_x_id" , "fancy_group" , 204), |
| 13 | + ("own_as_group_admin" , "group_x_admin" , "group_x_id" , "fancy_group" , 403), |
| 14 | + ("foreign_as_group_admin" , "group_x_admin" , "group_y_id" , "fancy_group" , 403), |
| 15 | + ("invalid_group" , "admin" , "duckburgh" , "fancy_group" , 403), |
| 16 | + ("own_as_regular_user" , "user_a" , "group_x_id" , "fancy_group" , 403), |
| 17 | + ("foreign_as_regular_user" , "user_a" , "group_y_id" , "fancy_group" , 403), |
| 18 | + ("admin_use_existing_groupname", "admin" , "group_x_id" , "group_y" , 400), |
| 19 | + ("unauthorized" , "" , "group_x_id" , "fancy_group" , 401), |
| 20 | + ("admin_expired_token" , "admin:expired" , "group_x_id" , "fancy_group" , 401), |
18 | 21 | ])
|
19 |
| - def test_group_name_update(self, _, executing_user:str, target_group_id:str, expected_response:int): |
20 |
| - user = self.users[executing_user] |
21 |
| - request_body = {"name": "new_group_name"} |
| 22 | + def test_group_name_update(self, _, executing_user:str, target_group_id:str, new_groupname:str, expected_response:int): |
| 23 | + req_json = { |
| 24 | + "status": expected_response, |
| 25 | + "params": {"name": new_groupname} |
| 26 | + } |
| 27 | + if executing_user: |
| 28 | + executing_user, *is_expired = executing_user.split(":") |
| 29 | + user = self.users[executing_user] |
| 30 | + req_json["headers"] = user.expired_auth.header if is_expired else user.auth.header |
22 | 31 |
|
23 | 32 | response = self.testapp.put_json(
|
24 | 33 | f"{base_url}/groups/{target_group_id}",
|
25 |
| - headers = user.auth.header, |
26 |
| - params = request_body, |
27 |
| - status = expected_response |
28 |
| - ) |
29 |
| - |
30 |
| - def test_failure_group_name_update_not_authorised(self, status:int=401): |
31 |
| - """Testing unsuccessful group name change by unidentified, unauthorized user. |
32 |
| -
|
33 |
| - Expected Response: |
34 |
| - HTTP 401 |
35 |
| - """ |
36 |
| - request_body = {"name": "fancy_group_name"} |
37 |
| - |
38 |
| - response = self.testapp.put_json( |
39 |
| - f"{base_url}/groups/group_y_id", |
40 |
| - params = request_body, |
41 |
| - status = status |
42 |
| - ) |
43 |
| - |
44 |
| - def test_failure_admin_group_name_update_expired_token(self, status:int=401): |
45 |
| - """Testing unsuccessful group name change by admin user with expired token. |
46 |
| -
|
47 |
| - Expected Response: |
48 |
| - HTTP 401 |
49 |
| - """ |
50 |
| - user = self.users["admin"] |
51 |
| - request_body = {"name": "fancy_group_name"} |
52 |
| - |
53 |
| - response = self.testapp.put_json( |
54 |
| - f"{base_url}/groups/group_x_id", |
55 |
| - headers = user.expired_auth.header, |
56 |
| - params = request_body, |
57 |
| - status = status |
| 34 | + **req_json |
58 | 35 | )
|
0 commit comments