Adding ReportError test and HTTP Test server reuse
parent
6a0406611e
commit
f948bf8136
|
@ -31,6 +31,16 @@ import (
|
|||
"github.com/spf13/viper"
|
||||
)
|
||||
|
||||
func startTestHTTPServer(returnError bool, response string) *httptest.Server {
|
||||
return httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
||||
if returnError {
|
||||
http.Error(w, response, 400)
|
||||
} else {
|
||||
fmt.Fprintf(w, response)
|
||||
}
|
||||
}))
|
||||
}
|
||||
|
||||
func TestFormatError(t *testing.T) {
|
||||
var testErr error
|
||||
if _, err := FormatError(testErr); err == nil {
|
||||
|
@ -70,22 +80,26 @@ func TestUploadError(t *testing.T) {
|
|||
errMsg, _ := FormatError(testErr)
|
||||
jsonErrMsg, _ := MarshallError(errMsg, "default", version.GetVersion())
|
||||
|
||||
server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
||||
fmt.Fprintf(w, "Hello, world!")
|
||||
}))
|
||||
|
||||
server := startTestHTTPServer(false, "http test")
|
||||
if err := UploadError(jsonErrMsg, server.URL); err != nil {
|
||||
t.Fatalf("Unexpected error: %v", err)
|
||||
}
|
||||
|
||||
server = httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
||||
http.Error(w, "failed to write report", 400)
|
||||
}))
|
||||
server = startTestHTTPServer(true, "failed to write report")
|
||||
if err := UploadError(jsonErrMsg, server.URL); err == nil {
|
||||
t.Fatalf("UploadError should have errored from a 400 response")
|
||||
}
|
||||
}
|
||||
|
||||
func TestReportError(t *testing.T) {
|
||||
testErr := errors.New("TestError 1")
|
||||
|
||||
server := startTestHTTPServer(false, "http test")
|
||||
if err := ReportError(testErr, server.URL); err != nil {
|
||||
t.Fatalf("ReportError")
|
||||
}
|
||||
}
|
||||
|
||||
func revertLookPath(l LookPath) {
|
||||
lookPath = l
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue