blockbook/bchain/coins/flo/floparser_test.go

94 lines
2.1 KiB
Go

// +build unittest
package flo
import (
"encoding/hex"
"os"
"reflect"
"testing"
"github.com/martinboehm/btcutil/chaincfg"
"spacecruft.org/spacecruft/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)
}
})
}
}