github.com/mundipagg/boleto-api@v0.0.0-20230620145841-3f9ec742599f/api/monitor_test.go (about) 1 package api 2 3 import ( 4 "bytes" 5 "encoding/json" 6 "net/http" 7 "net/http/httptest" 8 "testing" 9 10 "github.com/mundipagg/boleto-api/metrics" 11 "github.com/stretchr/testify/assert" 12 ) 13 14 func Test_Memory_WhenCalled_ReturnMemoryReportSuccessful(t *testing.T) { 15 var resp = metrics.MemoryReport{} 16 17 router := mockInstallApi() 18 19 w := httptest.NewRecorder() 20 req, _ := http.NewRequest("GET", "/boleto/memory-check/", nil) 21 22 router.ServeHTTP(w, req) 23 24 assert.Equal(t, 200, w.Code) 25 assert.Nil(t, json.NewDecoder(bytes.NewReader(w.Body.Bytes())).Decode(&resp)) 26 assert.NotEmpty(t, resp) 27 assert.Equal(t, "MB", resp.MemoryUnit) 28 } 29 30 func Test_Memory_WhenCalledWithKilobytesParameter_ReturnMemoryReportSuccessful(t *testing.T) { 31 var resp = metrics.MemoryReport{} 32 33 router := mockInstallApi() 34 35 w := httptest.NewRecorder() 36 req, _ := http.NewRequest("GET", "/boleto/memory-check/KB", nil) 37 38 router.ServeHTTP(w, req) 39 40 assert.Equal(t, 200, w.Code) 41 assert.Nil(t, json.NewDecoder(bytes.NewReader(w.Body.Bytes())).Decode(&resp)) 42 assert.NotEmpty(t, resp) 43 assert.Equal(t, "KB", resp.MemoryUnit) 44 }