diff options
author | Kiran Kamineni <kiran.k.kamineni@intel.com> | 2019-01-17 11:49:39 -0800 |
---|---|---|
committer | Kiran Kamineni <kiran.k.kamineni@intel.com> | 2019-01-17 12:31:24 -0800 |
commit | e9ee50babb3bbfe7a6e774460a46782abefd5107 (patch) | |
tree | e60fc7100b99f9b0bcba1c6c6fd0743ef806338d | |
parent | 1fa0e21ea6d3c5fb060daba19a0cb6c1f26f1364 (diff) |
Minor refactoring of definition unit tests
The definition unit tests needed some small changes to
ensure consistency between the source and the tests.
P3: Sort both the slices before running DeepEqual
Issue-ID: MULTICLOUD-440
Change-Id: If797322e44321a580cb1441bd5c60b812799f844
Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
-rw-r--r-- | src/k8splugin/api/defhandler_test.go | 22 | ||||
-rw-r--r-- | src/k8splugin/rb/definition_test.go | 24 |
2 files changed, 35 insertions, 11 deletions
diff --git a/src/k8splugin/api/defhandler_test.go b/src/k8splugin/api/defhandler_test.go index 9739ab12..3dbd1aa4 100644 --- a/src/k8splugin/api/defhandler_test.go +++ b/src/k8splugin/api/defhandler_test.go @@ -24,6 +24,7 @@ import ( "net/http" "net/http/httptest" "reflect" + "sort" "testing" pkgerrors "github.com/pkg/errors" @@ -116,7 +117,7 @@ func TestRBDefCreateHandler(t *testing.T) { for _, testCase := range testCases { t.Run(testCase.label, func(t *testing.T) { vh := rbDefinitionHandler{client: testCase.rbDefClient} - req, err := http.NewRequest("POST", "/v1/resource/definition", testCase.reader) + req, err := http.NewRequest("POST", "/v1/rb/definition", testCase.reader) if err != nil { t.Fatal(err) @@ -193,7 +194,7 @@ func TestRBDefListHandler(t *testing.T) { for _, testCase := range testCases { t.Run(testCase.label, func(t *testing.T) { vh := rbDefinitionHandler{client: testCase.rbDefClient} - req, err := http.NewRequest("GET", "/v1/resource/definition", nil) + req, err := http.NewRequest("GET", "/v1/rb/definition", nil) if err != nil { t.Fatal(err) } @@ -212,6 +213,17 @@ func TestRBDefListHandler(t *testing.T) { got := []rb.Definition{} json.NewDecoder(rr.Body).Decode(&got) + // Since the order of returned slice is not guaranteed + // Check both and return error if both don't match + sort.Slice(got, func(i, j int) bool { + return got[i].UUID < got[i].UUID + }) + // Sort both as it is not expected that testCase.expected + // is sorted + sort.Slice(testCase.expected, func(i, j int) bool { + return testCase.expected[i].UUID < testCase.expected[i].UUID + }) + if reflect.DeepEqual(testCase.expected, got) == false { t.Errorf("listHandler returned unexpected body: got %v;"+ " expected %v", got, testCase.expected) @@ -267,7 +279,7 @@ func TestRBDefGetHandler(t *testing.T) { for _, testCase := range testCases { t.Run(testCase.label, func(t *testing.T) { vh := rbDefinitionHandler{client: testCase.rbDefClient} - req, err := http.NewRequest("GET", "/v1/resource/definition/"+testCase.inpUUID, nil) + req, err := http.NewRequest("GET", "/v1/rb/definition/"+testCase.inpUUID, nil) if err != nil { t.Fatal(err) } @@ -322,7 +334,7 @@ func TestRBDefDeleteHandler(t *testing.T) { for _, testCase := range testCases { t.Run(testCase.label, func(t *testing.T) { vh := rbDefinitionHandler{client: testCase.rbDefClient} - req, err := http.NewRequest("GET", "/v1/resource/definition/"+testCase.inpUUID, nil) + req, err := http.NewRequest("GET", "/v1/rb/definition/"+testCase.inpUUID, nil) if err != nil { t.Fatal(err) } @@ -382,7 +394,7 @@ func TestRBDefUploadHandler(t *testing.T) { t.Run(testCase.label, func(t *testing.T) { vh := rbDefinitionHandler{client: testCase.rbDefClient} req, err := http.NewRequest("POST", - "/v1/resource/definition/"+testCase.inpUUID+"/content", testCase.body) + "/v1/rb/definition/"+testCase.inpUUID+"/content", testCase.body) if err != nil { t.Fatal(err) diff --git a/src/k8splugin/rb/definition_test.go b/src/k8splugin/rb/definition_test.go index 1e488678..0e4ffd91 100644 --- a/src/k8splugin/rb/definition_test.go +++ b/src/k8splugin/rb/definition_test.go @@ -21,13 +21,14 @@ package rb import ( "k8splugin/db" "reflect" + "sort" "strings" "testing" pkgerrors "github.com/pkg/errors" ) -func TestCreate(t *testing.T) { +func TestCreateDefinition(t *testing.T) { testCases := []struct { label string inp Definition @@ -83,7 +84,7 @@ func TestCreate(t *testing.T) { } } -func TestList(t *testing.T) { +func TestListDefinition(t *testing.T) { testCases := []struct { label string @@ -145,6 +146,17 @@ func TestList(t *testing.T) { t.Fatalf("List returned an unexpected error %s", err) } } else { + // Since the order of returned slice is not guaranteed + // Check both and return error if both don't match + sort.Slice(got, func(i, j int) bool { + return got[i].UUID < got[i].UUID + }) + // Sort both as it is not expected that testCase.expected + // is sorted + sort.Slice(testCase.expected, func(i, j int) bool { + return testCase.expected[i].UUID < testCase.expected[i].UUID + }) + if reflect.DeepEqual(testCase.expected, got) == false { t.Errorf("List Resource Bundle returned unexpected body: got %v;"+ " expected %v", got, testCase.expected) @@ -154,7 +166,7 @@ func TestList(t *testing.T) { } } -func TestGet(t *testing.T) { +func TestGetDefinition(t *testing.T) { testCases := []struct { label string @@ -214,7 +226,7 @@ func TestGet(t *testing.T) { } } -func TestDelete(t *testing.T) { +func TestDeleteDefinition(t *testing.T) { testCases := []struct { label string @@ -253,7 +265,7 @@ func TestDelete(t *testing.T) { } } -func TestUpload(t *testing.T) { +func TestUploadDefinition(t *testing.T) { testCases := []struct { label string inp string @@ -325,7 +337,7 @@ func TestUpload(t *testing.T) { "123e4567-e89b-12d3-a456-426655441111": []byte( "{\"name\":\"testresourcebundle\"," + "\"description\":\"testresourcebundle\"," + - "\"uuid\":\"123e4567-e89b-12d3-a456-426655440000\"," + + "\"uuid\":\"123e4567-e89b-12d3-a456-426655441111\"," + "\"service-type\":\"firewall\"}"), }, }, |