def test_unit__get_one__ok__nominal_case(self): admin = self.session.query(User).filter( User.email == "*****@*****.**").one() rapi = RoleApi(current_user=admin, session=self.session, config=self.app_config) rapi.get_one(admin.user_id, 1)
def test_unit__get_one__err__role_does_not_exist(self): admin = self.session.query(User).filter( User.email == "*****@*****.**").one() rapi = RoleApi(current_user=admin, session=self.session, config=self.app_config) with pytest.raises(UserRoleNotFound): rapi.get_one(admin.user_id, 100) # workspace 100 does not exist
def test_unit__get_one__ok__nominal_case(self): admin = self.session.query(User)\ .filter(User.email == '*****@*****.**').one() rapi = RoleApi( current_user=admin, session=self.session, config=self.app_config, ) rapi.get_one(admin.user_id, 1)
def test_unit__get_one__err__role_does_not_exist(self): admin = self.session.query(User)\ .filter(User.email == '*****@*****.**').one() rapi = RoleApi( current_user=admin, session=self.session, config=self.app_config, ) with pytest.raises(UserRoleNotFound): rapi.get_one(admin.user_id, 100) # workspace 100 does not exist
def enable_account_workspace_notification(self, context, request: TracimRequest, hapic_data=None): # nopep8 """ enable workspace notification """ app_config = request.registry.settings['CFG'] api = ContentApi( current_user=request.current_user, # User session=request.dbsession, config=app_config, ) wapi = WorkspaceApi( current_user=request.current_user, # User session=request.dbsession, config=app_config, ) workspace = wapi.get_one(hapic_data.path.workspace_id) wapi.enable_notifications(request.current_user, workspace) rapi = RoleApi( current_user=request.current_user, # User session=request.dbsession, config=app_config, ) role = rapi.get_one(request.current_user.user_id, workspace.workspace_id) # nopep8 wapi.save(workspace) return
def enable_workspace_notification(self, context, request: TracimRequest, hapic_data=None): # nopep8 """ enable workspace notification """ app_config = request.registry.settings['CFG'] api = ContentApi( current_user=request.candidate_user, # User session=request.dbsession, config=app_config, ) wapi = WorkspaceApi( current_user=request.candidate_user, # User session=request.dbsession, config=app_config, ) workspace = wapi.get_one(hapic_data.path.workspace_id) wapi.enable_notifications(request.candidate_user, workspace) rapi = RoleApi( current_user=request.candidate_user, # User session=request.dbsession, config=app_config, ) role = rapi.get_one(request.candidate_user.user_id, workspace.workspace_id) wapi.save(workspace) return
def update_workspaces_members_role( self, context, request: TracimRequest, hapic_data=None ) -> UserRoleWorkspaceInContext: """ Update role of the given space member. This feature is for workspace managers, trusted users and administrators. """ app_config = request.registry.settings['CFG'] rapi = RoleApi( current_user=request.current_user, session=request.dbsession, config=app_config, ) role = rapi.get_one( user_id=hapic_data.path.user_id, workspace_id=hapic_data.path.workspace_id, ) workspace_role = WorkspaceRoles.get_role_from_slug(hapic_data.body.role) role = rapi.update_role( role, role_level=workspace_role.level ) return rapi.get_user_role_workspace_with_context(role)
def test_unit__create_one__nominal_case( self, admin_user, session, app_config, workspace_api_factory ): workspace = workspace_api_factory.get().create_workspace("workspace_1", save_now=True) bob = session.query(User).filter(User.email == "*****@*****.**").one() rapi = RoleApi(current_user=admin_user, session=session, config=app_config) created_role = rapi.create_one( user=bob, workspace=workspace, role_level=WorkspaceRoles.CONTENT_MANAGER.level, with_notif=False, ) obtain_role = rapi.get_one(bob.user_id, workspace.workspace_id) assert created_role == obtain_role
def enable_account_workspace_notification(self, context, request: TracimRequest, hapic_data=None): """ enable workspace notification """ app_config = request.registry.settings["CFG"] # type: CFG wapi = WorkspaceApi( current_user=request.current_user, session=request.dbsession, config=app_config # User ) workspace = wapi.get_one(hapic_data.path.workspace_id) wapi.enable_notifications(request.current_user, workspace) rapi = RoleApi( current_user=request.current_user, session=request.dbsession, config=app_config # User ) rapi.get_one(request.current_user.user_id, workspace.workspace_id) wapi.save(workspace) return
def workspaces_member_role(self, context, request: TracimRequest, hapic_data=None) -> UserRoleWorkspaceInContext: """ Returns given space member with its role, avatar, etc. """ app_config = request.registry.settings["CFG"] # type: CFG rapi = RoleApi(current_user=request.current_user, session=request.dbsession, config=app_config) role = rapi.get_one(user_id=hapic_data.path.user_id, workspace_id=hapic_data.path.workspace_id) return rapi.get_user_role_workspace_with_context(role)
def test_unit__create_one__nominal_case(self): admin = self.session.query(User).filter( User.email == "*****@*****.**").one() workspace = self._create_workspace_and_test("workspace_1", admin) bob = self.session.query(User).filter( User.email == "*****@*****.**").one() rapi = RoleApi(current_user=admin, session=self.session, config=self.app_config) created_role = rapi.create_one( user=bob, workspace=workspace, role_level=WorkspaceRoles.CONTENT_MANAGER.level, with_notif=False, ) obtain_role = rapi.get_one(bob.user_id, workspace.workspace_id) assert created_role == obtain_role
def workspaces_member_role( self, context, request: TracimRequest, hapic_data=None ) -> UserRoleWorkspaceInContext: """ Returns given space member with its role, avatar, etc. """ app_config = request.registry.settings['CFG'] rapi = RoleApi( current_user=request.current_user, session=request.dbsession, config=app_config, ) role = rapi.get_one( user_id=hapic_data.path.user_id, workspace_id=hapic_data.path.workspace_id, ) return rapi.get_user_role_workspace_with_context(role)
def test_unit__create_one__nominal_case(self): admin = self.session.query(User)\ .filter(User.email == '*****@*****.**').one() workspace = self._create_workspace_and_test( 'workspace_1', admin ) bob = self.session.query(User)\ .filter(User.email == '*****@*****.**').one() rapi = RoleApi( current_user=admin, session=self.session, config=self.app_config, ) created_role = rapi.create_one( user=bob, workspace=workspace, role_level=WorkspaceRoles.CONTENT_MANAGER.level, with_notif=False, ) obtain_role = rapi.get_one(bob.user_id, workspace.workspace_id) assert created_role == obtain_role
def test_unit__get_one__err__role_does_not_exist(self, session, app_config, admin_user): rapi = RoleApi(current_user=admin_user, session=session, config=app_config) with pytest.raises(UserRoleNotFound): rapi.get_one(admin_user.user_id, 100) # workspace 100 does not exist
def test_unit__get_one__ok__nominal_case(self, admin_user, session, app_config): rapi = RoleApi(current_user=admin_user, session=session, config=app_config) rapi.get_one(admin_user.user_id, 1)