cosmos-sdk/server/util_test.go

42 lines
899 B
Go
Raw Normal View History

2018-04-21 19:26:46 -07:00
package server
import (
"encoding/json"
"testing"
"github.com/stretchr/testify/require"
2018-12-10 06:27:25 -08:00
"github.com/cosmos/cosmos-sdk/codec"
2018-04-21 19:26:46 -07:00
)
func TestInsertKeyJSON(t *testing.T) {
cdc := codec.New()
2018-04-21 19:26:46 -07:00
foo := map[string]string{"foo": "foofoo"}
bar := map[string]string{"barInner": "barbar"}
// create raw messages
bz, err := cdc.MarshalJSON(foo)
require.NoError(t, err)
fooRaw := json.RawMessage(bz)
bz, err = cdc.MarshalJSON(bar)
require.NoError(t, err)
barRaw := json.RawMessage(bz)
// make the append
appBz, err := InsertKeyJSON(cdc, fooRaw, "barOuter", barRaw)
2018-04-21 19:26:46 -07:00
require.NoError(t, err)
// test the append
var appended map[string]json.RawMessage
err = cdc.UnmarshalJSON(appBz, &appended)
require.NoError(t, err)
var resBar map[string]string
err = cdc.UnmarshalJSON(appended["barOuter"], &resBar)
require.NoError(t, err)
require.Equal(t, bar, resBar, "appended: %v", appended)
2018-04-21 19:26:46 -07:00
}