github.com/Finschia/finschia-sdk@v0.48.1/x/foundation/authz_test.go (about) 1 package foundation_test 2 3 import ( 4 "testing" 5 6 sdk "github.com/Finschia/finschia-sdk/types" 7 "github.com/Finschia/finschia-sdk/x/foundation" 8 "github.com/stretchr/testify/require" 9 ) 10 11 func TestReceiveFromTreasuryAuthorization(t *testing.T) { 12 testCases := map[string]struct { 13 msg sdk.Msg 14 valid bool 15 accept bool 16 }{ 17 "valid": { 18 msg: &foundation.MsgWithdrawFromTreasury{}, 19 valid: true, 20 accept: true, 21 }, 22 "msg mismatch": { 23 msg: &foundation.MsgVote{}, 24 }, 25 } 26 27 for name, tc := range testCases { 28 t.Run(name, func(t *testing.T) { 29 authorization := &foundation.ReceiveFromTreasuryAuthorization{} 30 31 resp, err := authorization.Accept(sdk.Context{}, tc.msg) 32 if !tc.valid { 33 require.Error(t, err) 34 return 35 } 36 require.NoError(t, err) 37 38 require.Equal(t, tc.accept, resp.Accept) 39 }) 40 } 41 }