@@ -1019,6 +1019,7 @@ pub mod test {
10191019
10201020 let num_blocks = 10 ;
10211021 let mut expected_liquid_ustx = 1024 * POX_THRESHOLD_STEPS_USTX * ( keys. len ( ) as u128 ) ;
1022+ let mut prior_liquid_ustx = expected_liquid_ustx;
10221023 let mut missed_initial_blocks = 0 ;
10231024
10241025 for tenure_id in 0 ..num_blocks {
@@ -1070,13 +1071,15 @@ pub mod test {
10701071 peer. process_stacks_epoch_at_tip ( & stacks_block, & microblocks) ;
10711072
10721073 let liquid_ustx = get_liquid_ustx ( & mut peer) ;
1073- assert_eq ! ( liquid_ustx, expected_liquid_ustx) ;
1074+ // get_liquid_ustx is "off by one", i.e., it loads the parents liquid ustx
1075+ assert_eq ! ( liquid_ustx, prior_liquid_ustx) ;
10741076
10751077 if tenure_id >= MINER_REWARD_MATURITY as usize {
10761078 let block_reward = 1_000 * MICROSTACKS_PER_STACKS as u128 ;
1077- let expected_bonus = ( missed_initial_blocks as u128 ) * block_reward
1079+ let expected_bonus = ( missed_initial_blocks as u128 * block_reward)
10781080 / ( INITIAL_MINING_BONUS_WINDOW as u128 ) ;
10791081 // add mature coinbases
1082+ prior_liquid_ustx = expected_liquid_ustx;
10801083 expected_liquid_ustx += block_reward + expected_bonus;
10811084 }
10821085 }
@@ -1317,6 +1320,7 @@ pub mod test {
13171320
13181321 let num_blocks = 10 ;
13191322 let mut expected_liquid_ustx = 1024 * POX_THRESHOLD_STEPS_USTX * ( keys. len ( ) as u128 ) ;
1323+ let mut prior_liquid_ustx = expected_liquid_ustx;
13201324 let mut missed_initial_blocks = 0 ;
13211325
13221326 let alice = keys. pop ( ) . unwrap ( ) ;
@@ -1377,10 +1381,12 @@ pub mod test {
13771381 peer. next_burnchain_block ( burn_ops. clone ( ) ) ;
13781382 peer. process_stacks_epoch_at_tip ( & stacks_block, & microblocks) ;
13791383
1380- expected_liquid_ustx -= 1 ;
1381-
13821384 let liquid_ustx = get_liquid_ustx ( & mut peer) ;
1383- assert_eq ! ( liquid_ustx, expected_liquid_ustx) ;
1385+ // get_liquid_ustx is "off by one", i.e., it loads the parents liquid ustx
1386+ assert_eq ! ( liquid_ustx, prior_liquid_ustx) ;
1387+
1388+ expected_liquid_ustx -= 1 ;
1389+ prior_liquid_ustx = expected_liquid_ustx;
13841390
13851391 if tenure_id >= MINER_REWARD_MATURITY as usize {
13861392 let block_reward = 1_000 * MICROSTACKS_PER_STACKS as u128 ;
@@ -1815,7 +1821,7 @@ pub mod test {
18151821
18161822 if cur_reward_cycle >= lockup_reward_cycle {
18171823 // this will grow as more miner rewards are unlocked, so be wary
1818- if tenure_id >= ( MINER_REWARD_MATURITY + 1 ) as usize {
1824+ if tenure_id >= ( MINER_REWARD_MATURITY + 2 ) as usize {
18191825 // miner rewards increased liquid supply, so less than 25% is locked.
18201826 // minimum participation decreases.
18211827 assert ! ( total_liquid_ustx > 4 * 1024 * POX_THRESHOLD_STEPS_USTX ) ;
@@ -2404,7 +2410,7 @@ pub mod test {
24042410 "(define-data-var test-run bool false)
24052411 (define-data-var test-result int -1)
24062412 (let ((result
2407- (contract-call? '{}.pox stack-stx u256000000 (tuple (version 0x00) (hashbytes 0xae1593226f85e49a7eaff5b633ff687695438cc9)) burn-block-height u12)))
2413+ (contract-call? '{}.pox stack-stx u10240000000000 (tuple (version 0x00) (hashbytes 0xae1593226f85e49a7eaff5b633ff687695438cc9)) burn-block-height u12)))
24082414 (var-set test-result
24092415 (match result ok_value -1 err_value err_value))
24102416 (var-set test-run true))
@@ -2703,7 +2709,7 @@ pub mod test {
27032709
27042710 if cur_reward_cycle >= alice_reward_cycle {
27052711 // this will grow as more miner rewards are unlocked, so be wary
2706- if tenure_id >= ( MINER_REWARD_MATURITY + 1 ) as usize {
2712+ if tenure_id >= ( MINER_REWARD_MATURITY + 2 ) as usize {
27072713 // miner rewards increased liquid supply, so less than 25% is locked.
27082714 // minimum participation decreases.
27092715 assert ! ( total_liquid_ustx > 4 * 1024 * POX_THRESHOLD_STEPS_USTX ) ;
@@ -3017,7 +3023,7 @@ pub mod test {
30173023 eprintln ! ( "\n tenure: {}\n reward cycle: {}\n min-uSTX: {}\n addrs: {:?}\n total_liquid_ustx: {}\n total-stacked: {}\n " , tenure_id, cur_reward_cycle, min_ustx, & reward_addrs, total_liquid_ustx, total_stacked) ;
30183024
30193025 // this will grow as more miner rewards are unlocked, so be wary
3020- if tenure_id >= ( MINER_REWARD_MATURITY + 1 ) as usize {
3026+ if tenure_id >= ( MINER_REWARD_MATURITY + 2 ) as usize {
30213027 // miner rewards increased liquid supply, so less than 25% is locked.
30223028 // minimum participation decreases.
30233029 assert ! ( total_liquid_ustx > 4 * 1024 * POX_THRESHOLD_STEPS_USTX ) ;
@@ -3817,7 +3823,7 @@ pub mod test {
38173823 // Note: this behavior is a bug in the miner and block processor: see issue #?
38183824 let charlie_stack = make_bare_contract ( & charlie, 2 , 0 , "charlie-try-stack" ,
38193825 & format ! (
3820- "(asserts! (not (is-eq (print (contract-call? '{}.pox stack-stx u1 {{ version: 0x01, hashbytes: 0x1111111111111111111111111111111111111111 }} burn-block-height u1)) (err 17))) (err 1))" ,
3826+ "(asserts! (not (is-eq (print (contract-call? '{}.pox stack-stx u10240000000000 {{ version: 0x01, hashbytes: 0x1111111111111111111111111111111111111111 }} burn-block-height u1)) (err 17))) (err 1))" ,
38213827 boot_code_addr( ) ) ) ;
38223828
38233829 block_txs. push ( charlie_stack) ;
@@ -3961,7 +3967,7 @@ pub mod test {
39613967
39623968 if cur_reward_cycle >= alice_reward_cycle {
39633969 // this will grow as more miner rewards are unlocked, so be wary
3964- if tenure_id >= ( MINER_REWARD_MATURITY + 1 ) as usize {
3970+ if tenure_id >= ( MINER_REWARD_MATURITY + 2 ) as usize {
39653971 // miner rewards increased liquid supply, so less than 25% is locked.
39663972 // minimum participation decreases.
39673973 assert ! ( total_liquid_ustx > 4 * 1024 * POX_THRESHOLD_STEPS_USTX ) ;
0 commit comments