From a52e604966dcaec9af1b079a78db0c421605c066 Mon Sep 17 00:00:00 2001 From: Alex Peters Date: Mon, 6 Mar 2023 11:40:30 +0100 Subject: [PATCH] Test rust panic for regression --- x/wasm/keeper/reflect_test.go | 23 ++++++++++++++++++++ x/wasm/keeper/testdata/cyberpunk.wasm | Bin 0 -> 170223 bytes x/wasm/keeper/testdata/download_releases.sh | 2 +- x/wasm/keeper/testdata/reflect.go | 7 ++++++ 4 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 x/wasm/keeper/testdata/cyberpunk.wasm diff --git a/x/wasm/keeper/reflect_test.go b/x/wasm/keeper/reflect_test.go index 1336be7fee..0d61867a7b 100644 --- a/x/wasm/keeper/reflect_test.go +++ b/x/wasm/keeper/reflect_test.go @@ -542,6 +542,29 @@ func TestWasmRawQueryWithNil(t *testing.T) { require.Equal(t, []byte{}, reflectRawRes.Data) } +func TestRustPanicIsHandled(t *testing.T) { + ctx, keepers := CreateTestInput(t, false, ReflectFeatures) + keeper := keepers.ContractKeeper + + creator := keepers.Faucet.NewFundedRandomAccount(ctx, sdk.NewCoins(sdk.NewInt64Coin("denom", 100000))...) + + // upload code + codeID, _, err := keeper.Create(ctx, creator, testdata.CyberpunkContractWasm(), nil) + require.NoError(t, err) + require.Equal(t, uint64(1), codeID) + + contractAddr, _, err := keeper.Instantiate(ctx, codeID, creator, nil, []byte("{}"), "cyberpunk contract", nil) + require.NoError(t, err) + require.NotEmpty(t, contractAddr) + + // when panic is triggered + msg := []byte(`{"panic":{}}`) + gotData, err := keeper.Execute(ctx, contractAddr, creator, msg, nil) + require.ErrorIs(t, err, types.ErrExecuteFailed) + assert.Contains(t, err.Error(), "panicked at 'This page intentionally faulted'") + assert.Nil(t, gotData) +} + func checkAccount(t *testing.T, ctx sdk.Context, accKeeper authkeeper.AccountKeeper, bankKeeper bankkeeper.Keeper, addr sdk.AccAddress, expected sdk.Coins) { acct := accKeeper.GetAccount(ctx, addr) if expected == nil { diff --git a/x/wasm/keeper/testdata/cyberpunk.wasm b/x/wasm/keeper/testdata/cyberpunk.wasm new file mode 100644 index 0000000000000000000000000000000000000000..355804ad13f49c83f56c0cf52c18dedfc962476e GIT binary patch literal 170223 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

Ec=)OE9QK&hLVY7q<3DG{S@*9P@=U*{gaLUn7$! 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℘?Kb+RQ<;6YEZQE9C-u}@?@7?Y^ox3Fet$QzVe$afW^Xzjw z+Mml^{^_6Id&M_jc9c3Mem5E7X$V@X-do`IDtkOll6r5h>v^jnAaM@@>YnDsI8c;u zf&}hNZx-Z*)RdieQ?YvQH1{0xHjr~M#ZxMS>BduD#+0fiQK_f!d~X%)3u{^6ZgO?@ zyX&UiOI$D2knY#_F_IU0^C-`CyQjI-n8>&b>)fHZo1{_R94{Vgit~*CFX`er5p!Y- zywmu%hEpihu9vBEA?xnA*W&Ku*!em)8T%nXptUKL=%thOp4)zUN4%YI!d+a~z;TTv zi1iRj##nFK^FA1J8{L#DjCo&M>9m(R zEq+(b>5eZ?yVKlR33oar%`l}Tz*u*6+)0h5oW6+{?O8?A!%Kb(uk(@9Tex0gef?c7 OtwXaPd;q!Eb^i}FF2v9P literal 0 HcmV?d00001 diff --git a/x/wasm/keeper/testdata/download_releases.sh b/x/wasm/keeper/testdata/download_releases.sh index 2757613968..544cdd2e88 100755 --- a/x/wasm/keeper/testdata/download_releases.sh +++ b/x/wasm/keeper/testdata/download_releases.sh @@ -9,7 +9,7 @@ fi tag="$1" -for contract in burner hackatom ibc_reflect ibc_reflect_send reflect staking; do +for contract in burner hackatom ibc_reflect ibc_reflect_send reflect staking cyberpunk; do url="https://github.com/CosmWasm/cosmwasm/releases/download/$tag/${contract}.wasm" echo "Downloading $url ..." wget -O "${contract}.wasm" "$url" diff --git a/x/wasm/keeper/testdata/reflect.go b/x/wasm/keeper/testdata/reflect.go index 64fed6150a..2074ef96fd 100644 --- a/x/wasm/keeper/testdata/reflect.go +++ b/x/wasm/keeper/testdata/reflect.go @@ -13,6 +13,9 @@ var reflectContract []byte //go:embed reflect_1_1.wasm var migrateReflectContract []byte +//go:embed cyberpunk.wasm +var cyberpunkContract []byte + func ReflectContractWasm() []byte { return reflectContract } @@ -21,6 +24,10 @@ func MigrateReflectContractWasm() []byte { return migrateReflectContract } +func CyberpunkContractWasm() []byte { + return cyberpunkContract +} + // ReflectHandleMsg is used to encode handle messages type ReflectHandleMsg struct { Reflect *ReflectPayload `json:"reflect_msg,omitempty"`