From c8c19bb75c48b931e2114c6044ff8dbc105720ea Mon Sep 17 00:00:00 2001 From: Jacinta Ferrant Date: Fri, 9 Feb 2024 10:07:38 -0800 Subject: [PATCH] Fix nakamoto integration stacking in advance to epoch 3 reward set Signed-off-by: Jacinta Ferrant --- .../src/tests/nakamoto_integrations.rs | 28 +++++++++++++++---- 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/testnet/stacks-node/src/tests/nakamoto_integrations.rs b/testnet/stacks-node/src/tests/nakamoto_integrations.rs index ec63ccfcc..17a277663 100644 --- a/testnet/stacks-node/src/tests/nakamoto_integrations.rs +++ b/testnet/stacks-node/src/tests/nakamoto_integrations.rs @@ -606,13 +606,28 @@ pub fn boot_to_epoch_3_reward_set( next_block_and_wait(btc_regtest_controller, &blocks_processed); // stack enough to activate pox-4 - let pox_addr_tuple = clarity::vm::tests::execute(&format!( - "{{ hashbytes: 0x{}, version: 0x{:02x} }}", - to_hex(&[0; 20]), - AddressHashMode::SerializeP2PKH as u8, - )); - + let block_height = btc_regtest_controller.get_headers_height(); + let reward_cycle = btc_regtest_controller + .get_burnchain() + .block_height_to_reward_cycle(block_height) + .unwrap(); for (stacker_sk, signer_pk) in stacker_sks.iter().zip(signer_pks.iter()) { + let pox_addr = PoxAddress::from_legacy( + AddressHashMode::SerializeP2PKH, + tests::to_addr(&stacker_sk).bytes, + ); + let pox_addr_tuple: clarity::vm::Value = + pox_addr.clone().as_clarity_tuple().unwrap().into(); + let signature = make_pox_4_signer_key_signature( + &pox_addr, + stacker_sk, + reward_cycle.into(), + &Pox4SignatureTopic::StackStx, + CHAIN_ID_TESTNET, + 12_u128, + ) + .unwrap() + .to_rsv(); let stacking_tx = tests::make_contract_call( &stacker_sk, 0, @@ -625,6 +640,7 @@ pub fn boot_to_epoch_3_reward_set( pox_addr_tuple.clone(), clarity::vm::Value::UInt(205), clarity::vm::Value::UInt(12), + clarity::vm::Value::buff_from(signature).unwrap(), clarity::vm::Value::buff_from(signer_pk.to_bytes_compressed()).unwrap(), ], );