def delete(self, team_id):
     """
     Deletes a Team
     ---
     tags:
         - teams
     produces:
         - application/json
     parameters:
         - in: header
           name: Authorization
           description: Base64 encoded session token
           required: true
           type: string
           default: Token sessionTokenHere==
         - name: team_id
           in: path
           description: The unique team ID
           required: true
           type: integer
           default: 1
     responses:
         200:
             description: Team deleted
         401:
             description: Unauthorized - Invalid credentials
         403:
             description: Forbidden - Team has associated projects
         404:
             description: Team not found
         500:
             description: Internal Server Error
     """
     if not TeamService.is_user_team_manager(team_id,
                                             token_auth.current_user()):
         return {"Error": "User is not a manager for the team"}, 401
     try:
         TeamService.delete_team(team_id)
         return {"Success": "Team deleted"}, 200
     except NotFound:
         return {"Error": "Team Not Found"}, 404
     except Exception as e:
         error_msg = f"Team DELETE - unhandled error: {str(e)}"
         current_app.logger.critical(error_msg)
         return {"Error": error_msg}, 500
Exemple #2
0
 def test_delete_team_project(self):
     team_id = 1
     with self.assertRaises(TeamServiceError):
         TeamService.delete_team(team_id)