From 21a324d2d21e94c92b709654a9f6f80cfc37322e Mon Sep 17 00:00:00 2001 From: Martin Schmollinger <martin.schmollinger@reutlingen-university.de> Date: Sun, 7 May 2023 22:20:53 +0200 Subject: [PATCH] Added some unit tests for handlers --- src/myaktion/handler/campaign_test.go | 19 +++++++++++++++++++ src/myaktion/handler/health_test.go | 23 +++++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 src/myaktion/handler/campaign_test.go create mode 100644 src/myaktion/handler/health_test.go diff --git a/src/myaktion/handler/campaign_test.go b/src/myaktion/handler/campaign_test.go new file mode 100644 index 0000000..ef56393 --- /dev/null +++ b/src/myaktion/handler/campaign_test.go @@ -0,0 +1,19 @@ +package handler + +import ( + "net/http" + "net/http/httptest" + "testing" +) + +func TestCreateCampaignBadRequest(t *testing.T) { + rr := httptest.NewRecorder() + //No campaign in the body of the request -> nil + req := httptest.NewRequest(http.MethodPost, "/campaigns", nil) + handler := http.HandlerFunc(CreateCampaign) + handler.ServeHTTP(rr, req) + + if status := rr.Code; status != http.StatusBadRequest { + t.Errorf("handler did not recognize bad request") + } +} diff --git a/src/myaktion/handler/health_test.go b/src/myaktion/handler/health_test.go new file mode 100644 index 0000000..ac191cc --- /dev/null +++ b/src/myaktion/handler/health_test.go @@ -0,0 +1,23 @@ +package handler + +import ( + "net/http" + "net/http/httptest" + "testing" +) + +func TestHealth(t *testing.T) { + rr := httptest.NewRecorder() + req := httptest.NewRequest("GET", "/health", nil) + handler := http.HandlerFunc(Health) + handler.ServeHTTP(rr, req) + + if status := rr.Code; status != http.StatusOK { + t.Errorf("handler returned wrong status code: got %v want %v", status, http.StatusOK) + } + + expected := `{"alive": true}` + if rr.Body.String() != expected { + t.Errorf("handler returned unexpected body: got %v want %v", rr.Body.String(), expected) + } +} -- GitLab