Documentation ¶
Index ¶
- func AfterProposal() tests.SpecTest
- func DuplicateMsg() tests.SpecTest
- func DuplicateMsgQuorum() tests.SpecTest
- func DuplicateMsgQuorumPreparedRCFirst() tests.SpecTest
- func EmptySigners() tests.SpecTest
- func F1DifferentFutureRounds() tests.SpecTest
- func F1DifferentFutureRoundsNotPrepared() tests.SpecTest
- func F1DuplicateSigner() tests.SpecTest
- func F1DuplicateSignerNotPrepared() tests.SpecTest
- func F1Speedup() tests.SpecTest
- func F1SpeedupPrevPrepared() tests.SpecTest
- func ForceStop() tests.SpecTest
- func HappyFlow() tests.SpecTest
- func InvalidJustificationFullData() tests.SpecTest
- func JustificationDuplicateMsg() tests.SpecTest
- func JustificationInvalidRound() tests.SpecTest
- func JustificationInvalidSig() tests.SpecTest
- func JustificationMultiSigners() tests.SpecTest
- func JustificationNoQuorum() tests.SpecTest
- func JustificationPastRound() tests.SpecTest
- func JustificationWrongRound() tests.SpecTest
- func MultiSigner() tests.SpecTest
- func NonUniqueSigner() tests.SpecTest
- func NotProposer() tests.SpecTest
- func PastRound() tests.SpecTest
- func PeerPrepared() tests.SpecTest
- func PeerPreparedDifferentHeights() tests.SpecTest
- func PostCutoff() tests.SpecTest
- func QuorumMsgNotPrepared() tests.SpecTest
- func QuorumNotPrepared() tests.SpecTest
- func QuorumNotTriggeredTwice() tests.SpecTest
- func QuorumNotTriggeredTwiceJustificationIgnored() tests.SpecTest
- func QuorumOrder1() tests.SpecTest
- func QuorumOrder2() tests.SpecTest
- func QuorumPrepared() tests.SpecTest
- func RoundChangePartialQuorum() tests.SpecTest
- func UnknownSigner() tests.SpecTest
- func ValidJustification() tests.SpecTest
- func ValidJustificationFullData() tests.SpecTest
- func WrongHeight() tests.SpecTest
- func ZeroSigner() tests.SpecTest
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AfterProposal ¶
AfterProposal tests a round change msg after prev quorum + received proposal
func DuplicateMsg ¶
DuplicateMsg tests a duplicate rc msg (first one inserted, second not)
func DuplicateMsgQuorum ¶
DuplicateMsgQuorum tests a duplicate rc msg for signer 1, after which enough msgs for quorum
func DuplicateMsgQuorumPreparedRCFirst ¶
DuplicateMsgQuorumPreparedRCFirst tests a duplicate rc msg (the prev prepared one first)
func EmptySigners ¶
EmptySigners tests a round change msg with no signers
func F1DifferentFutureRounds ¶
F1DifferentFutureRounds tests f+1 speedup with one rc prev prepared
func F1DifferentFutureRoundsNotPrepared ¶
F1DifferentFutureRoundsNotPrepared tests f+1 speedup (not prev prepared)
func F1DuplicateSigner ¶
F1DuplicateSigner tests not accepting f+1 speed for duplicate signer
func F1DuplicateSignerNotPrepared ¶
F1DuplicateSignerNotPrepared tests not accepting f+1 speed for duplicate signer (not prev prepared)
func F1Speedup ¶
F1Speedup tests catching up to higher rounds via f+1 speedup, other peers are all at the same round
func F1SpeedupPrevPrepared ¶
F1SpeedupPrevPrepared tests catching up to higher rounds via f+1 speedup, other peers are all at the same round (one prev prepared)
func InvalidJustificationFullData ¶
InvalidJustificationFullData tests round change justification for which H(full data) != root
func JustificationDuplicateMsg ¶
JustificationDuplicateMsg tests a duplicate justification msg which shouldn't result in a justification quorum
func JustificationInvalidRound ¶
JustificationInvalidRound tests justifications with prepared round > msg round
func JustificationInvalidSig ¶
JustificationInvalidSig tests a single prepare justification msg with wrong signature
func JustificationMultiSigners ¶
JustificationMultiSigners tests a single prepare justification msg with multiple signers
func JustificationNoQuorum ¶
JustificationNoQuorum tests justifications with no quorum
func JustificationPastRound ¶
JustificationPastRound tests a quorum of round change msgs for past round
func JustificationWrongRound ¶
JustificationWrongRound tests a single prepare justification with round != prepared round
func MultiSigner ¶
MultiSigner tests a round change msg with multiple signers
func NonUniqueSigner ¶
NonUniqueSigner tests a round change msg with multiple signers and non unique signer
func NotProposer ¶
NotProposer tests a justified round change but node is not the proposer
func PeerPrepared ¶
PeerPrepared tests a round change quorum where a peer is the only one prepared
func PeerPreparedDifferentHeights ¶
PeerPreparedDifferentHeights tests a round change quorum where peers prepared on different heights
func PostCutoff ¶
PostCutoff tests processing a round change msg when round >= cutoff
func QuorumMsgNotPrepared ¶
QuorumMsgNotPrepared tests LIVENESS where the rc msg making a quorum for round change is not prev prepared (other are) which can cause a liveness issue with isReceivedProposalJustification
func QuorumNotPrepared ¶
QuorumNotPrepared tests a round change quorum for non-prepared state
func QuorumNotTriggeredTwice ¶
QuorumNotTriggeredTwice tests that the fourth round change message does not trigger a quorum and no proposal is sent
func QuorumNotTriggeredTwiceJustificationIgnored ¶
QuorumNotTriggeredTwiceJustificationIgnored tests that the fourth round change message does not trigger a quorum and no proposal is sent. Also, the justification is ignored.
func QuorumOrder1 ¶
QuorumOrder1 tests LIVENESS where the rc quorum msgs in different order
func QuorumOrder2 ¶
QuorumOrder2 tests LIVENESS where the rc quorum msgs in different order
func QuorumPrepared ¶
QuorumPrepared tests a round change msg for prepared state
func RoundChangePartialQuorum ¶
RoundChangePartialQuorum tests a round change msgs with partial quorum
func UnknownSigner ¶
UnknownSigner tests a signed round change msg with an unknown signer
func ValidJustification ¶
ValidJustification tests a valid rc quorum justification
func ValidJustificationFullData ¶
ValidJustificationFullData tests round change justification for which H(full data) == root
func WrongHeight ¶
WrongHeight tests a round change msg with wrong height
func ZeroSigner ¶
ZeroSigner tests a signed round change msg with signer 0
Types ¶
This section is empty.
Source Files ¶
- duplicate_msg.go
- duplicate_msg_quorum.go
- duplicate_msg_quorum_prepared_rc_first.go
- empty_signers.go
- f1_different_future_rounds.go
- f1_different_future_rounds_not_prepared.go
- f1_duplicate_signer.go
- f1_duplicate_signer_not_prepared.go
- f1_speedup.go
- f1_speedup_prepared.go
- force_stop.go
- happy_flow.go
- invalid_justification_full_data.go
- justification_duplicate_msg.go
- justification_invalid_round.go
- justification_invalid_sig.go
- justification_multi_signers.go
- justification_no_quorum.go
- justification_past_round.go
- justification_wrong_round.go
- multi_signer.go
- non_unique_signer.go
- not_proposer.go
- past_round.go
- peer_prepared.go
- peer_prepared_different_heights.go
- post_cutoff.go
- quorum_msg_not_prepared.go
- quorum_not_prepared.go
- quorum_not_triggered_twice.go
- quorum_not_triggered_twice_justification_ignored.go
- quorum_order1.go
- quorum_order2.go
- quorum_prepared.go
- rc_after_proposal.go
- rc_partial_quorum.go
- unknown_signer.go
- valid_justification.go
- valid_justification_full_data.go
- wrong_height.go
- zero_signer.go