Initial cloud-services repo - gateway service + pkg modules

This commit is contained in:
Chris Rai
2026-01-30 23:14:52 -05:00
commit fbb820d7b3
1037 changed files with 171318 additions and 0 deletions

View File

@@ -0,0 +1,96 @@
package httpclient
import (
"errors"
"net/http"
"testing"
"fiskerinc.com/modules/httpclient/mock"
)
const (
jsonBody = `{"name":"test data"}`
TestErrorTemplate = "%s test. Expected '%v'. Got '%v'"
testURL = "https://fiskerinc.com"
)
var (
httpHeader = http.Header{"content-type": []string{"application/json"}}
errServer = errors.New("Error from web server")
)
func TestGetRequest(t *testing.T) {
c := mock.Client{
DoFunc: func(*http.Request) (*http.Response, error) {
return &http.Response{StatusCode: 200}, nil
},
}
Client = &c
_, err := Get(testURL, httpHeader)
if err != nil {
t.Fatalf(TestErrorTemplate, "TestGetRequest", errors.New("Error from web server"), err)
}
}
func TestGetRequestError(t *testing.T) {
c := mock.Client{
DoFunc: func(*http.Request) (*http.Response, error) {
return nil, errServer
},
}
Client = &c
_, err := Get(testURL, httpHeader)
if err == nil {
t.Fatalf(TestErrorTemplate, "TestGetRequestError", errServer, err)
}
}
func TestPostRequest(t *testing.T) {
c := mock.Client{
DoFunc: func(*http.Request) (*http.Response, error) {
return &http.Response{StatusCode: 200}, nil
},
}
Client = &c
_, err := Post(testURL, jsonBody, httpHeader)
if err != nil {
t.Fatalf(TestErrorTemplate, "TestPostRequest", nil, err)
}
}
func TestPostRequestError(t *testing.T) {
c := mock.Client{
DoFunc: func(*http.Request) (*http.Response, error) {
return nil, errServer
},
}
Client = &c
_, err := Post(testURL, jsonBody, httpHeader)
if err == nil {
t.Fatalf(TestErrorTemplate, "TestPostRequestError", errServer, err)
}
}
func TestDoRequest(t *testing.T) {
Client = &mock.Client{
DoFunc: func(*http.Request) (*http.Response, error) {
return &http.Response{StatusCode: 200}, nil
},
}
request, _ := http.NewRequest(http.MethodPost, "http://test.com", nil)
response, err := Do(request)
if err != nil {
t.Errorf(TestErrorTemplate, "Response error", "nil", err)
}
if response.StatusCode != 200 {
t.Errorf(TestErrorTemplate, "Response status", 200, response.StatusCode)
}
}