package test
import (
- "github.com/vapor/mining/tensority"
"github.com/vapor/protocol"
"github.com/vapor/protocol/bc"
"github.com/vapor/protocol/bc/types"
}
preBlockHeader := chain.BestBlockHeader()
- preBlockHash := preBlockHeader.Hash()
- nextBits, err := chain.CalcNextBits(&preBlockHash)
- if err != nil {
- return nil, err
- }
b := &types.Block{
BlockHeader: types.BlockHeader{
PreviousBlockHash: preBlockHeader.Hash(),
Timestamp: preBlockHeader.Timestamp + 1,
BlockCommitment: types.BlockCommitment{},
- Bits: nextBits,
},
Transactions: []*types.Tx{nil},
}
// SolveAndUpdate solve difficulty and update chain status
func SolveAndUpdate(chain *protocol.Chain, block *types.Block) error {
- seed, err := chain.CalcNextSeed(&block.PreviousBlockHash)
- if err != nil {
- return err
- }
- Solve(seed, block)
- _, err = chain.ProcessBlock(block)
+ _, err := chain.ProcessBlock(block)
return err
}
-
-// Solve simulate solve difficulty by add result to cache
-func Solve(seed *bc.Hash, block *types.Block) {
- hash := block.BlockHeader.Hash()
- tensority.AIHash.AddCache(&hash, seed, &bc.Hash{})
-}