From 172e2657ba67ba0a8e505a5e0f179fb4e2c7845f Mon Sep 17 00:00:00 2001 From: Sunny Aggarwal Date: Thu, 28 Feb 2019 12:50:41 -0800 Subject: [PATCH] Merge PR #3765: testing sequence increment if not enough balance for send --- x/bank/app_test.go | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/x/bank/app_test.go b/x/bank/app_test.go index 824f48670b..778ace5a6d 100644 --- a/x/bank/app_test.go +++ b/x/bank/app_test.go @@ -104,6 +104,36 @@ func getInitChainer(mapp *mock.App, keeper BaseKeeper) sdk.InitChainer { } } +func TestSendNotEnoughBalance(t *testing.T) { + mapp := getMockApp(t) + acc := &auth.BaseAccount{ + Address: addr1, + Coins: sdk.Coins{sdk.NewInt64Coin("foocoin", 67)}, + } + + mock.SetGenesis(mapp, []auth.Account{acc}) + + ctxCheck := mapp.BaseApp.NewContext(true, abci.Header{}) + + res1 := mapp.AccountKeeper.GetAccount(ctxCheck, addr1) + require.NotNil(t, res1) + require.Equal(t, acc, res1.(*auth.BaseAccount)) + + origAccNum := res1.GetAccountNumber() + origSeq := res1.GetSequence() + + sendMsg := NewMsgSend(addr1, addr2, sdk.Coins{sdk.NewInt64Coin("foocoin", 100)}) + mock.SignCheckDeliver(t, mapp.Cdc, mapp.BaseApp, []sdk.Msg{sendMsg}, []uint64{origAccNum}, []uint64{origSeq}, false, false, priv1) + + mock.CheckBalance(t, mapp, addr1, sdk.Coins{sdk.NewInt64Coin("foocoin", 67)}) + + res2 := mapp.AccountKeeper.GetAccount(mapp.NewContext(true, abci.Header{}), addr1) + require.NotNil(t, res2) + + require.True(t, res2.GetAccountNumber() == origAccNum) + require.True(t, res2.GetSequence() == origSeq+1) +} + func TestMsgMultiSendWithAccounts(t *testing.T) { mapp := getMockApp(t) acc := &auth.BaseAccount{