stake tests modification: next_epoch_and_n_slots (#32052)
stake tests modification: next_epoch_and_n_slots
This commit is contained in:
parent
129b457c99
commit
2572df7452
|
@ -29,14 +29,26 @@ use {
|
||||||
std::sync::Arc,
|
std::sync::Arc,
|
||||||
};
|
};
|
||||||
|
|
||||||
fn next_epoch(bank: &Arc<Bank>) -> Arc<Bank> {
|
/// get bank at next epoch + `n` slots
|
||||||
|
fn next_epoch_and_n_slots(bank: &Arc<Bank>, mut n: usize) -> Arc<Bank> {
|
||||||
bank.squash();
|
bank.squash();
|
||||||
|
let mut bank = Arc::new(Bank::new_from_parent(
|
||||||
Arc::new(Bank::new_from_parent(
|
|
||||||
bank,
|
bank,
|
||||||
&Pubkey::default(),
|
&Pubkey::default(),
|
||||||
bank.get_slots_in_epoch(bank.epoch()) + bank.slot(),
|
bank.get_slots_in_epoch(bank.epoch()) + bank.slot(),
|
||||||
))
|
));
|
||||||
|
|
||||||
|
while n > 0 {
|
||||||
|
bank.squash();
|
||||||
|
bank = Arc::new(Bank::new_from_parent(
|
||||||
|
&bank,
|
||||||
|
&Pubkey::default(),
|
||||||
|
1 + bank.slot(),
|
||||||
|
));
|
||||||
|
n -= 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
bank
|
||||||
}
|
}
|
||||||
|
|
||||||
fn fill_epoch_with_votes(
|
fn fill_epoch_with_votes(
|
||||||
|
@ -385,7 +397,7 @@ fn test_stake_account_lifetime() {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
// Cycle thru banks until we're fully warmed up
|
// Cycle thru banks until we're fully warmed up
|
||||||
bank = next_epoch(&bank);
|
bank = next_epoch_and_n_slots(&bank, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Reward redemption
|
// Reward redemption
|
||||||
|
@ -409,7 +421,7 @@ fn test_stake_account_lifetime() {
|
||||||
let pre_balance = bank.get_balance(&stake_pubkey);
|
let pre_balance = bank.get_balance(&stake_pubkey);
|
||||||
|
|
||||||
// next epoch bank should pay rewards
|
// next epoch bank should pay rewards
|
||||||
bank = next_epoch(&bank);
|
bank = next_epoch_and_n_slots(&bank, 0);
|
||||||
|
|
||||||
// Test that balance increased, and that the balance got staked
|
// Test that balance increased, and that the balance got staked
|
||||||
let staked = get_staked(&bank, &stake_pubkey);
|
let staked = get_staked(&bank, &stake_pubkey);
|
||||||
|
@ -477,7 +489,8 @@ fn test_stake_account_lifetime() {
|
||||||
.send_and_confirm_message(&[&mint_keypair, &stake_keypair], message)
|
.send_and_confirm_message(&[&mint_keypair, &stake_keypair], message)
|
||||||
.is_err());
|
.is_err());
|
||||||
|
|
||||||
let mut bank = next_epoch(&bank);
|
let mut bank = next_epoch_and_n_slots(&bank, 0);
|
||||||
|
|
||||||
let bank_client = BankClient::new_shared(&bank);
|
let bank_client = BankClient::new_shared(&bank);
|
||||||
|
|
||||||
// assert we're still cooling down
|
// assert we're still cooling down
|
||||||
|
@ -522,7 +535,7 @@ fn test_stake_account_lifetime() {
|
||||||
if get_staked(&bank, &split_stake_pubkey) == 0 {
|
if get_staked(&bank, &split_stake_pubkey) == 0 {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
bank = next_epoch(&bank);
|
bank = next_epoch_and_n_slots(&bank, 0);
|
||||||
}
|
}
|
||||||
let bank_client = BankClient::new_shared(&bank);
|
let bank_client = BankClient::new_shared(&bank);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue