src: add tests

Tests for mergeEnvMaps.

Signed-off-by: Matej Vasek <mvasek@redhat.com>
This commit is contained in:
Matej Vasek 2021-05-13 15:01:33 +02:00 committed by GitHub
parent 1595b5bb48
commit a72a9a858a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 58 additions and 0 deletions

58
cmd/root_test.go Normal file
View File

@ -0,0 +1,58 @@
package cmd
import (
"reflect"
"testing"
)
func Test_mergeEnvMaps(t *testing.T) {
type args struct {
dest map[string]string
src map[string]string
}
tests := []struct {
name string
args args
want map[string]string
}{
{
"add new var",
args{
map[string]string{"A": "1"},
map[string]string{"B": "2"},
},
map[string]string{"A": "1", "B": "2"},
},
{
"update var",
args{
map[string]string{"A": "1"},
map[string]string{"A": "2"},
},
map[string]string{"A": "2"},
},
{
"remove var",
args{
map[string]string{"A": "1"},
map[string]string{"A-": ""},
},
map[string]string{"A-": ""},
},
{
"re-add var",
args{
map[string]string{"A-": ""},
map[string]string{"A": "1"},
},
map[string]string{"A": "1"},
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
if got := mergeEnvMaps(tt.args.dest, tt.args.src); !reflect.DeepEqual(got, tt.want) {
t.Errorf("mergeEnvMaps() = %v, want %v", got, tt.want)
}
})
}
}