blob: 257d9480942f6889e940c65372cb5686235cfa71 [file] [log] [blame]
package testhelpers
import (
"fmt"
"reflect"
"testing"
)
func TestToMap(t *testing.T) {
type s struct {
A string `json:"a"`
B []byte `json:"b"`
C map[string]string `json:"c"`
D string `json:"-"`
}
type args struct {
in s
}
tests := []struct {
name string
args args
want string
wantErr bool
}{
{
name: "basic",
args: args{s{A: "a", B: []byte("bytes"), C: map[string]string{"k": "v"}, D: "d"}},
want: "map[a:a b:277089d91c0bdf4f2e6862ba7e4a07605119431f5d13f726dd352b06f1b206a9 c:map[k:v]]",
wantErr: false,
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
m, err := ToMap(&tt.args.in)
if (err != nil) != tt.wantErr {
t.Errorf("ToMap() error = %v, wantErr %v", err, tt.wantErr)
return
}
got := fmt.Sprintf("%s", m)
if !reflect.DeepEqual(got, tt.want) {
t.Errorf("ToMap() got = %v, want %v", got, tt.want)
}
})
}
}