mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-07-27 23:26:44 +00:00
* initial * update * fix: add validator to NewBlockchain function calls * handle past chain reorg * fix: only check with last checkpoint * rm logs * add: handle future chain import case * fix: handle single block case * add unit tests for past and future chain * modularise forker tests * minor fixes * add: overlapping chain test case, minor fixes * minor fixes * add: isolated unit test for IsValidChain * add more test case for IsValidChain * fix: use index for header time * add: fetch last N checkpoints in first run * fix: change checkpoint count to int64 * fix: handle edge case * fix: handle no checkpoint case separately * fix: consider offset for future chain calculation * re-write test case for split chain * fix: typo * add: split chain properties test * separate reorg checks, validate chain before inserting * fix: handle err incase of invalid chain * fix: use error from whitelist service * split chain property tests * remove duplicate test cases * cleanup * clean up * fix linters * fix: fetch checkpoint count bug, add tests * fix more linters * fix: handle nil chain validator in downloader * fix: mock bor tests Co-authored-by: Evgeny Danienko <6655321@bk.ru>
31 lines
747 B
Go
31 lines
747 B
Go
package checkpoint
|
|
|
|
import (
|
|
"math/big"
|
|
|
|
"github.com/ethereum/go-ethereum/common"
|
|
)
|
|
|
|
// Checkpoint defines a response object type of bor checkpoint
|
|
type Checkpoint struct {
|
|
Proposer common.Address `json:"proposer"`
|
|
StartBlock *big.Int `json:"start_block"`
|
|
EndBlock *big.Int `json:"end_block"`
|
|
RootHash common.Hash `json:"root_hash"`
|
|
BorChainID string `json:"bor_chain_id"`
|
|
Timestamp uint64 `json:"timestamp"`
|
|
}
|
|
|
|
type CheckpointResponse struct {
|
|
Height string `json:"height"`
|
|
Result Checkpoint `json:"result"`
|
|
}
|
|
|
|
type CheckpointCount struct {
|
|
Result int64 `json:"result"`
|
|
}
|
|
|
|
type CheckpointCountResponse struct {
|
|
Height string `json:"height"`
|
|
Result CheckpointCount `json:"result"`
|
|
}
|