github.com/nspcc-dev/neo-go@v0.105.2-0.20240517133400-6be757af3eba/pkg/smartcontract/binding/override_test.go (about) 1 package binding 2 3 import ( 4 "testing" 5 6 "github.com/stretchr/testify/require" 7 ) 8 9 func TestNewOverrideFromString(t *testing.T) { 10 testCases := []struct { 11 expected Override 12 value string 13 }{ 14 {Override{"import.com/pkg", "pkg.Type"}, "import.com/pkg.Type"}, 15 {Override{"", "map[int]int"}, "map[int]int"}, 16 {Override{"", "[]int"}, "[]int"}, 17 {Override{"", "map[int][]int"}, "map[int][]int"}, 18 {Override{"import.com/pkg", "map[int]pkg.Type"}, "map[int]import.com/pkg.Type"}, 19 {Override{"import.com/pkg", "[]pkg.Type"}, "[]import.com/pkg.Type"}, 20 {Override{"import.com/pkg", "map[int]*pkg.Type"}, "map[int]*import.com/pkg.Type"}, 21 {Override{"import.com/pkg", "[]*pkg.Type"}, "[]*import.com/pkg.Type"}, 22 {Override{"import.com/pkg", "[][]*pkg.Type"}, "[][]*import.com/pkg.Type"}, 23 {Override{"import.com/pkg", "map[string][]pkg.Type"}, "map[string][]import.com/pkg.Type"}} 24 25 for _, tc := range testCases { 26 require.Equal(t, tc.expected, NewOverrideFromString(tc.value)) 27 28 s, err := tc.expected.MarshalYAML() 29 require.NoError(t, err) 30 require.Equal(t, tc.value, s) 31 } 32 }