@@ -8,7 +8,7 @@ use test_case::test_case;
88
99use super :: SingleHeightConsensus ;
1010use crate :: single_height_consensus:: ShcReturn ;
11- use crate :: state_machine:: { SMRequest , StateMachineEvent } ;
11+ use crate :: state_machine:: { SMRequest , StateMachineEvent , Step } ;
1212use crate :: test_utils:: { precommit, prevote, TestBlock } ;
1313use crate :: types:: { ProposalCommitment , ValidatorId } ;
1414use crate :: votes_threshold:: QuorumType ;
@@ -63,7 +63,7 @@ fn proposer() {
6363 shc. handle_vote ( & leader_fn, prevote ( Some ( BLOCK . id . 0 ) , 0 , 0 , * VALIDATOR_ID_2 ) ) . unwrap ( ) ;
6464 // Expect a precommit broadcast request present.
6565 assert_matches ! ( ret, ShcReturn :: Requests ( mut reqs) => {
66- assert_matches!( reqs. pop_front( ) , Some ( SMRequest :: ScheduleTimeoutPrevote ( 0 ) ) ) ;
66+ assert_matches!( reqs. pop_front( ) , Some ( SMRequest :: ScheduleTimeout ( Step :: Prevote , 0 ) ) ) ;
6767 assert_matches!( reqs. pop_front( ) , Some ( SMRequest :: BroadcastVote ( v) ) if v. vote_type == VoteType :: Precommit ) ;
6868 assert!( reqs. is_empty( ) ) ;
6969 } ) ;
@@ -125,7 +125,7 @@ fn validator(repeat_proposal: bool) {
125125 shc. handle_vote ( & leader_fn, prevote ( Some ( BLOCK . id . 0 ) , 0 , 0 , * VALIDATOR_ID_3 ) ) . unwrap ( ) ;
126126 // Expect a precommit broadcast request present.
127127 assert_matches ! ( ret, ShcReturn :: Requests ( mut reqs) => {
128- assert_matches!( reqs. pop_front( ) , Some ( SMRequest :: ScheduleTimeoutPrevote ( 0 ) ) ) ;
128+ assert_matches!( reqs. pop_front( ) , Some ( SMRequest :: ScheduleTimeout ( Step :: Prevote , 0 ) ) ) ;
129129 assert_matches!( reqs. pop_front( ) , Some ( SMRequest :: BroadcastVote ( v) ) if v. vote_type == VoteType :: Precommit ) ;
130130 assert!( reqs. is_empty( ) ) ;
131131 } ) ;
@@ -169,7 +169,7 @@ fn vote_twice(same_vote: bool) {
169169 . unwrap ( ) ;
170170 // On quorum of prevotes, expect a precommit broadcast request.
171171 assert_matches ! ( res, ShcReturn :: Requests ( mut reqs) => {
172- assert_matches!( reqs. pop_front( ) , Some ( SMRequest :: ScheduleTimeoutPrevote ( 0 ) ) ) ;
172+ assert_matches!( reqs. pop_front( ) , Some ( SMRequest :: ScheduleTimeout ( Step :: Prevote , 0 ) ) ) ;
173173 assert_matches!( reqs. pop_front( ) , Some ( SMRequest :: BroadcastVote ( v) ) if v. vote_type == VoteType :: Precommit ) ;
174174 assert!( reqs. is_empty( ) ) ;
175175 } ) ;
@@ -227,7 +227,7 @@ fn rebroadcast_votes() {
227227 shc. handle_vote ( & leader_fn, prevote ( Some ( BLOCK . id . 0 ) , 0 , 0 , * VALIDATOR_ID_2 ) ) . unwrap ( ) ;
228228 // Expect a precommit broadcast at round 0.
229229 assert_matches ! ( ret, ShcReturn :: Requests ( mut reqs) => {
230- assert_matches!( reqs. pop_front( ) , Some ( SMRequest :: ScheduleTimeoutPrevote ( 0 ) ) ) ;
230+ assert_matches!( reqs. pop_front( ) , Some ( SMRequest :: ScheduleTimeout ( Step :: Prevote , 0 ) ) ) ;
231231 assert_matches!( reqs. pop_front( ) , Some ( SMRequest :: BroadcastVote ( v) ) if v. vote_type == VoteType :: Precommit && v. round == 0 ) ;
232232 assert!( reqs. is_empty( ) ) ;
233233 } ) ;
@@ -250,7 +250,7 @@ fn rebroadcast_votes() {
250250 let ret =
251251 shc. handle_vote ( & leader_fn, prevote ( Some ( BLOCK . id . 0 ) , 0 , 1 , * VALIDATOR_ID_3 ) ) . unwrap ( ) ;
252252 assert_matches ! ( ret, ShcReturn :: Requests ( mut reqs) => {
253- assert_matches!( reqs. pop_front( ) , Some ( SMRequest :: ScheduleTimeoutPrevote ( 1 ) ) ) ;
253+ assert_matches!( reqs. pop_front( ) , Some ( SMRequest :: ScheduleTimeout ( Step :: Prevote , 1 ) ) ) ;
254254 assert_matches!( reqs. pop_front( ) , Some ( SMRequest :: BroadcastVote ( v) ) if v. vote_type == VoteType :: Precommit && v. round == 1 ) ;
255255 assert!( reqs. is_empty( ) ) ;
256256 } ) ;
@@ -303,9 +303,9 @@ fn repropose() {
303303 // and schedule a prevote timeout for round 0.
304304 let ret =
305305 shc. handle_vote ( & leader_fn, prevote ( Some ( BLOCK . id . 0 ) , 0 , 0 , * VALIDATOR_ID_2 ) ) . unwrap ( ) ;
306- // Expect ScheduleTimeoutPrevote{round:0} and BroadcastVote(Precommit).
306+ // Expect ScheduleTimeout(Step::Prevote, 0) and BroadcastVote(Precommit).
307307 assert_matches ! ( ret, ShcReturn :: Requests ( mut reqs) => {
308- assert_matches!( reqs. pop_front( ) , Some ( SMRequest :: ScheduleTimeoutPrevote ( 0 ) ) ) ;
308+ assert_matches!( reqs. pop_front( ) , Some ( SMRequest :: ScheduleTimeout ( Step :: Prevote , 0 ) ) ) ;
309309 assert_matches!( reqs. pop_front( ) , Some ( SMRequest :: BroadcastVote ( v) ) if v. vote_type == VoteType :: Precommit && v. round == 0 ) ;
310310 assert!( reqs. is_empty( ) ) ;
311311 } ) ;
@@ -315,7 +315,7 @@ fn repropose() {
315315 let ret = shc. handle_vote ( & leader_fn, precommit ( None , 0 , 0 , * VALIDATOR_ID_2 ) ) . unwrap ( ) ;
316316 // assert that ret is ScheduleTimeoutPrecommit
317317 assert_matches ! ( ret, ShcReturn :: Requests ( mut reqs) => {
318- assert_matches!( reqs. pop_front( ) , Some ( SMRequest :: ScheduleTimeoutPrecommit ( 0 ) ) ) ;
318+ assert_matches!( reqs. pop_front( ) , Some ( SMRequest :: ScheduleTimeout ( Step :: Precommit , 0 ) ) ) ;
319319 assert!( reqs. is_empty( ) ) ;
320320 } ) ;
321321 // No precommit quorum is reached. On TimeoutPrecommit(0) the proposer advances to round 1 with
0 commit comments