From 3bd1bac77fd95327a4d19046da01d4acf6452273 Mon Sep 17 00:00:00 2001 From: Brandon Weng <18161326+BrandonWeng@users.noreply.github.com> Date: Fri, 28 Oct 2022 09:15:08 -0400 Subject: [PATCH] Fix Unit test --- x/tokenfactory/keeper/admins_test.go | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/x/tokenfactory/keeper/admins_test.go b/x/tokenfactory/keeper/admins_test.go index 414519f320..0c3f3632c7 100644 --- a/x/tokenfactory/keeper/admins_test.go +++ b/x/tokenfactory/keeper/admins_test.go @@ -17,11 +17,14 @@ func (suite *KeeperTestSuite) TestAdminMsgs() { queryRes, err := suite.queryClient.DenomAuthorityMetadata(suite.Ctx.Context(), &types.QueryDenomAuthorityMetadataRequest{ Denom: suite.defaultDenom, }) + suite.App.BankKeeper.WriteDeferredOperations(suite.Ctx) suite.Require().NoError(err) suite.Require().Equal(suite.TestAccs[0].String(), queryRes.AuthorityMetadata.Admin) // Test minting to admins own account _, err = suite.msgServer.Mint(sdk.WrapSDKContext(suite.Ctx), types.NewMsgMint(suite.TestAccs[0].String(), sdk.NewInt64Coin(suite.defaultDenom, 10))) + suite.App.BankKeeper.WriteDeferredOperations(suite.Ctx) + addr0bal += 10 suite.Require().NoError(err) suite.Require().True(suite.App.BankKeeper.GetBalance(suite.Ctx, suite.TestAccs[0], suite.defaultDenom).Amount.Int64() == addr0bal, suite.App.BankKeeper.GetBalance(suite.Ctx, suite.TestAccs[0], suite.defaultDenom)) @@ -34,12 +37,16 @@ func (suite *KeeperTestSuite) TestAdminMsgs() { // Test burning from own account _, err = suite.msgServer.Burn(sdk.WrapSDKContext(suite.Ctx), types.NewMsgBurn(suite.TestAccs[0].String(), sdk.NewInt64Coin(suite.defaultDenom, 5))) + suite.App.BankKeeper.WriteDeferredOperations(suite.Ctx) + addr0bal -= 5 suite.Require().NoError(err) suite.Require().True(suite.App.BankKeeper.GetBalance(suite.Ctx, suite.TestAccs[1], suite.defaultDenom).Amount.Int64() == addr1bal) // Test Change Admin _, err = suite.msgServer.ChangeAdmin(sdk.WrapSDKContext(suite.Ctx), types.NewMsgChangeAdmin(suite.TestAccs[0].String(), suite.defaultDenom, suite.TestAccs[1].String())) + suite.App.BankKeeper.WriteDeferredOperations(suite.Ctx) + queryRes, err = suite.queryClient.DenomAuthorityMetadata(suite.Ctx.Context(), &types.QueryDenomAuthorityMetadataRequest{ Denom: suite.defaultDenom, }) @@ -48,16 +55,22 @@ func (suite *KeeperTestSuite) TestAdminMsgs() { // Make sure old admin can no longer do actions _, err = suite.msgServer.Burn(sdk.WrapSDKContext(suite.Ctx), types.NewMsgBurn(suite.TestAccs[0].String(), sdk.NewInt64Coin(suite.defaultDenom, 5))) + suite.App.BankKeeper.WriteDeferredOperations(suite.Ctx) + suite.Require().Error(err) // Make sure the new admin works _, err = suite.msgServer.Mint(sdk.WrapSDKContext(suite.Ctx), types.NewMsgMint(suite.TestAccs[1].String(), sdk.NewInt64Coin(suite.defaultDenom, 5))) + suite.App.BankKeeper.WriteDeferredOperations(suite.Ctx) + addr1bal += 5 suite.Require().NoError(err) suite.Require().True(suite.App.BankKeeper.GetBalance(suite.Ctx, suite.TestAccs[1], suite.defaultDenom).Amount.Int64() == addr1bal) // Try setting admin to empty _, err = suite.msgServer.ChangeAdmin(sdk.WrapSDKContext(suite.Ctx), types.NewMsgChangeAdmin(suite.TestAccs[1].String(), suite.defaultDenom, "")) + suite.App.BankKeeper.WriteDeferredOperations(suite.Ctx) + suite.Require().NoError(err) queryRes, err = suite.queryClient.DenomAuthorityMetadata(suite.Ctx.Context(), &types.QueryDenomAuthorityMetadataRequest{ Denom: suite.defaultDenom, @@ -108,6 +121,8 @@ func (suite *KeeperTestSuite) TestMintDenom() { suite.Run(fmt.Sprintf("Case %s", tc.desc), func() { // Test minting to admins own account _, err := suite.msgServer.Mint(sdk.WrapSDKContext(suite.Ctx), types.NewMsgMint(tc.admin, sdk.NewInt64Coin(tc.mintDenom, 10))) + suite.App.BankKeeper.WriteDeferredOperations(suite.Ctx) + if tc.valid { addr0bal += 10 suite.Require().NoError(err) @@ -127,6 +142,8 @@ func (suite *KeeperTestSuite) TestBurnDenom() { // mint 10 default token for testAcc[0] suite.msgServer.Mint(sdk.WrapSDKContext(suite.Ctx), types.NewMsgMint(suite.TestAccs[0].String(), sdk.NewInt64Coin(suite.defaultDenom, 10))) + suite.App.BankKeeper.WriteDeferredOperations(suite.Ctx) + addr0bal += 10 for _, tc := range []struct { @@ -168,6 +185,8 @@ func (suite *KeeperTestSuite) TestBurnDenom() { suite.Run(fmt.Sprintf("Case %s", tc.desc), func() { // Test minting to admins own account _, err := suite.msgServer.Burn(sdk.WrapSDKContext(suite.Ctx), types.NewMsgBurn(tc.admin, sdk.NewInt64Coin(tc.burnDenom, 10))) + suite.App.BankKeeper.WriteDeferredOperations(suite.Ctx) + if tc.valid { addr0bal -= 10 suite.Require().NoError(err) @@ -228,14 +247,19 @@ func (suite *KeeperTestSuite) TestChangeAdminDenom() { // Create a denom and mint res, err := suite.msgServer.CreateDenom(sdk.WrapSDKContext(suite.Ctx), types.NewMsgCreateDenom(suite.TestAccs[0].String(), "bitcoin")) + suite.App.BankKeeper.WriteDeferredOperations(suite.Ctx) suite.Require().NoError(err) testDenom := res.GetNewTokenDenom() _, err = suite.msgServer.Mint(sdk.WrapSDKContext(suite.Ctx), types.NewMsgMint(suite.TestAccs[0].String(), sdk.NewInt64Coin(testDenom, 10))) + suite.App.BankKeeper.WriteDeferredOperations(suite.Ctx) + suite.Require().NoError(err) _, err = suite.msgServer.ChangeAdmin(sdk.WrapSDKContext(suite.Ctx), tc.msgChangeAdmin(testDenom)) + suite.App.BankKeeper.WriteDeferredOperations(suite.Ctx) + if tc.expectedChangeAdminPass { suite.Require().NoError(err) } else { @@ -258,6 +282,8 @@ func (suite *KeeperTestSuite) TestChangeAdminDenom() { // we test mint to test if admin authority is performed properly after admin change. if tc.msgMint != nil { _, err := suite.msgServer.Mint(sdk.WrapSDKContext(suite.Ctx), tc.msgMint(testDenom)) + suite.App.BankKeeper.WriteDeferredOperations(suite.Ctx) + if tc.expectedMintPass { suite.Require().NoError(err) } else {