From 9977d4b48f2be6ad24c3e896a416d7d4ddc0b993 Mon Sep 17 00:00:00 2001 From: Philemon Ukane Date: Thu, 27 Jun 2024 16:50:05 +0100 Subject: [PATCH] add test case for floatString.UnmarshalJSON - remove unused type ntfn in btc/electrum/jsonrpcs.go Signed-off-by: Philemon Ukane --- client/asset/btc/electrum/jsonrpc.go | 1 - client/asset/btc/electrum/jsonrpc_test.go | 41 +++++++++++++++++++++++ 2 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 client/asset/btc/electrum/jsonrpc_test.go diff --git a/client/asset/btc/electrum/jsonrpc.go b/client/asset/btc/electrum/jsonrpc.go index 5fd6921ee5..3592c82b20 100644 --- a/client/asset/btc/electrum/jsonrpc.go +++ b/client/asset/btc/electrum/jsonrpc.go @@ -38,7 +38,6 @@ type response struct { Error *RPCError `json:"error"` } -type ntfn = request // weird but true type ntfnData struct { Params json.RawMessage `json:"params"` } diff --git a/client/asset/btc/electrum/jsonrpc_test.go b/client/asset/btc/electrum/jsonrpc_test.go new file mode 100644 index 0000000000..374211da28 --- /dev/null +++ b/client/asset/btc/electrum/jsonrpc_test.go @@ -0,0 +1,41 @@ +// This code is available on the terms of the project LICENSE.md file, +// also available online at https://blueoakcouncil.org/license/1.0.0. + +package electrum + +import ( + "fmt" + "testing" +) + +func Test_floatString_UnmarshalJSON(t *testing.T) { + tests := []struct { + name string + arg []byte + wantErr bool + }{ + { + name: "float64", + arg: []byte{49, 50, 46, 50, 51}, // 12.23 + }, + { + name: "string float64", + arg: []byte{34, 49, 50, 46, 50, 51, 34}, // "12.23" + }, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + var fs floatString + if err := fs.UnmarshalJSON(tt.arg); (err != nil) != tt.wantErr { + t.Errorf("%s: error = %v, wantErr %v", tt.name, err, tt.wantErr) + } + + fsStr := fmt.Sprint(fs) + fsByte := []byte(fsStr) + if string(fsByte) != fsStr { + t.Errorf("%s: expected %v got %v", tt.name, string(fsByte), fsStr) + } + }) + } +}