From 20cd4af540b180b0c5129127e7e1d882ea9da139 Mon Sep 17 00:00:00 2001 From: Alex Peters Date: Wed, 7 Sep 2022 16:19:27 +0200 Subject: [PATCH] More tests --- x/wasm/client/cli/gov_tx.go | 7 ++++++- x/wasm/client/cli/gov_tx_test.go | 12 ++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/x/wasm/client/cli/gov_tx.go b/x/wasm/client/cli/gov_tx.go index 300d0017..8daeb821 100644 --- a/x/wasm/client/cli/gov_tx.go +++ b/x/wasm/client/cli/gov_tx.go @@ -597,7 +597,7 @@ func ProposalUnpinCodesCmd() *cobra.Command { return cmd } -func parseAccessConfig(raw string) (types.AccessConfig, error) { +func parseAccessConfig(raw string) (c types.AccessConfig, err error) { switch raw { case "nobody": return types.AllowNobody, nil @@ -613,6 +613,11 @@ func parseAccessConfig(raw string) (types.AccessConfig, error) { } addrs[i] = addr } + defer func() { // convert panic in ".With" to error for better output + if r := recover(); r != nil { + err = r.(error) + } + }() cfg := types.AccessTypeAnyOfAddresses.With(addrs...) return cfg, cfg.ValidateBasic() } diff --git a/x/wasm/client/cli/gov_tx_test.go b/x/wasm/client/cli/gov_tx_test.go index b4b02741..7c8600e0 100644 --- a/x/wasm/client/cli/gov_tx_test.go +++ b/x/wasm/client/cli/gov_tx_test.go @@ -70,6 +70,18 @@ func TestParseAccessConfigUpdates(t *testing.T) { }, }, }, + "any of addresses - empty list": { + src: []string{"1:"}, + expErr: true, + }, + "any of addresses - invalid address": { + src: []string{"1:foo"}, + expErr: true, + }, + "any of addresses - duplicate address": { + src: []string{"1:cosmos1vx8knpllrj7n963p9ttd80w47kpacrhuts497x,cosmos1vx8knpllrj7n963p9ttd80w47kpacrhuts497x"}, + expErr: true, + }, } for name, spec := range specs { t.Run(name, func(t *testing.T) {