2021-12-04 16:42:11 +00:00

31 lines
602 B
Go

package jsonrpc
import (
"testing"
"github.com/intel-go/fastjson"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func TestUnmarshal(t *testing.T) {
err := Unmarshal(nil, nil)
require.IsType(t, &Error{}, err)
assert.Equal(t, ErrorCodeInvalidParams, err.Code)
src := fastjson.RawMessage([]byte(`{"name":"john"}`))
Unmarshal(&src, nil)
require.IsType(t, &Error{}, err)
assert.Equal(t, ErrorCodeInvalidParams, err.Code)
dst := struct {
Name string `json:"name"`
}{}
err = Unmarshal(&src, &dst)
require.Nil(t, err)
assert.Equal(t, "john", dst.Name)
}