1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
// Copyright 2019-present Facebook Inc. All rights reserved.
// This source code is licensed under the Apache 2.0 license found
// in the LICENSE file in the root directory of this source tree.
package graphson
import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func TestRawMessageEncoding(t *testing.T) {
var s struct{ M RawMessage }
got, err := MarshalToString(s)
require.NoError(t, err)
assert.Equal(t, `{"M":null}`, got)
s.M = []byte(`"155a"`)
got, err = MarshalToString(s)
require.NoError(t, err)
assert.JSONEq(t, `{"M": "155a"}`, got)
err = (*RawMessage)(nil).UnmarshalGraphson(s.M)
assert.Error(t, err)
s.M = nil
err = UnmarshalFromString(got, &s)
require.NoError(t, err)
assert.Equal(t, `"155a"`, string(s.M))
}
|