From 8109749b3ef7378913953135f986c307d5f159a9 Mon Sep 17 00:00:00 2001 From: Zaq? Wiedmann Date: Tue, 17 May 2022 21:14:57 -0700 Subject: [PATCH] add test for deepMerge panic --- pr211_2_test.go | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 pr211_2_test.go diff --git a/pr211_2_test.go b/pr211_2_test.go new file mode 100644 index 0000000..df4c575 --- /dev/null +++ b/pr211_2_test.go @@ -0,0 +1,25 @@ +package mergo + +import ( + "reflect" + "testing" + "time" +) + +type transformer struct { +} + +func (s *transformer) Transformer(t reflect.Type) func(dst, src reflect.Value) error { + return nil +} + +func Test_deepMergeTransformerInvalidDestination(t *testing.T) { + foo := time.Time{} + src := reflect.ValueOf(foo) + deepMerge(reflect.Value{}, src, make(map[uintptr]*visit), 0, &Config{ + Transformers: &transformer{}, + }) + // this test is intentionally not asserting on anything, it's sole + // purpose to verify deepMerge doesn't panic when a transformer is + // passed and the destination is invalid. +}