@@ -376,7 +376,7 @@ mod update_channel_state_redeem {
376
376
377
377
#[ test]
378
378
fn redeem_voucher_one_lane ( ) {
379
- let ( mut rt, mut sv) = require_create_cannel_with_lanes ( 1 ) ;
379
+ let ( mut rt, mut sv) = require_create_channel_with_lanes ( 1 ) ;
380
380
let state: PState = rt. get_state ( ) . unwrap ( ) ;
381
381
let payee_addr = Address :: new_id ( PAYEE_ID ) ;
382
382
@@ -415,7 +415,7 @@ mod update_channel_state_redeem {
415
415
416
416
#[ test]
417
417
fn redeem_voucher_correct_lane ( ) {
418
- let ( mut rt, mut sv) = require_create_cannel_with_lanes ( 3 ) ;
418
+ let ( mut rt, mut sv) = require_create_channel_with_lanes ( 3 ) ;
419
419
let state: PState = rt. get_state ( ) . unwrap ( ) ;
420
420
let payee_addr = Address :: new_id ( PAYEE_ID ) ;
421
421
@@ -460,7 +460,7 @@ mod merge_tests {
460
460
use super :: * ;
461
461
462
462
fn construct_runtime ( num_lanes : u64 ) -> ( MockRuntime , SignedVoucher , PState ) {
463
- let ( mut rt, sv) = require_create_cannel_with_lanes ( num_lanes) ;
463
+ let ( mut rt, sv) = require_create_channel_with_lanes ( num_lanes) ;
464
464
let state: PState = rt. get_state ( ) . unwrap ( ) ;
465
465
rt. set_caller ( * ACCOUNT_ACTOR_CODE_ID , state. from ) ;
466
466
rt. expect_validate_caller_addr ( vec ! [ state. from, state. to] ) ;
@@ -582,7 +582,7 @@ mod merge_tests {
582
582
#[ test]
583
583
fn invalid_merge_lane_999 ( ) {
584
584
let num_lanes = 2 ;
585
- let ( mut rt, mut sv) = require_create_cannel_with_lanes ( num_lanes) ;
585
+ let ( mut rt, mut sv) = require_create_channel_with_lanes ( num_lanes) ;
586
586
let state: PState = rt. get_state ( ) . unwrap ( ) ;
587
587
588
588
sv. lane = 0 ;
@@ -616,7 +616,7 @@ mod update_channel_state_extra {
616
616
const OTHER_ADDR : u64 = 104 ;
617
617
618
618
fn construct_runtime ( exit_code : ExitCode ) -> ( MockRuntime , SignedVoucher ) {
619
- let ( mut rt, mut sv) = require_create_cannel_with_lanes ( 1 ) ;
619
+ let ( mut rt, mut sv) = require_create_channel_with_lanes ( 1 ) ;
620
620
let state: PState = rt. get_state ( ) . unwrap ( ) ;
621
621
let other_addr = Address :: new_id ( OTHER_ADDR ) ;
622
622
let fake_params = [ 1 , 2 , 3 , 4 ] ;
@@ -677,7 +677,7 @@ mod update_channel_state_extra {
677
677
678
678
#[ test]
679
679
fn update_channel_settling ( ) {
680
- let ( mut rt, sv) = require_create_cannel_with_lanes ( 1 ) ;
680
+ let ( mut rt, sv) = require_create_channel_with_lanes ( 1 ) ;
681
681
rt. epoch = 10 ;
682
682
let state: PState = rt. get_state ( ) . unwrap ( ) ;
683
683
rt. expect_validate_caller_addr ( vec ! [ state. from, state. to] ) ;
@@ -732,7 +732,7 @@ mod secret_preimage {
732
732
733
733
#[ test]
734
734
fn succeed_correct_secret ( ) {
735
- let ( mut rt, sv) = require_create_cannel_with_lanes ( 1 ) ;
735
+ let ( mut rt, sv) = require_create_channel_with_lanes ( 1 ) ;
736
736
let state: PState = rt. get_state ( ) . unwrap ( ) ;
737
737
rt. expect_validate_caller_addr ( vec ! [ state. from, state. to] ) ;
738
738
@@ -752,7 +752,7 @@ mod secret_preimage {
752
752
753
753
#[ test]
754
754
fn incorrect_secret ( ) {
755
- let ( mut rt, sv) = require_create_cannel_with_lanes ( 1 ) ;
755
+ let ( mut rt, sv) = require_create_channel_with_lanes ( 1 ) ;
756
756
757
757
let state: PState = rt. get_state ( ) . unwrap ( ) ;
758
758
@@ -785,7 +785,7 @@ mod actor_settle {
785
785
const EP : i64 = 10 ;
786
786
#[ test]
787
787
fn adjust_settling_at ( ) {
788
- let ( mut rt, _sv) = require_create_cannel_with_lanes ( 1 ) ;
788
+ let ( mut rt, _sv) = require_create_channel_with_lanes ( 1 ) ;
789
789
rt. epoch = EP ;
790
790
let mut state: PState = rt. get_state ( ) . unwrap ( ) ;
791
791
rt. set_caller ( * ACCOUNT_ACTOR_CODE_ID , state. from ) ;
@@ -801,7 +801,7 @@ mod actor_settle {
801
801
802
802
#[ test]
803
803
fn call_twice ( ) {
804
- let ( mut rt, _sv) = require_create_cannel_with_lanes ( 1 ) ;
804
+ let ( mut rt, _sv) = require_create_channel_with_lanes ( 1 ) ;
805
805
rt. epoch = EP ;
806
806
let state: PState = rt. get_state ( ) . unwrap ( ) ;
807
807
rt. set_caller ( * ACCOUNT_ACTOR_CODE_ID , state. from ) ;
@@ -819,7 +819,7 @@ mod actor_settle {
819
819
820
820
#[ test]
821
821
fn settle_if_height_less ( ) {
822
- let ( mut rt, mut sv) = require_create_cannel_with_lanes ( 1 ) ;
822
+ let ( mut rt, mut sv) = require_create_channel_with_lanes ( 1 ) ;
823
823
rt. epoch = EP ;
824
824
let mut state: PState = rt. get_state ( ) . unwrap ( ) ;
825
825
@@ -847,6 +847,35 @@ mod actor_settle {
847
847
state = rt. get_state ( ) . unwrap ( ) ;
848
848
assert_eq ! ( state. settling_at, ucp. sv. min_settle_height) ;
849
849
}
850
+
851
+ #[ test]
852
+ fn voucher_invalid_after_settling ( ) {
853
+ const ERR_CHANNEL_STATE_UPDATE_AFTER_SETTLED : ExitCode = ExitCode :: new ( 32 ) ;
854
+
855
+ let ( mut rt, sv) = require_create_channel_with_lanes ( 1 ) ;
856
+ rt. epoch = EP ;
857
+ let mut state: PState = rt. get_state ( ) . unwrap ( ) ;
858
+ rt. set_caller ( * ACCOUNT_ACTOR_CODE_ID , state. from ) ;
859
+ rt. expect_validate_caller_addr ( vec ! [ state. from, state. to] ) ;
860
+
861
+ call ( & mut rt, Method :: Settle as u64 , & RawBytes :: default ( ) ) ;
862
+
863
+ state = rt. get_state ( ) . unwrap ( ) ;
864
+ rt. epoch = state. settling_at + 40 ;
865
+ rt. expect_validate_caller_addr ( vec ! [ state. from, state. to] ) ;
866
+ rt. expect_verify_signature ( ExpectedVerifySig {
867
+ sig : sv. clone ( ) . signature . unwrap ( ) ,
868
+ signer : Address :: new_id ( PAYEE_ID ) ,
869
+ plaintext : sv. signing_bytes ( ) . unwrap ( ) ,
870
+ result : Ok ( ( ) ) ,
871
+ } ) ;
872
+ expect_error (
873
+ & mut rt,
874
+ Method :: UpdateChannelState as u64 ,
875
+ & RawBytes :: serialize ( UpdateChannelStateParams :: from ( sv) ) . unwrap ( ) ,
876
+ ERR_CHANNEL_STATE_UPDATE_AFTER_SETTLED ,
877
+ ) ;
878
+ }
850
879
}
851
880
852
881
mod actor_collect {
@@ -856,7 +885,7 @@ mod actor_collect {
856
885
857
886
#[ test]
858
887
fn happy_path ( ) {
859
- let ( mut rt, _sv) = require_create_cannel_with_lanes ( 1 ) ;
888
+ let ( mut rt, _sv) = require_create_channel_with_lanes ( 1 ) ;
860
889
let curr_epoch: ChainEpoch = 10 ;
861
890
rt. epoch = curr_epoch;
862
891
let st: PState = rt. get_state ( ) . unwrap ( ) ;
@@ -914,7 +943,7 @@ mod actor_collect {
914
943
] ;
915
944
916
945
for tc in test_cases {
917
- let ( mut rt, _sv) = require_create_cannel_with_lanes ( 1 ) ;
946
+ let ( mut rt, _sv) = require_create_channel_with_lanes ( 1 ) ;
918
947
rt. epoch = 10 ;
919
948
let mut state: PState = rt. get_state ( ) . unwrap ( ) ;
920
949
@@ -950,7 +979,7 @@ mod actor_collect {
950
979
}
951
980
}
952
981
953
- fn require_create_cannel_with_lanes ( num_lanes : u64 ) -> ( MockRuntime , SignedVoucher ) {
982
+ fn require_create_channel_with_lanes ( num_lanes : u64 ) -> ( MockRuntime , SignedVoucher ) {
954
983
let paych_addr = Address :: new_id ( 100 ) ;
955
984
let payer_addr = Address :: new_id ( PAYER_ID ) ;
956
985
let payee_addr = Address :: new_id ( PAYEE_ID ) ;
0 commit comments