diff --git a/internal/server/data/server_test.go b/internal/server/data/server_test.go index ff52eed..3ea84c3 100644 --- a/internal/server/data/server_test.go +++ b/internal/server/data/server_test.go @@ -10,47 +10,6 @@ import ( "github.com/gorilla/mux" ) -//func TestConfigRouterHasRoutesWellConfigured(t *testing.T) { -// testCases := []struct { -// pattern, method string -// handler uintptr -// mustMatch bool -// vars []struct{ k, v string } -// }{ -// {"/handlers/HANDLER_ZZZZZZZZZZZZZZZZ/request/params/name", http.MethodGet, reflect.ValueOf(readResource).Pointer(), true, []struct{ k, v string }{{"handler_id", "HANDLER_ZZZZZZZZZZZZZZZZ"}, {"root", "request"}, {"resource", "params/name"}}}, -// {"/handlers/HANDLER_ZZZZZZZZZZZZZZZZ/request/params/name", http.MethodPut, reflect.ValueOf(updateResource).Pointer(), true, []struct{ k, v string }{{"handler_id", "HANDLER_ZZZZZZZZZZZZZZZZ"}, {"root", "request"}, {"resource", "params/name"}}}, -// {"/handlers/HANDLER_ZZZZZZZZZZZZZZZZ/response/cookies/name", http.MethodGet, reflect.ValueOf(readResource).Pointer(), true, []struct{ k, v string }{{"handler_id", "HANDLER_ZZZZZZZZZZZZZZZZ"}, {"root", "response"}, {"resource", "cookies/name"}}}, -// {"/handlers/HANDLER_ZZZZZZZZZZZZZZZZ/response/headers/", http.MethodPut, reflect.ValueOf(updateResource).Pointer(), true, []struct{ k, v string }{{"handler_id", "HANDLER_ZZZZZZZZZZZZZZZZ"}}}, -// {"/handlers/HANDLER_ZZZZZZZZZZZZZZZZ/response/headers/name", http.MethodPut, reflect.ValueOf(updateResource).Pointer(), true, []struct{ k, v string }{{"handler_id", "HANDLER_ZZZZZZZZZZZZZZZZ"}, {"key", "name"}}}, -// } -// r := configRouter() -// -// for _, tc := range testCases { -// rm := mux.RouteMatch{} -// rq, _ := http.NewRequest(tc.method, tc.pattern, nil) -// if matched := r.Match(rq, &rm); tc.mustMatch != matched { -// t.Errorf("Route mismatch: Expected: %+v\n\t\t\t\t\t\t got: %+v", tc, rm) -// } else { -// if tc.mustMatch { -// // Check for Handler match. -// realHandler := reflect.ValueOf(rm.Handler).Pointer() -// if realHandler != tc.handler { -// t.Errorf("Handler mismatch. Expected: %X, got: %X", tc.handler, realHandler) -// } -// -// // Check for variables -// for _, v := range tc.vars { -// if value, exists := rm.Vars[v.k]; !exists { -// t.Errorf("Variable not present: %s", v.k) -// } else if v.v != value { -// t.Errorf("Variable value mismatch. Expected: %s, got: %s", v.v, value) -// } -// } -// } -// } -// } -//} - func TestUpdateResourceNotFoundWhenInvalidHandlerID(t *testing.T) { request := httptest.NewRequest(http.MethodPut, "/handlers/HANDLER_YYYYYYYYYYYYYYYY/response/headers/name", strings.NewReader("value")) response := httptest.NewRecorder() @@ -168,55 +127,3 @@ func TestUpdateResourceAddHeaderWhenRecieved(t *testing.T) { t.Errorf("Invalid Cookie value. Expected: %s, got: %s", "mola", headerValue) } } - -// FIXME: Fails because URL doesn't match -//func TestUpdateResourceNotFoundWhenInvalidHandlerID(t *testing.T) { -// request := httptest.NewRequest(http.MethodPut, "/handlers/response/headers/language", strings.NewReader("ES")) -// response := httptest.NewRecorder() -// handler := configRouter() -// -// handler.ServeHTTP(response, request) -// -// if response.Code != http.StatusNotFound { -// t.Errorf("HTTP Status mismatch. Expected: %d, got: %d", http.StatusNotFound, response.Code) -// } -//} - -//func TestUpdateResourceBadRequestWhenIncompletedResourceURL(t *testing.T) { -// request := httptest.NewRequest(http.MethodPut, "/handlers/xxxxxxxxx/response/headers/", strings.NewReader("ES")) -// response := httptest.NewRecorder() -// handler := configRouter() -// -// getHandlerId = func(id string) (*model.Handler, bool) { -// if id == "xxxxxxxxx" { -// return nil, true -// } -// return nil, false -// } -// -// handler.ServeHTTP(response, request) -// // TODO: We need to assure that an invalid resource path returns 400 (Bad Request) -// if response.Code != http.StatusBadRequest { -// t.Errorf("HTTP Status mismatch. Expected: %d, got: %d", http.StatusBadRequest, response.Code) -// } -//} - -//func TestUpdateResourceSetHeaderWhenPutReceived(t *testing.T) { -// request := httptest.NewRequest(http.MethodPut, "/handlers/xxxxxxxxxx/response/headers/language", strings.NewReader("ES")) -// response := httptest.NewRecorder() -// handler := configRouter() -// -// getHandlerId = func(id string) (*model.Handler, bool) { -// if id == "xxxxxxxxxx" { -// return nil, true -// } -// return nil, false -// } -// -// handler.ServeHTTP(response, request) -// -// if response.Code != http.StatusOK { -// t.Errorf("HTTP Status mismatch. Expected: %d, got: %d", http.StatusOK, response.Code) -// } -//} -//