Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type MineJSONBlockType ¶
type MineJSONBlockType int
MineJSONBlockType indicates which type of blocks MineJSON mines
const ( // MineJSONBlockTypeUTXOValidBlock indicates for MineJSON to mine valid blocks. MineJSONBlockTypeUTXOValidBlock MineJSONBlockType = iota // MineJSONBlockTypeUTXOInvalidBlock indicates for MineJSON to mine UTXO invalid blocks. MineJSONBlockTypeUTXOInvalidBlock // MineJSONBlockTypeUTXOInvalidHeader indicates for MineJSON to mine UTXO invalid headers. MineJSONBlockTypeUTXOInvalidHeader )
type TestBlockBuilder ¶
type TestBlockBuilder interface { model.BlockBuilder // BuildBlockWithParents builds a block with provided parents, coinbaseData and transactions, // and returns the block together with its past UTXO-diff from the virtual. BuildBlockWithParents(parentHashes []*externalapi.DomainHash, coinbaseData *externalapi.DomainCoinbaseData, transactions []*externalapi.DomainTransaction) (*externalapi.DomainBlock, externalapi.UTXODiff, error) BuildUTXOInvalidHeader(parentHashes []*externalapi.DomainHash) (externalapi.BlockHeader, error) BuildUTXOInvalidBlock(parentHashes []*externalapi.DomainHash) (*externalapi.DomainBlock, error) SetNonceCounter(nonceCounter uint64) }
TestBlockBuilder adds to the main BlockBuilder methods required by tests
type TestConsensus ¶
type TestConsensus interface { externalapi.Consensus DAGParams() *dagconfig.Params DatabaseContext() model.DBManager Database() database.Database BuildBlockWithParents(parentHashes []*externalapi.DomainHash, coinbaseData *externalapi.DomainCoinbaseData, transactions []*externalapi.DomainTransaction) (*externalapi.DomainBlock, externalapi.UTXODiff, error) BuildHeaderWithParents(parentHashes []*externalapi.DomainHash) (externalapi.BlockHeader, error) BuildUTXOInvalidBlock(parentHashes []*externalapi.DomainHash) (*externalapi.DomainBlock, error) // AddBlock builds a block with given information, solves it, and adds to the DAG. // Returns the hash of the added block AddBlock(parentHashes []*externalapi.DomainHash, coinbaseData *externalapi.DomainCoinbaseData, transactions []*externalapi.DomainTransaction) (*externalapi.DomainHash, *externalapi.VirtualChangeSet, error) AddBlockOnTips(coinbaseData *externalapi.DomainCoinbaseData, transactions []*externalapi.DomainTransaction) (*externalapi.DomainHash, *externalapi.VirtualChangeSet, error) AddUTXOInvalidHeader(parentHashes []*externalapi.DomainHash) (*externalapi.DomainHash, *externalapi.VirtualChangeSet, error) AddUTXOInvalidBlock(parentHashes []*externalapi.DomainHash) (*externalapi.DomainHash, *externalapi.VirtualChangeSet, error) UpdatePruningPointByVirtual() error ResolveVirtualWithMaxParam(maxBlocksToResolve uint64) (*externalapi.VirtualChangeSet, bool, error) MineJSON(r io.Reader, blockType MineJSONBlockType) (tips []*externalapi.DomainHash, err error) ToJSON(w io.Writer) error RenderDAGToDot(filename string) error AcceptanceDataStore() model.AcceptanceDataStore BlockHeaderStore() model.BlockHeaderStore BlockRelationStore() model.BlockRelationStore BlockStatusStore() model.BlockStatusStore BlockStore() model.BlockStore ConsensusStateStore() model.ConsensusStateStore GHOSTDAGDataStore() model.GHOSTDAGDataStore GHOSTDAGDataStores() []model.GHOSTDAGDataStore HeaderTipsStore() model.HeaderSelectedTipStore MultisetStore() model.MultisetStore PruningStore() model.PruningStore ReachabilityDataStore() model.ReachabilityDataStore UTXODiffStore() model.UTXODiffStore HeadersSelectedChainStore() model.HeadersSelectedChainStore DAABlocksStore() model.DAABlocksStore BlockBuilder() TestBlockBuilder BlockProcessor() model.BlockProcessor BlockValidator() model.BlockValidator CoinbaseManager() model.CoinbaseManager ConsensusStateManager() TestConsensusStateManager FinalityManager() model.FinalityManager DAGTopologyManager() model.DAGTopologyManager DAGTraversalManager() model.DAGTraversalManager DifficultyManager() model.DifficultyManager GHOSTDAGManager() model.GHOSTDAGManager HeaderTipsManager() model.HeadersSelectedTipManager MergeDepthManager() model.MergeDepthManager PastMedianTimeManager() model.PastMedianTimeManager PruningManager() model.PruningManager ReachabilityManager() TestReachabilityManager SyncManager() model.SyncManager TransactionValidator() TestTransactionValidator }
TestConsensus wraps the Consensus interface with some methods that are needed by tests only
type TestConsensusStateManager ¶
type TestConsensusStateManager interface { model.ConsensusStateManager AddUTXOToMultiset(multiset model.Multiset, entry externalapi.UTXOEntry, outpoint *externalapi.DomainOutpoint) error ResolveBlockStatus(stagingArea *model.StagingArea, blockHash *externalapi.DomainHash, useSeparateStagingAreaPerBlock bool) (externalapi.BlockStatus, error) }
TestConsensusStateManager adds to the main ConsensusStateManager methods required by tests
type TestReachabilityManager ¶
type TestReachabilityManager interface { model.ReachabilityManager SetReachabilityReindexWindow(reindexWindow uint64) SetReachabilityReindexSlack(reindexSlack uint64) ReachabilityReindexSlack() uint64 ValidateIntervals(root *externalapi.DomainHash) error GetAllNodes(root *externalapi.DomainHash) ([]*externalapi.DomainHash, error) }
TestReachabilityManager adds to the main ReachabilityManager methods required by tests
type TestTransactionValidator ¶
type TestTransactionValidator interface { model.TransactionValidator SigCache() *txscript.SigCache SetSigCache(sigCache *txscript.SigCache) }
TestTransactionValidator adds to the main TransactionValidator methods required by tests
Click to show internal directories.
Click to hide internal directories.