File tree 1 file changed +23
-0
lines changed
1 file changed +23
-0
lines changed Original file line number Diff line number Diff line change @@ -127,3 +127,26 @@ func TestSetMapMalformed(t *testing.T) {
127
127
err := setMap (reflect .ValueOf (& m ).Elem (), entries , true )
128
128
assert .Error (t , err )
129
129
}
130
+
131
+ func TestSetSliceOrMapErrors (t * testing.T ) {
132
+ var err error
133
+ var dest reflect.Value
134
+
135
+ // converting a slice to a reflect.Value in this way will make it read only
136
+ var cannotSet []int
137
+ dest = reflect .ValueOf (cannotSet )
138
+ err = setSliceOrMap (dest , nil , false )
139
+ assert .Error (t , err )
140
+
141
+ // check what happens when we pass in something that is not a slice or a map
142
+ var notSliceOrMap string
143
+ dest = reflect .ValueOf (& notSliceOrMap ).Elem ()
144
+ err = setSliceOrMap (dest , nil , false )
145
+ assert .Error (t , err )
146
+
147
+ // check what happens when we pass in a pointer to something that is not a slice or a map
148
+ var stringPtr * string
149
+ dest = reflect .ValueOf (& stringPtr ).Elem ()
150
+ err = setSliceOrMap (dest , nil , false )
151
+ assert .Error (t , err )
152
+ }
You can’t perform that action at this time.
0 commit comments