package models import ( "testing" "github.com/stretchr/testify/assert" ) func TestMetadataEqual(t *testing.T) { tests := []struct { Name string Left Metadata Right Metadata ExpectedResult bool }{ { Name: "Equal", Left: map[string]string{ "key1": "value1", "key2": "value2", "key3": "value3", }, Right: map[string]string{ "key1": "value1", "key2": "value2", "key3": "value3", }, ExpectedResult: true, }, { Name: "Left diff", Left: map[string]string{ "key1": "value1", "key2": "value2", "key3": "value3", }, Right: map[string]string{ "key1": "value1", "key2": "value2", }, ExpectedResult: false, }, { Name: "Right diff", Left: map[string]string{ "key1": "value1", "key2": "value2", }, Right: map[string]string{ "key1": "value1", "key2": "value2", "key3": "value3", }, ExpectedResult: false, }, { Name: "Complete diff", Left: map[string]string{ "key1": "value1", "key2": "value2", "key3": "value3", }, Right: map[string]string{ "key4": "value4", "key5": "value5", "key6": "value6", }, ExpectedResult: false, }, } for _, test := range tests { t.Run(test.Name, func(t *testing.T) { match := test.Left.Equal(test.Right) assert.Equal(t, test.ExpectedResult, match) }) } }