github.com/angryronald/go-kit@v0.0.0-20240505173814-ff2bd9c79dbf/test/docker/mockserver/mockserver.service_test.go (about) 1 package mockserver 2 3 import ( 4 "fmt" 5 "net/http" 6 "testing" 7 ) 8 9 func TestMockRequest(t *testing.T) { 10 // Initialize the mock server client 11 // _ = ms.Init() 12 StartMockServer() 13 defer StopMockServer() 14 15 // Test a successful mock request 16 err := MockRequest("GET", "/test", nil, map[string]string{"Content-Type": "application/json"}) 17 if err != nil { 18 t.Errorf("MockRequest returned an error: %v", err) 19 } 20 21 req, err := http.NewRequest(http.MethodGet, fmt.Sprintf("http://%s:%d/test", host, port), nil) 22 if err != nil { 23 t.Errorf("Failing to call the mockserver endpoint: %v", err) 24 } 25 req.Header.Set("Content-Type", "application/json") 26 27 client := &http.Client{} 28 response, err := client.Do(req) 29 if err != nil { 30 t.Errorf("Error sending request: %v", err) 31 return 32 } 33 defer response.Body.Close() 34 35 if response.StatusCode != http.StatusOK { 36 t.Errorf("got %v, should be %v", response.StatusCode, http.StatusOK) 37 } 38 } 39 40 // func TestRemoveMockRequest(t *testing.T) { 41 // // Initialize the mock server client 42 // // _ = ms.Init() 43 44 // StartMockServer() 45 // defer StopMockServer() 46 47 // // Mock a request to be removed 48 // _ = MockRequest("DELETE", "/remove", nil, nil) 49 50 // // Test removing an existing mock request 51 // err := RemoveMockRequest("DELETE", "/remove", nil, nil) 52 // if err != nil { 53 // t.Errorf("RemoveMockRequest returned an error: %v", err) 54 // } 55 56 // req, err := http.NewRequest(http.MethodDelete, fmt.Sprintf("http://%s:%d/remove", host, port), nil) 57 // if err != nil { 58 // t.Errorf("Failing to call the mockserver endpoint: %v", err) 59 // } 60 61 // client := &http.Client{} 62 // response, err := client.Do(req) 63 // if err != nil { 64 // t.Errorf("Error sending request: %v", err) 65 // return 66 // } 67 // defer response.Body.Close() 68 69 // if response.StatusCode != http.StatusNotFound { 70 // t.Errorf("got %v, should be %v", response.StatusCode, http.StatusNotFound) 71 // } 72 // } 73 74 func TestGetPort(t *testing.T) { 75 // Get the port from the mock server client 76 p := GetPort() 77 78 // Verify that the returned port is greater than 0 79 if p <= 0 { 80 t.Errorf("GetPort returned an invalid port number: %d", p) 81 } 82 }