diff --git a/backend/internal/handlers/global_state.go b/backend/internal/handlers/global_state.go index 2378f7b..415b215 100644 --- a/backend/internal/handlers/global_state.go +++ b/backend/internal/handlers/global_state.go @@ -267,14 +267,6 @@ func (gs *GState) SubmitWeeklyReport(c *fiber.Ctx) error { return c.Status(400).SendString(err.Error()) } - // Make sure all the fields of the report are valid - if report.Week < 1 || report.Week > 52 { - return c.Status(400).SendString("Invalid week number") - } - if report.DevelopmentTime < 0 || report.MeetingTime < 0 || report.AdminTime < 0 || report.OwnWorkTime < 0 || report.StudyTime < 0 || report.TestingTime < 0 { - return c.Status(400).SendString("Invalid time report") - } - if err := gs.Db.AddWeeklyReport(report.ProjectName, username, report.Week, report.DevelopmentTime, report.MeetingTime, report.AdminTime, report.OwnWorkTime, report.StudyTime, report.TestingTime); err != nil { return c.Status(500).SendString(err.Error()) } diff --git a/backend/internal/types/WeeklyReport.go b/backend/internal/types/WeeklyReport.go index e0ea1ef..23624db 100644 --- a/backend/internal/types/WeeklyReport.go +++ b/backend/internal/types/WeeklyReport.go @@ -3,19 +3,19 @@ package types // This is what should be submitted to the server, the username will be derived from the JWT token type NewWeeklyReport struct { // The name of the project, as it appears in the database - ProjectName string `json:"projectName"` + ProjectName string // The week number - Week int `json:"week"` + Week int // Total time spent on development - DevelopmentTime int `json:"developmentTime"` + DevelopmentTime int // Total time spent in meetings - MeetingTime int `json:"meetingTime"` + MeetingTime int // Total time spent on administrative tasks - AdminTime int `json:"adminTime"` + AdminTime int // Total time spent on personal projects - OwnWorkTime int `json:"ownWorkTime"` + OwnWorkTime int // Total time spent on studying - StudyTime int `json:"studyTime"` + StudyTime int // Total time spent on testing - TestingTime int `json:"testingTime"` + TestingTime int } diff --git a/testing.py b/testing.py index d2c64fe..fa97567 100644 --- a/testing.py +++ b/testing.py @@ -11,7 +11,7 @@ def randomString(len=10): # Defined once per test run username = randomString() -projectName = randomString() +token = None # The base URL of the API base_url = "http://localhost:8080" @@ -20,10 +20,9 @@ base_url = "http://localhost:8080" registerPath = base_url + "/api/register" loginPath = base_url + "/api/login" addProjectPath = base_url + "/api/project" -submitReportPath = base_url + "/api/submitReport" -# Posts the username and password to the register endpoint +# Define a function to prform POST request with data and return response def register(username: string, password: string): print("Registering with username: ", username, " and password: ", password) response = requests.post( @@ -33,7 +32,6 @@ def register(username: string, password: string): return response -# Posts the username and password to the login endpoint def login(username: string, password: string): print("Logging in with username: ", username, " and password: ", password) response = requests.post( @@ -50,6 +48,7 @@ def test_login(): return response.json()["token"] +# Define a function to test the POST request def test_create_user(): response = register(username, "always_same") assert response.status_code == 200, "Registration failed" @@ -59,6 +58,7 @@ def test_create_user(): def test_add_project(): loginResponse = login(username, "always_same") token = loginResponse.json()["token"] + projectName = randomString() response = requests.post( addProjectPath, json={"name": projectName, "description": "This is a project"}, @@ -69,29 +69,7 @@ def test_add_project(): print("Add project successful") -def test_submit_report(): - token = login(username, "always_same").json()["token"] - response = requests.post( - submitReportPath, - json={ - "projectName": "report1", - "week": 1, - "developmentTime": 10, - "meetingTime": 5, - "adminTime": 5, - "ownWorkTime": 10, - "studyTime": 10, - "testingTime": 10, - }, - headers={"Authorization": "Bearer " + token}, - ) - print(response.text) - assert response.status_code == 200, "Submit report failed" - print("Submit report successful") - - if __name__ == "__main__": test_create_user() test_login() test_add_project() - test_submit_report()