panic(fmt.Sprintf("dest not addressable: %T", dest))
}
if sV.Kind() == reflect.String {
- sV = sV.Convert(dV.Type())
+ sV = sV.Convert(reflect.SliceOf(dV.Type().Elem()))
}
if dV.Len() != sV.Len() {
panic(fmt.Sprintf("dest len (%d) != src len (%d)", dV.Len(), sV.Len()))
}()
CopyExact(make([]byte, 2), "abc")
}
+
+func TestCopySrcString(t *testing.T) {
+ dest := make([]byte, 3)
+ CopyExact(dest, "lol")
+ if string(dest) != "lol" {
+ t.FailNow()
+ }
+ defer func() {
+ r := recover()
+ if r == nil {
+ t.FailNow()
+ }
+ }()
+ CopyExact(dest, "rofl")
+}