block_processor_test.go 747 B

12345678910111213141516171819202122232425262728293031323334
  1. package core
  2. import (
  3. "math/big"
  4. "testing"
  5. "github.com/ethereum/go-ethereum/ethdb"
  6. "github.com/ethereum/go-ethereum/event"
  7. )
  8. func proc() (*BlockProcessor, *ChainManager) {
  9. db, _ := ethdb.NewMemDatabase()
  10. var mux event.TypeMux
  11. chainMan := NewChainManager(db, &mux)
  12. return NewBlockProcessor(db, nil, chainMan, &mux), chainMan
  13. }
  14. func TestNumber(t *testing.T) {
  15. bp, chain := proc()
  16. block1 := chain.NewBlock(nil)
  17. block1.Header().Number = big.NewInt(3)
  18. err := bp.ValidateBlock(block1, chain.Genesis())
  19. if err != BlockNumberErr {
  20. t.Errorf("expected block number error")
  21. }
  22. block1 = chain.NewBlock(nil)
  23. err = bp.ValidateBlock(block1, chain.Genesis())
  24. if err == BlockNumberErr {
  25. t.Errorf("didn't expect block number error")
  26. }
  27. }