@@ 2045-2101 (lines=57) @@ | ||
2042 | assert user_role['user_id'] == user2.user_id |
|
2043 | assert user_role['workspace_id'] == workspace.workspace_id |
|
2044 | ||
2045 | def test_api__update_workspace_member_role__err_400__role_not_exist(self): |
|
2046 | """ |
|
2047 | Update worskpace member role |
|
2048 | """ |
|
2049 | dbsession = get_tm_session(self.session_factory, transaction.manager) |
|
2050 | admin = dbsession.query(models.User) \ |
|
2051 | .filter(models.User.email == '[email protected]') \ |
|
2052 | .one() |
|
2053 | uapi = UserApi( |
|
2054 | current_user=admin, |
|
2055 | session=dbsession, |
|
2056 | config=self.app_config, |
|
2057 | ) |
|
2058 | gapi = GroupApi( |
|
2059 | current_user=admin, |
|
2060 | session=dbsession, |
|
2061 | config=self.app_config, |
|
2062 | ) |
|
2063 | groups = [gapi.get_one_with_name('trusted-users')] |
|
2064 | user = uapi.create_user('[email protected]', password='[email protected]', do_save=True, do_notify=False, groups=groups) # nopep8 |
|
2065 | user2 = uapi.create_user('[email protected]', password='[email protected]', do_save=True, do_notify=False, groups=groups) # nopep8 |
|
2066 | workspace_api = WorkspaceApi( |
|
2067 | current_user=admin, |
|
2068 | session=dbsession, |
|
2069 | config=self.app_config, |
|
2070 | show_deleted=True, |
|
2071 | ) |
|
2072 | workspace = workspace_api.create_workspace('test', save_now=True) # nopep8 |
|
2073 | rapi = RoleApi( |
|
2074 | current_user=None, |
|
2075 | session=dbsession, |
|
2076 | config=self.app_config, |
|
2077 | ) |
|
2078 | rapi.delete_one(admin.user_id, workspace.workspace_id) |
|
2079 | transaction.commit() |
|
2080 | # update workspace role |
|
2081 | self.testapp.authorization = ( |
|
2082 | 'Basic', |
|
2083 | ( |
|
2084 | '[email protected]', |
|
2085 | '[email protected]' |
|
2086 | ) |
|
2087 | ) |
|
2088 | params = { |
|
2089 | 'role': 'content-manager', |
|
2090 | } |
|
2091 | res = self.testapp.put_json( |
|
2092 | '/api/v2/workspaces/{workspace_id}/members/{user_id}'.format( |
|
2093 | workspace_id=workspace.workspace_id, |
|
2094 | user_id=user2.user_id |
|
2095 | ), |
|
2096 | status=400, |
|
2097 | params=params, |
|
2098 | ) |
|
2099 | assert isinstance(res.json, dict) |
|
2100 | assert 'code' in res.json.keys() |
|
2101 | assert res.json_body['code'] == error.USER_ROLE_NOT_FOUND |
|
2102 | ||
2103 | def test_api__update_workspace_member_role__ok_200__as_admin(self): |
|
2104 | """ |
|
@@ 2295-2346 (lines=52) @@ | ||
2292 | for role in roles: |
|
2293 | assert role['user_id'] != user2.user_id |
|
2294 | ||
2295 | def test_api__delete_workspace_member_role__err_400__role_not_exist(self): |
|
2296 | """ |
|
2297 | Delete worskpace member role |
|
2298 | """ |
|
2299 | dbsession = get_tm_session(self.session_factory, transaction.manager) |
|
2300 | admin = dbsession.query(models.User) \ |
|
2301 | .filter(models.User.email == '[email protected]') \ |
|
2302 | .one() |
|
2303 | uapi = UserApi( |
|
2304 | current_user=admin, |
|
2305 | session=dbsession, |
|
2306 | config=self.app_config, |
|
2307 | ) |
|
2308 | gapi = GroupApi( |
|
2309 | current_user=admin, |
|
2310 | session=dbsession, |
|
2311 | config=self.app_config, |
|
2312 | ) |
|
2313 | groups = [gapi.get_one_with_name('trusted-users')] |
|
2314 | user = uapi.create_user('[email protected]', password='[email protected]', do_save=True, do_notify=False, groups=groups) # nopep8 |
|
2315 | user2 = uapi.create_user('[email protected]', password='[email protected]', do_save=True, do_notify=False, groups=groups) # nopep8 |
|
2316 | workspace_api = WorkspaceApi( |
|
2317 | current_user=admin, |
|
2318 | session=dbsession, |
|
2319 | config=self.app_config, |
|
2320 | show_deleted=True, |
|
2321 | ) |
|
2322 | workspace = workspace_api.create_workspace('test', save_now=True) # nopep8 |
|
2323 | rapi = RoleApi( |
|
2324 | current_user=admin, |
|
2325 | session=dbsession, |
|
2326 | config=self.app_config, |
|
2327 | ) |
|
2328 | transaction.commit() |
|
2329 | ||
2330 | self.testapp.authorization = ( |
|
2331 | 'Basic', |
|
2332 | ( |
|
2333 | '[email protected]', |
|
2334 | '[email protected]' |
|
2335 | ) |
|
2336 | ) |
|
2337 | res = self.testapp.delete( |
|
2338 | '/api/v2/workspaces/{workspace_id}/members/{user_id}'.format( |
|
2339 | workspace_id=workspace.workspace_id, |
|
2340 | user_id=user2.user_id, |
|
2341 | ), |
|
2342 | status=400, |
|
2343 | ) |
|
2344 | assert isinstance(res.json, dict) |
|
2345 | assert 'code' in res.json.keys() |
|
2346 | assert res.json_body['code'] == error.USER_ROLE_NOT_FOUND |
|
2347 | ||
2348 | def test_api__delete_workspace_member_role__err_400__workspace_manager_itself(self): # nopep8 |
|
2349 | """ |