...

Source file src/github.com/aws/aws-sdk-go-v2/internal/awsutil/equal_test.go

Documentation: github.com/aws/aws-sdk-go-v2/internal/awsutil

     1  package awsutil_test
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/aws/aws-sdk-go-v2/internal/awsutil"
     7  	"github.com/aws/smithy-go/ptr"
     8  )
     9  
    10  func TestDeepEqual(t *testing.T) {
    11  	type StringAlias string
    12  
    13  	cases := []struct {
    14  		a, b  interface{}
    15  		equal bool
    16  	}{
    17  		{"a", "a", true},
    18  		{"a", "b", false},
    19  		{"a", ptr.String(""), false},
    20  		{"a", nil, false},
    21  		{"a", ptr.String("a"), true},
    22  		{(*bool)(nil), (*bool)(nil), true},
    23  		{(*bool)(nil), (*string)(nil), false},
    24  		{nil, nil, true},
    25  		{StringAlias("abc"), "abc", true},
    26  		{StringAlias("abc"), "efg", false},
    27  		{StringAlias("abc"), ptr.String("abc"), true},
    28  		{"abc", StringAlias("abc"), true},
    29  		{StringAlias("abc"), StringAlias("abc"), true},
    30  		{StringAlias("abc"), StringAlias("efg"), false},
    31  	}
    32  
    33  	for i, c := range cases {
    34  		if awsutil.DeepEqual(c.a, c.b) != c.equal {
    35  			t.Errorf("%d, a:%v b:%v, %t", i, c.a, c.b, c.equal)
    36  		}
    37  	}
    38  }
    39  

View as plain text