Normalize internal/client/*_test.go
* Adjust test style for easy reading, by using literals instead of vars
* Move comparison to the `bytes` domain, instead of `string`
* Simplify testing code by using bytes.Buffer directly
* More consistent naming of variables and dummies (HANDLE_{FOO,BAR,BAD})
* Consistent testing style of gock.IsDone()
* Stick to 80-column
This commit is contained in:
+28
-33
@@ -10,41 +10,16 @@ import (
|
||||
"github.com/BBVA/kapow/internal/client"
|
||||
)
|
||||
|
||||
// Test that not found errors are detected as invalid handler id
|
||||
func TestNotFound(t *testing.T) {
|
||||
expectedErr := "Not Found"
|
||||
host := "http://localhost:8080"
|
||||
hid := "inventedID"
|
||||
path := "/response/status/code"
|
||||
reader := strings.NewReader("200")
|
||||
|
||||
// Test an HTTP OK request
|
||||
func TestSetDataSuccessOnCorrectRequest(t *testing.T) {
|
||||
defer gock.Off()
|
||||
gock.New("http://localhost:8080").
|
||||
Put("/HANDLER_FOO/response/status/code").
|
||||
Reply(http.StatusOK)
|
||||
|
||||
gock.New(host).Put("/" + hid + path).Reply(http.StatusNotFound)
|
||||
|
||||
if err := client.SetData(host, hid, path, reader); err == nil {
|
||||
t.Error("Expected error not present")
|
||||
} else if err.Error() != expectedErr {
|
||||
t.Errorf("Error don't match: expected \"%s\", got \"%s\"", expectedErr, err.Error())
|
||||
}
|
||||
|
||||
if !gock.IsDone() {
|
||||
t.Errorf("No endpoint called")
|
||||
}
|
||||
}
|
||||
|
||||
// Test a http ok request
|
||||
func TestOkRequest(t *testing.T) {
|
||||
host := "http://localhost:8080"
|
||||
hid := "HANDLER_XXXXXXXXXXXX"
|
||||
path := "/response/status/code"
|
||||
reader := strings.NewReader("200")
|
||||
|
||||
defer gock.Off()
|
||||
|
||||
gock.New(host).Put("/" + hid + path).Reply(http.StatusOK)
|
||||
|
||||
if err := client.SetData(host, hid, path, reader); err != nil {
|
||||
if err := client.SetData(
|
||||
"http://localhost:8080",
|
||||
"HANDLER_FOO", "/response/status/code", strings.NewReader("200")); err != nil {
|
||||
t.Error("Unexpected error")
|
||||
}
|
||||
|
||||
@@ -52,3 +27,23 @@ func TestOkRequest(t *testing.T) {
|
||||
t.Errorf("No endpoint called")
|
||||
}
|
||||
}
|
||||
|
||||
// Test that Not Found errors are detected when an invalid handler id is sent
|
||||
func TestSetDataErrIfBadHandlerID(t *testing.T) {
|
||||
defer gock.Off()
|
||||
gock.New("http://localhost:8080").
|
||||
Put("/HANDLER_BAD/response/status/code").
|
||||
Reply(http.StatusNotFound)
|
||||
|
||||
if err := client.SetData(
|
||||
"http://localhost:8080",
|
||||
"HANDLER_BAD", "/response/status/code", strings.NewReader("200")); err == nil {
|
||||
t.Error("Expected error not present")
|
||||
} else if err.Error() != "Not Found" {
|
||||
t.Errorf(`Error mismatch: expected "Not Found", got %q`, err)
|
||||
}
|
||||
|
||||
if !gock.IsDone() {
|
||||
t.Errorf("No endpoint called")
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user