diff --git a/pkg/collections/collection_test.go b/pkg/collections/collection_test.go index 26be4e257a545c5952e9ff190965d89abdebbe09..79e16a8e6a397418ef2418979bf0e38947b730c8 100644 --- a/pkg/collections/collection_test.go +++ b/pkg/collections/collection_test.go @@ -7,63 +7,96 @@ import ( ) func TestView_Equal(t *testing.T) { - tests := []struct { - name string - input1 *View - input2 *View - output bool + testCases := []struct { + name string + view1 *View + view2 *View + want bool }{ { - name: "v==nil,v1==nil", - input1: nil, - input2: nil, - output: true, + name: "Both views are nil", + view1: nil, + view2: nil, + want: true, }, { - name: "v!=nil,v1==nil", - input1: &View{}, - input2: nil, - output: false, + name: "View1 is nil", + view1: nil, + view2: &View{}, + want: false, }, { - name: "v==nil,v1!=nil", - input1: nil, - input2: &View{}, - output: false, + name: "View2 is nil", + view1: &View{}, + view2: nil, + want: false, }, { - name: "v!=nil,v1!=nil,v!=v1", - input1: &View{ + name: "Different views", + view1: &View{ + SpaceID: "spaceID1", + EnvID: "envID1", + CollectionID: "collectionID1", + Filter: "filter1", + }, + view2: &View{ + SpaceID: "spaceID2", + EnvID: "envID2", + CollectionID: "collectionID2", + Filter: "filter2", + }, + want: false, + }, + { + name: "Equal views", + view1: &View{ SpaceID: "spaceID", EnvID: "envID", CollectionID: "collectionID", Filter: "filter", }, - input2: &View{}, - output: false, + view2: &View{ + SpaceID: "spaceID", + EnvID: "envID", + CollectionID: "collectionID", + Filter: "filter", + }, + want: true, }, { - name: "v!=nil,v1!=nil,v==v1", - input1: &View{ + name: "Empty view1 and non-empty view2", + view1: &View{}, + view2: &View{ SpaceID: "spaceID", EnvID: "envID", CollectionID: "collectionID", Filter: "filter", }, - input2: &View{ + want: false, + }, + { + name: "Empty view2 and non-empty view1", + view1: &View{ SpaceID: "spaceID", EnvID: "envID", CollectionID: "collectionID", Filter: "filter", }, - output: true, + view2: &View{}, + want: false, + }, + { + name: "Empty view1 and view2", + view1: &View{}, + view2: &View{}, + want: true, }, } - for _, tc := range tests { + for _, tc := range testCases { t.Run(tc.name, func(t *testing.T) { - output := tc.input1.Equal(tc.input2) - require.Equal(t, tc.output, output) + output := tc.view1.Equal(tc.view2) + require.Equal(t, tc.want, output) }) } }