From 9fa865e5f61acad77ec6be39d04e307477590083 Mon Sep 17 00:00:00 2001 From: Artsiom Koltun Date: Mon, 17 Jul 2023 09:59:09 +0200 Subject: [PATCH] use test response check uniformly for virtio-blk Signed-off-by: Artsiom Koltun --- pkg/frontend/blk_test.go | 47 ++++++++++++++++------------------------ 1 file changed, 19 insertions(+), 28 deletions(-) diff --git a/pkg/frontend/blk_test.go b/pkg/frontend/blk_test.go index be06e327..218cfd7c 100644 --- a/pkg/frontend/blk_test.go +++ b/pkg/frontend/blk_test.go @@ -6,7 +6,6 @@ package frontend import ( - "bytes" "fmt" "reflect" "testing" @@ -85,15 +84,9 @@ func TestFrontEnd_CreateVirtioBlk(t *testing.T) { request := &pb.CreateVirtioBlkRequest{VirtioBlk: tt.in, VirtioBlkId: tt.id} response, err := testEnv.client.CreateVirtioBlk(testEnv.ctx, request) - if response != nil { - wantOut, _ := proto.Marshal(tt.out) - gotOut, _ := proto.Marshal(response) - if !bytes.Equal(wantOut, gotOut) { - t.Error("response: expected", tt.out, "received", response) - } - } else if tt.out != nil { - t.Error("response: expected", tt.out, "received nil") + if !proto.Equal(tt.out, response) { + t.Error("response: expected", tt.out, "received", response) } if er, ok := status.FromError(err); ok { @@ -197,8 +190,9 @@ func TestFrontEnd_UpdateVirtioBlk(t *testing.T) { request := &pb.UpdateVirtioBlkRequest{VirtioBlk: tt.in, UpdateMask: tt.mask, AllowMissing: tt.missing} response, err := testEnv.client.UpdateVirtioBlk(testEnv.ctx, request) - if response != nil { - t.Error("response: expected", codes.Unimplemented, "received", response) + + if !proto.Equal(tt.out, response) { + t.Error("response: expected", tt.out, "received", response) } if er, ok := status.FromError(err); ok { @@ -387,14 +381,13 @@ func TestFrontEnd_ListVirtioBlks(t *testing.T) { request := &pb.ListVirtioBlksRequest{Parent: tt.in, PageSize: tt.size, PageToken: tt.token} response, err := testEnv.client.ListVirtioBlks(testEnv.ctx, request) - if response != nil { - if !reflect.DeepEqual(response.VirtioBlks, tt.out) { - t.Error("response: expected", tt.out, "received", response.VirtioBlks) - } - // Empty NextPageToken indicates end of results list - if tt.size != 1 && response.NextPageToken != "" { - t.Error("Expected end of results, receieved non-empty next page token", response.NextPageToken) - } + if !server.EqualProtoSlices(response.GetVirtioBlks(), tt.out) { + t.Error("response: expected", tt.out, "received", response.GetVirtioBlks()) + } + + // Empty NextPageToken indicates end of results list + 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 { @@ -493,12 +486,9 @@ func TestFrontEnd_GetVirtioBlk(t *testing.T) { request := &pb.GetVirtioBlkRequest{Name: tt.in} response, err := testEnv.client.GetVirtioBlk(testEnv.ctx, request) - if response != nil { - wantOut, _ := proto.Marshal(tt.out) - gotOut, _ := proto.Marshal(response) - if !bytes.Equal(wantOut, gotOut) { - t.Error("response: expected", tt.out, "received", response) - } + + if !proto.Equal(tt.out, response) { + t.Error("response: expected", tt.out, "received", response) } if er, ok := status.FromError(err); ok { @@ -526,7 +516,7 @@ func TestFrontEnd_VirtioBlkStats(t *testing.T) { }{ "unimplemented method": { testVirtioCtrlID, - &pb.VolumeStats{}, + nil, []string{""}, codes.Unimplemented, fmt.Sprintf("%v method is not implemented", "VirtioBlkStats"), @@ -560,8 +550,9 @@ func TestFrontEnd_VirtioBlkStats(t *testing.T) { request := &pb.VirtioBlkStatsRequest{ControllerId: &pc.ObjectKey{Value: tt.in}} response, err := testEnv.client.VirtioBlkStats(testEnv.ctx, request) - if response != nil { - t.Error("response: expected", codes.Unimplemented, "received", response) + + if !proto.Equal(tt.out, response.GetStats()) { + t.Error("response: expected", tt.out, "received", response.GetStats()) } if er, ok := status.FromError(err); ok {