aboutsummaryrefslogtreecommitdiffstats
path: root/core/block_processor_test.go
blob: e0aa5fb4c40bddf7a3e3c0d74a431f0ff709bfbb (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package core

import (
    "math/big"
    "testing"

    "github.com/ethereum/go-ethereum/common"
    "github.com/ethereum/go-ethereum/ethdb"
    "github.com/ethereum/go-ethereum/event"
    "github.com/ethereum/go-ethereum/pow/ezp"
)

func proc() (*BlockProcessor, *ChainManager) {
    db, _ := ethdb.NewMemDatabase()
    var mux event.TypeMux

    chainMan := NewChainManager(db, db, thePow(), &mux)
    return NewBlockProcessor(db, db, ezp.New(), nil, chainMan, &mux), chainMan
}

func TestNumber(t *testing.T) {
    bp, chain := proc()
    block1 := chain.NewBlock(common.Address{})
    block1.Header().Number = big.NewInt(3)
    block1.Header().Time--

    err := bp.ValidateHeader(block1.Header(), chain.Genesis().Header(), false)
    if err != BlockNumberErr {
        t.Errorf("expected block number error %v", err)
    }

    block1 = chain.NewBlock(common.Address{})
    err = bp.ValidateHeader(block1.Header(), chain.Genesis().Header(), false)
    if err == BlockNumberErr {
        t.Errorf("didn't expect block number error")
    }
}