github.com/Finschia/finschia-sdk@v0.49.1/x/auth/ante/ext_test.go (about) 1 package ante_test 2 3 import ( 4 "github.com/Finschia/finschia-sdk/codec/types" 5 "github.com/Finschia/finschia-sdk/testutil/testdata" 6 sdk "github.com/Finschia/finschia-sdk/types" 7 "github.com/Finschia/finschia-sdk/x/auth/ante" 8 "github.com/Finschia/finschia-sdk/x/auth/tx" 9 ) 10 11 func (suite *AnteTestSuite) TestRejectExtensionOptionsDecorator() { 12 suite.SetupTest(true) // setup 13 suite.txBuilder = suite.clientCtx.TxConfig.NewTxBuilder() 14 15 reod := ante.NewRejectExtensionOptionsDecorator() 16 antehandler := sdk.ChainAnteDecorators(reod) 17 18 // no extension options should not trigger an error 19 theTx := suite.txBuilder.GetTx() 20 _, err := antehandler(suite.ctx, theTx, false) 21 suite.Require().NoError(err) 22 23 extOptsTxBldr, ok := suite.txBuilder.(tx.ExtensionOptionsTxBuilder) 24 if !ok { 25 // if we can't set extension options, this decorator doesn't apply and we're done 26 return 27 } 28 29 // setting any extension option should cause an error 30 any, err := types.NewAnyWithValue(testdata.NewTestMsg()) 31 suite.Require().NoError(err) 32 extOptsTxBldr.SetExtensionOptions(any) 33 theTx = suite.txBuilder.GetTx() 34 _, err = antehandler(suite.ctx, theTx, false) 35 suite.Require().EqualError(err, "unknown extension options") 36 }