From 615139b853eab81f31efd9a79d61c7e7dcdb2135 Mon Sep 17 00:00:00 2001 From: Rob Rodriguez Date: Mon, 10 Dec 2018 18:23:23 -0800 Subject: [PATCH] making test friendly with all dialects --- encoder_test.go | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/encoder_test.go b/encoder_test.go index 14784ace..72503033 100644 --- a/encoder_test.go +++ b/encoder_test.go @@ -53,20 +53,26 @@ func (m *WidgetUser) EncodeField(column string) (interface{}, error) { func (m *WidgetUser) DecodeField(column string, value interface{}) error { switch column { case "widget": - b, ok := value.([]byte) - if !ok { + var src []byte + switch data := value.(type) { + case string: + src = []byte(data) + case []byte: + src = data + default: return errors.New("Invalid type for Widget") } + switch m.WidgetType { case "simple": var result SimpleWidget - if err := json.Unmarshal(b, &result); err != nil { + if err := json.Unmarshal(src, &result); err != nil { return err } m.Widget = &result case "complex": var result ComplexWidget - if err := json.Unmarshal(b, &result); err != nil { + if err := json.Unmarshal(src, &result); err != nil { return err } m.Widget = &result