decred.org/dcrdex@v1.0.3/client/asset/btc/witness_fix_test.go (about)

     1  //go:build !spvlive
     2  
     3  package btc
     4  
     5  import (
     6  	"bytes"
     7  	_ "embed"
     8  	"testing"
     9  
    10  	"github.com/btcsuite/btcd/wire"
    11  )
    12  
    13  //go:embed test-data/bitcoin-block-757922.dat
    14  var block757922 []byte
    15  
    16  //go:embed test-data/bitcoin-tx-7393096d97bfee8660f4100ffd61874d62f9a65de9fb6acf740c4c386990ef73.dat
    17  var tx7393096d9 []byte
    18  
    19  //go:embed test-data/bitcoin-tx-73be398c4bdc43709db7398106609eea2a7841aaf3a4fa2000dc18184faa2a7e.dat
    20  var tx73be398c4 []byte
    21  
    22  func TestBigWitness(t *testing.T) {
    23  	msgBlock := &wire.MsgBlock{}
    24  	err := msgBlock.Deserialize(bytes.NewReader(block757922))
    25  	if err != nil {
    26  		t.Fatal(err)
    27  	}
    28  	wantHash := "0000000000000000000400a35a007e223a7fb8a622dc7b5aa5eaace6824291fb"
    29  	if h := msgBlock.BlockHash().String(); h != wantHash {
    30  		t.Errorf("got %v, wanted %v", h, wantHash)
    31  	}
    32  
    33  	msgTx := &wire.MsgTx{}
    34  	err = msgTx.Deserialize(bytes.NewReader(tx7393096d9))
    35  	if err != nil {
    36  		t.Fatal(err)
    37  	}
    38  	wantHash = "7393096d97bfee8660f4100ffd61874d62f9a65de9fb6acf740c4c386990ef73"
    39  	if h := msgTx.TxHash().String(); h != wantHash {
    40  		t.Errorf("got %v, wanted %v", h, wantHash)
    41  	}
    42  
    43  	msgTx = &wire.MsgTx{}
    44  	err = msgTx.Deserialize(bytes.NewReader(tx73be398c4))
    45  	if err != nil {
    46  		t.Fatal(err)
    47  	}
    48  	wantHash = "73be398c4bdc43709db7398106609eea2a7841aaf3a4fa2000dc18184faa2a7e"
    49  	if h := msgTx.TxHash().String(); h != wantHash {
    50  		t.Errorf("got %v, wanted %v", h, wantHash)
    51  	}
    52  }