From fae411706eee3536f928195932051608ee1d99a5 Mon Sep 17 00:00:00 2001 From: Svarog Date: Sun, 30 Sep 2018 11:16:51 +0300 Subject: [PATCH] [DEV-137] calculate height correctly in blockdag and mining packages (#72) * [DEV-137] calculate height correctly in blockdag and mining packages * [DEV-137] Fix tests that didn't set block height --- blockdag/common_test.go | 3 ++- blockdag/validate_test.go | 8 +++++--- util/block.go | 2 +- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/blockdag/common_test.go b/blockdag/common_test.go index 418828333..9d798d585 100644 --- a/blockdag/common_test.go +++ b/blockdag/common_test.go @@ -45,7 +45,7 @@ func loadBlocks(filename string) (blocks []*util.Block, err error) { var block *util.Block err = nil - for height := int64(1); err == nil; height++ { + for height := 0; err == nil; height++ { var rintbuf uint32 err = binary.Read(dr, binary.LittleEndian, &rintbuf) if err == io.EOF { @@ -72,6 +72,7 @@ func loadBlocks(filename string) (blocks []*util.Block, err error) { if err != nil { return } + block.SetHeight(int32(height)) blocks = append(blocks, block) } diff --git a/blockdag/validate_test.go b/blockdag/validate_test.go index 696b02604..554636e72 100644 --- a/blockdag/validate_test.go +++ b/blockdag/validate_test.go @@ -126,9 +126,11 @@ func TestCheckConnectBlockTemplate(t *testing.T) { } // Block 4 should connect even if proof of work is invalid. - invalidPowBlock := *blocks[4].MsgBlock() - invalidPowBlock.Header.Nonce++ - err = dag.CheckConnectBlockTemplate(util.NewBlock(&invalidPowBlock)) + invalidPowMsgBlock := *blocks[4].MsgBlock() + invalidPowMsgBlock.Header.Nonce++ + invalidPowBlock := util.NewBlock(&invalidPowMsgBlock) + invalidPowBlock.SetHeight(blocks[4].Height()) + err = dag.CheckConnectBlockTemplate(invalidPowBlock) if err != nil { t.Fatalf("CheckConnectBlockTemplate: Received unexpected error on "+ "block 4 with bad nonce: %v", err) diff --git a/util/block.go b/util/block.go index 56a2a92c9..4b283044c 100644 --- a/util/block.go +++ b/util/block.go @@ -9,8 +9,8 @@ import ( "fmt" "io" - "github.com/daglabs/btcd/wire" "github.com/daglabs/btcd/dagconfig/daghash" + "github.com/daglabs/btcd/wire" ) // OutOfRangeError describes an error due to accessing an element that is out