//go:build unittest package flo import ( "encoding/hex" "os" "reflect" "testing" "github.com/martinboehm/btcutil/chaincfg" "github.com/trezor/blockbook/bchain/coins/btc" ) func TestMain(m *testing.M) { c := m.Run() chaincfg.ResetParams() os.Exit(c) } func Test_GetAddrDescFromAddress_Testnet(t *testing.T) { type args struct { address string } tests := []struct { name string args args want string wantErr bool }{ { name: "P2PKH1", args: args{address: "oX8YUMFwRhQdqGvuVGpLJz8BcYmM87e9ee"}, want: "76a9149c708c27ce34ead174a7a9b4f47afafb3d906d0d88ac", wantErr: false, }, } parser := NewFloParser(GetChainParams("test"), &btc.Configuration{}) for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { got, err := parser.GetAddrDescFromAddress(tt.args.address) if (err != nil) != tt.wantErr { t.Errorf("GetAddrDescFromAddress() error = %v, wantErr %v", err, tt.wantErr) return } h := hex.EncodeToString(got) if !reflect.DeepEqual(h, tt.want) { t.Errorf("GetAddrDescFromAddress() = %v, want %v", h, tt.want) } }) } } func Test_GetAddrDescFromAddress_Mainnet(t *testing.T) { type args struct { address string } tests := []struct { name string args args want string wantErr bool }{ { name: "P2PKH1", args: args{address: "FAPiw7EFMYmYK1mUuQQekyLsmimUBQT9zd"}, want: "76a914320b6c674c8bc353942046981ff7ac73f5ceae4688ac", wantErr: false, }, { name: "P2PKH2", args: args{address: "FMg9M7GPuUAGKvhWmgWjoqYtMqmckD4tRF"}, want: "76a914adcfd792793fb204ec4e8cf2d0215fea6963b97388ac", wantErr: false, }, } parser := NewFloParser(GetChainParams("main"), &btc.Configuration{}) for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { got, err := parser.GetAddrDescFromAddress(tt.args.address) if (err != nil) != tt.wantErr { t.Errorf("GetAddrDescFromAddress() error = %v, wantErr %v", err, tt.wantErr) return } h := hex.EncodeToString(got) if !reflect.DeepEqual(h, tt.want) { t.Errorf("GetAddrDescFromAddress() = %v, want %v", h, tt.want) } }) } }