From 6d8018ac59b65b74ed9822ba9fc7d7a611ab5c60 Mon Sep 17 00:00:00 2001 From: Paul Date: Sat, 25 Feb 2023 00:43:43 +0800 Subject: [PATCH] test: add unit test --- x/wasm/keeper/query_plugins_test.go | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/x/wasm/keeper/query_plugins_test.go b/x/wasm/keeper/query_plugins_test.go index c28a4462a3..fb5f6951e0 100644 --- a/x/wasm/keeper/query_plugins_test.go +++ b/x/wasm/keeper/query_plugins_test.go @@ -749,6 +749,31 @@ func TestConvertProtoToJSONMarshal(t *testing.T) { } } +func TestResetProtoMarshalerAfterJsonMarshal(t *testing.T) { + appCodec := app.MakeEncodingConfig().Marshaler + + protoMarshaler := &banktypes.QueryAllBalancesResponse{} + expected := appCodec.MustMarshalJSON(&banktypes.QueryAllBalancesResponse{ + Balances: sdk.NewCoins(sdk.NewCoin("bar", sdk.NewInt(30))), + Pagination: &query.PageResponse{ + NextKey: []byte("foo"), + }, + }) + + bz, err := hex.DecodeString("0a090a036261721202333012050a03666f6f") + require.NoError(t, err) + + // first marshal + response, err := keeper.ConvertProtoToJSONMarshal(appCodec, protoMarshaler, bz) + require.NoError(t, err) + require.Equal(t, expected, response) + + // second marshal + response, err = keeper.ConvertProtoToJSONMarshal(appCodec, protoMarshaler, bz) + require.NoError(t, err) + require.Equal(t, expected, response) +} + // TestDeterministicJsonMarshal tests that we get deterministic JSON marshalled response upon // proto struct update in the state machine. func TestDeterministicJsonMarshal(t *testing.T) {