| package util |
| |
| import ( |
| "reflect" |
| "testing" |
| ) |
| |
| func TestCoder(t *testing.T) { |
| var iface iface |
| impl := &impl{} |
| iface = impl |
| tests := []interface{}{ |
| 1, |
| "string", |
| impl, |
| iface, |
| } |
| for _, item := range tests { |
| b64, err := Base64VomEncode(item) |
| if err != nil { |
| t.Errorf("Failed to encode %T=%#v: %v", item, item, err) |
| continue |
| } |
| var decoded interface{} |
| if err = Base64VomDecode(b64, &decoded); err != nil { |
| t.Errorf("Failed to decode %T=%#v: %v", item, item, err) |
| continue |
| } |
| if !reflect.DeepEqual(decoded, item) { |
| t.Errorf("Got (%T, %#v) want (%T, %#v)", decoded, decoded, item, item) |
| } |
| } |
| } |