diff --git a/rpc/args.go b/rpc/args.go index 65707aa37..806efb9cc 100644 --- a/rpc/args.go +++ b/rpc/args.go @@ -29,7 +29,7 @@ func blockHeight(raw interface{}, number *int64) error { // Parse as string/hexstring str, ok := raw.(string) if !ok { - return NewInvalidTypeError("blockNumber", "not a number or string") + return NewInvalidTypeError("", "not a number or string") } switch str { @@ -82,6 +82,17 @@ func numString(raw interface{}, number *int64) error { // } // } +// func hashString(raw interface{}, hash *string) error { +// argstr, ok := raw.(string) +// if !ok { +// return NewInvalidTypeError("", "not a string") +// } +// v := common.IsHex(argstr) +// hash = &argstr + +// return nil +// } + type GetBlockByHashArgs struct { BlockHash string IncludeTxs bool diff --git a/rpc/args_test.go b/rpc/args_test.go index c5d407c97..b658eed68 100644 --- a/rpc/args_test.go +++ b/rpc/args_test.go @@ -155,14 +155,9 @@ func TestGetBalanceArgsInvalid(t *testing.T) { input := `6` args := new(GetBalanceArgs) - err := json.Unmarshal([]byte(input), &args) - switch err.(type) { - case nil: - t.Error("Expected error but didn't get one") - case *DecodeParamError: - break - default: - t.Errorf("Expected *rpc.DecodeParamError but got %T with message %s", err, err.Error()) + str := ExpectDecodeParamError(json.Unmarshal([]byte(input), &args)) + if len(str) > 0 { + t.Error(str) } }