Skip to content

Commit

Permalink
use test response check uniformly for nvme controller
Browse files Browse the repository at this point in the history
Signed-off-by: Artsiom Koltun <[email protected]>
  • Loading branch information
artek-koltun committed Jul 17, 2023
1 parent 9fa865e commit cd31d53
Showing 1 changed file with 21 additions and 34 deletions.
55 changes: 21 additions & 34 deletions pkg/frontend/nvme_controller_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
package frontend

import (
"bytes"
"fmt"
"net"
"reflect"
Expand Down Expand Up @@ -191,12 +190,9 @@ func TestFrontEnd_CreateNvmeController(t *testing.T) {

request := &pb.CreateNvmeControllerRequest{NvmeController: tt.in, NvmeControllerId: tt.id}
response, err := testEnv.client.CreateNvmeController(testEnv.ctx, request)
if response != nil {
mtt, _ := proto.Marshal(tt.out)
mResponse, _ := proto.Marshal(response)
if !bytes.Equal(mtt, mResponse) {
t.Error("response: expected", tt.out, "received", response)
}

if !proto.Equal(response, tt.out) {
t.Error("response: expected", tt.out, "received", response)
}

if er, ok := status.FromError(err); ok {
Expand Down Expand Up @@ -422,18 +418,9 @@ func TestFrontEnd_UpdateNvmeController(t *testing.T) {

request := &pb.UpdateNvmeControllerRequest{NvmeController: tt.in, UpdateMask: tt.mask, AllowMissing: tt.missing}
response, err := testEnv.client.UpdateNvmeController(testEnv.ctx, request)
if response != nil {
// Marshall the request and response, so we can just compare the contained data
mtt, _ := proto.Marshal(tt.out.Spec)
mResponse, _ := proto.Marshal(response.Spec)

// Compare the marshalled messages
if !bytes.Equal(mtt, mResponse) {
t.Error("response: expected", tt.out.GetSpec(), "received", response.GetSpec())
}
if !reflect.DeepEqual(response.Status, tt.out.Status) {
t.Error("response: expected", tt.out.GetStatus(), "received", response.GetStatus())
}

if !proto.Equal(response, tt.out) {
t.Error("response: expected", tt.out, "received", response)
}

if er, ok := status.FromError(err); ok {
Expand Down Expand Up @@ -518,12 +505,17 @@ func TestFrontEnd_ListNvmeControllers(t *testing.T) {

request := &pb.ListNvmeControllersRequest{Parent: tt.in, PageSize: tt.size, PageToken: tt.token}
response, err := testEnv.client.ListNvmeControllers(testEnv.ctx, request)
if response != nil {
if !reflect.DeepEqual(response.NvmeControllers, tt.out) {
t.Error("response: expected", tt.out, "received", response.NvmeControllers)
}

if !server.EqualProtoSlices(response.GetNvmeControllers(), tt.out) {
t.Error("response: expected", tt.out, "received", response.GetNvmeControllers())
}

// Empty NextPageToken indicates end of results list
// TODO: uncomment when method is properly implemented
// if tt.size != 1 && response.GetNextPageToken() != "" {
// t.Error("Expected end of results, received non-empty next page token", response.GetNextPageToken())
// }

if er, ok := status.FromError(err); ok {
if er.Code() != tt.errCode {
t.Error("error code: expected", tt.errCode, "received", er.Code())
Expand Down Expand Up @@ -591,13 +583,9 @@ func TestFrontEnd_GetNvmeController(t *testing.T) {

request := &pb.GetNvmeControllerRequest{Name: tt.in}
response, err := testEnv.client.GetNvmeController(testEnv.ctx, request)
if response != nil {
if !reflect.DeepEqual(response.Spec, tt.out.Spec) {
t.Error("response: expected", tt.out.GetSpec(), "received", response.GetSpec())
}
if !reflect.DeepEqual(response.Status, tt.out.Status) {
t.Error("response: expected", tt.out.GetStatus(), "received", response.GetStatus())
}

if !proto.Equal(response, tt.out) {
t.Error("response: expected", tt.out, "received", response)
}

if er, ok := status.FromError(err); ok {
Expand Down Expand Up @@ -662,10 +650,9 @@ func TestFrontEnd_NvmeControllerStats(t *testing.T) {

request := &pb.NvmeControllerStatsRequest{Id: &pc.ObjectKey{Value: tt.in}}
response, err := testEnv.client.NvmeControllerStats(testEnv.ctx, request)
if response != nil {
if !reflect.DeepEqual(response.Stats, tt.out) {
t.Error("response: expected", tt.out, "received", response.Stats)
}

if !proto.Equal(response.GetStats(), tt.out) {
t.Error("response: expected", tt.out, "received", response.GetStats())
}

if er, ok := status.FromError(err); ok {
Expand Down

0 comments on commit cd31d53

Please sign in to comment.