def test_search_team(self): filters = { "user_id": 123, "team_name_filter": "TM3-validators", "team_role_filter": "MAPPER", "member_filter": 123, "member_request_filter": 123, "manager_filter": 123, "organisation_filter": 1, "omit_members": False, } result = TeamService.get_all_teams(**filters) self.assertEqual(result.to_primitive(), {"teams": []})
def get(self): """ Gets all teams --- tags: - teams produces: - application/json parameters: - in: header name: Authorization description: Base64 encoded session token required: true type: string default: Token sessionTokenHere== - in: query name: team_name description: name of the team to filter by type: str default: null - in: query name: member description: user ID to filter teams that the users belongs to, user must be active. type: str default: null - in: query name: manager description: user ID to filter teams that the users has MANAGER role type: str default: null - in: query name: member_request description: user ID to filter teams that the user has send invite request to type: str default: null - in: query name: team_role description: team role for project type: str default: null - in: query name: organisation description: organisation ID to filter teams type: str default: null responses: 201: description: Team list returned successfully 400: description: Client Error - Invalid Request 401: description: Unauthorized - Invalid credentials 500: description: Internal Server Error """ try: user_id = token_auth.current_user() except Exception as e: error_msg = f"Teams GET - unhandled error: {str(e)}" current_app.logger.critical(error_msg) return {"Error": error_msg}, 500 filters = {} filters["user_id"] = user_id filters["team_name_filter"] = request.args.get("team_name") try: member_filter = request.args.get("member") filters["member_filter"] = int( member_filter) if member_filter else None manager_filter = request.args.get("manager") filters["manager_filter"] = int( manager_filter) if manager_filter else None role_filter = request.args.get("team_role") filters["team_role_filter"] = role_filter member_request_filter = request.args.get("member_request") filters["member_request_filter"] = ( int(member_request_filter) if member_request_filter else None) organisation_filter = request.args.get("organisation") filters["organisation_filter"] = (int(organisation_filter) if organisation_filter else None) teams = TeamService.get_all_teams(**filters) return teams.to_primitive(), 200 except Exception as e: error_msg = f"User GET - unhandled error: {str(e)}" current_app.logger.critical(error_msg) return {"Error": error_msg}, 500