@@ -1135,6 +1135,7 @@ pub mod test {
11351135
11361136 #[ test]
11371137 fn test_v2_mutable_receiver_state_closures ( ) {
1138+ let persister = NoopSessionPersister :: default ( ) ;
11381139 let mut call_count = 0 ;
11391140 let maybe_inputs_owned = maybe_inputs_owned_v2_from_test_vector ( ) ;
11401141 let receiver = v2:: Receiver { state : maybe_inputs_owned } ;
@@ -1149,18 +1150,14 @@ pub mod test {
11491150 assert_eq ! ( call_count, 1 ) ;
11501151
11511152 let outputs_unknown = maybe_inputs_seen
1152- . 0
1153- . map_err ( |_| "Check inputs owned closure failed" . to_string ( ) )
1154- . expect ( "Next receiver state should be accessible" )
1155- . 1
1156- . check_no_inputs_seen_before ( & mut |_| mock_callback ( & mut call_count , false ) ) ;
1153+ . save ( & persister )
1154+ . expect ( "Noop persister shouldn't fail" )
1155+ . check_no_inputs_seen_before ( & mut |_| mock_callback ( & mut call_count , false ) )
1156+ . save ( & persister )
1157+ . expect ( "Noop persister shouldn't fail" ) ;
11571158 assert_eq ! ( call_count, 2 ) ;
11581159
11591160 let _wants_outputs = outputs_unknown
1160- . 0
1161- . map_err ( |_| "Check no inputs seen closure failed" . to_string ( ) )
1162- . expect ( "Next receiver state should be accessible" )
1163- . 1
11641161 . identify_receiver_outputs ( & mut |_| mock_callback ( & mut call_count, true ) ) ;
11651162 // there are 2 receiver outputs so we should expect this callback to run twice incrementing
11661163 // call count twice
@@ -1191,11 +1188,15 @@ pub mod test {
11911188
11921189 #[ test]
11931190 fn test_maybe_inputs_seen_transient_error ( ) -> Result < ( ) , BoxError > {
1191+ let persister = NoopSessionPersister :: default ( ) ;
11941192 let unchecked_proposal = unchecked_proposal_v2_from_test_vector ( ) ;
11951193 let receiver = v2:: Receiver { state : unchecked_proposal } ;
11961194
1197- let maybe_inputs_owned = receiver. assume_interactive_receiver ( ) ;
1198- let maybe_inputs_seen = maybe_inputs_owned. 0 . 1 . check_inputs_not_owned ( & mut |_| {
1195+ let maybe_inputs_owned = receiver
1196+ . assume_interactive_receiver ( )
1197+ . save ( & persister)
1198+ . expect ( "Noop persister shouldn't fail" ) ;
1199+ let maybe_inputs_seen = maybe_inputs_owned. check_inputs_not_owned ( & mut |_| {
11991200 Err ( ImplementationError :: new ( ReplyableError :: Implementation ( "mock error" . into ( ) ) ) )
12001201 } ) ;
12011202
@@ -1214,18 +1215,21 @@ pub mod test {
12141215
12151216 #[ test]
12161217 fn test_outputs_unknown_transient_error ( ) -> Result < ( ) , BoxError > {
1218+ let persister = NoopSessionPersister :: default ( ) ;
12171219 let unchecked_proposal = unchecked_proposal_v2_from_test_vector ( ) ;
12181220 let receiver = v2:: Receiver { state : unchecked_proposal } ;
12191221
1220- let maybe_inputs_owned = receiver. assume_interactive_receiver ( ) ;
1221- let maybe_inputs_seen = maybe_inputs_owned. 0 . 1 . check_inputs_not_owned ( & mut |_| Ok ( false ) ) ;
1222- let outputs_unknown = match maybe_inputs_seen. 0 {
1223- Ok ( state) => state. 1 . check_no_inputs_seen_before ( & mut |_| {
1224- Err ( ImplementationError :: new ( ReplyableError :: Implementation ( "mock error" . into ( ) ) ) )
1225- } ) ,
1226- Err ( _) => panic ! ( "Expected Ok, got Err" ) ,
1227- } ;
1228-
1222+ let maybe_inputs_owned = receiver
1223+ . assume_interactive_receiver ( )
1224+ . save ( & persister)
1225+ . expect ( "Noop persister shouldn't fail" ) ;
1226+ let maybe_inputs_seen = maybe_inputs_owned
1227+ . check_inputs_not_owned ( & mut |_| Ok ( false ) )
1228+ . save ( & persister)
1229+ . expect ( "Noop persister shouldn't fail" ) ;
1230+ let outputs_unknown = maybe_inputs_seen. check_no_inputs_seen_before ( & mut |_| {
1231+ Err ( ImplementationError :: new ( ReplyableError :: Implementation ( "mock error" . into ( ) ) ) )
1232+ } ) ;
12291233 match outputs_unknown {
12301234 MaybeFatalTransition ( Err ( Rejection :: Transient ( RejectTransient (
12311235 ReplyableError :: Implementation ( error) ,
@@ -1241,22 +1245,25 @@ pub mod test {
12411245
12421246 #[ test]
12431247 fn test_wants_outputs_transient_error ( ) -> Result < ( ) , BoxError > {
1248+ let persister = NoopSessionPersister :: default ( ) ;
12441249 let unchecked_proposal = unchecked_proposal_v2_from_test_vector ( ) ;
12451250 let receiver = v2:: Receiver { state : unchecked_proposal } ;
12461251
1247- let maybe_inputs_owned = receiver. assume_interactive_receiver ( ) ;
1248- let maybe_inputs_seen = maybe_inputs_owned. 0 . 1 . check_inputs_not_owned ( & mut |_| Ok ( false ) ) ;
1249- let outputs_unknown = match maybe_inputs_seen. 0 {
1250- Ok ( state) => state. 1 . check_no_inputs_seen_before ( & mut |_| Ok ( false ) ) ,
1251- Err ( _) => panic ! ( "Expected Ok, got Err" ) ,
1252- } ;
1253- let wants_outputs = match outputs_unknown. 0 {
1254- Ok ( state) => state. 1 . identify_receiver_outputs ( & mut |_| {
1255- Err ( ImplementationError :: new ( ReplyableError :: Implementation ( "mock error" . into ( ) ) ) )
1256- } ) ,
1257- Err ( _) => panic ! ( "Expected Ok, got Err" ) ,
1258- } ;
1259-
1252+ let maybe_inputs_owned = receiver
1253+ . assume_interactive_receiver ( )
1254+ . save ( & persister)
1255+ . expect ( "Noop persister shouldn't fail" ) ;
1256+ let maybe_inputs_seen = maybe_inputs_owned
1257+ . check_inputs_not_owned ( & mut |_| Ok ( false ) )
1258+ . save ( & persister)
1259+ . expect ( "Noop persister should not fail" ) ;
1260+ let outputs_unknown = maybe_inputs_seen
1261+ . check_no_inputs_seen_before ( & mut |_| Ok ( false ) )
1262+ . save ( & persister)
1263+ . expect ( "Noop persister should not fail" ) ;
1264+ let wants_outputs = outputs_unknown. identify_receiver_outputs ( & mut |_| {
1265+ Err ( ImplementationError :: new ( ReplyableError :: Implementation ( "mock error" . into ( ) ) ) )
1266+ } ) ;
12601267 match wants_outputs {
12611268 MaybeFatalTransition ( Err ( Rejection :: Transient ( RejectTransient (
12621269 ReplyableError :: Implementation ( error) ,
0 commit comments