File tree 1 file changed +6
-13
lines changed
1 file changed +6
-13
lines changed Original file line number Diff line number Diff line change @@ -114,20 +114,13 @@ func copyExportedFields(expected interface{}) interface{} {
114
114
result .Elem ().Set (reflect .ValueOf (unexportedRemoved ))
115
115
return result .Interface ()
116
116
117
- case reflect .Array :
118
- result := reflect .New (reflect .ArrayOf (expectedValue .Len (), expectedType .Elem ())).Elem ()
119
- for i := 0 ; i < expectedValue .Len (); i ++ {
120
- index := expectedValue .Index (i )
121
- if isNil (index ) {
122
- continue
123
- }
124
- unexportedRemoved := copyExportedFields (index .Interface ())
125
- result .Index (i ).Set (reflect .ValueOf (unexportedRemoved ))
117
+ case reflect .Array , reflect .Slice :
118
+ var result reflect.Value
119
+ if expectedKind == reflect .Array {
120
+ result = reflect .New (reflect .ArrayOf (expectedValue .Len (), expectedType .Elem ())).Elem ()
121
+ } else {
122
+ result = reflect .MakeSlice (expectedType , expectedValue .Len (), expectedValue .Len ())
126
123
}
127
- return result .Interface ()
128
-
129
- case reflect .Slice :
130
- result := reflect .MakeSlice (expectedType , expectedValue .Len (), expectedValue .Len ())
131
124
for i := 0 ; i < expectedValue .Len (); i ++ {
132
125
index := expectedValue .Index (i )
133
126
if isNil (index ) {
You can’t perform that action at this time.
0 commit comments