From b365bb87739f4427a26652f88403e401f2ec8dee Mon Sep 17 00:00:00 2001 From: Paul Hauner Date: Sat, 29 Dec 2018 14:34:22 +1100 Subject: [PATCH] Re-add ValidatorRecord::status_is() fn It was accidentally removed. --- beacon_chain/types/src/validator_record.rs | 6 ++++++ beacon_chain/validator_induction/src/inductor.rs | 15 +++++++++------ beacon_chain/validator_shuffling/src/shuffle.rs | 2 +- 3 files changed, 16 insertions(+), 7 deletions(-) diff --git a/beacon_chain/types/src/validator_record.rs b/beacon_chain/types/src/validator_record.rs index 7da858676..45b6c301a 100644 --- a/beacon_chain/types/src/validator_record.rs +++ b/beacon_chain/types/src/validator_record.rs @@ -41,6 +41,12 @@ pub struct ValidatorRecord { pub exit_slot: u64, } +impl ValidatorRecord { + pub fn status_is(&self, status: ValidatorStatus) -> bool { + self.status == status + } +} + impl Encodable for ValidatorStatus { fn ssz_append(&self, s: &mut SszStream) { let byte: u8 = match self { diff --git a/beacon_chain/validator_induction/src/inductor.rs b/beacon_chain/validator_induction/src/inductor.rs index 79d8fc256..3d3b15ce3 100644 --- a/beacon_chain/validator_induction/src/inductor.rs +++ b/beacon_chain/validator_induction/src/inductor.rs @@ -110,8 +110,8 @@ impl ValidatorInductor { mod tests { use super::*; - use bls::{create_proof_of_possession, Keypair, Signature}; - use hashing::canonical_hash; + use bls::{create_proof_of_possession, Keypair}; + use types::test_utils::{SeedableRng, TestRandom, XorShiftRng}; use types::{Address, Hash256}; fn registration_equals_record(reg: &ValidatorRegistration, rec: &ValidatorRecord) -> bool { @@ -167,9 +167,10 @@ mod tests { #[test] fn test_validator_inductor_valid_all_active_validators() { + let mut rng = XorShiftRng::from_seed([42; 16]); let mut validators = vec![]; for _ in 0..5 { - let (mut v, _) = ValidatorRecord::zero_with_thread_rand_keypair(); + let mut v = ValidatorRecord::random_for_test(&mut rng); v.status = ValidatorStatus::Active; validators.push(v); } @@ -187,12 +188,13 @@ mod tests { #[test] fn test_validator_inductor_valid_all_second_validator_withdrawn() { + let mut rng = XorShiftRng::from_seed([42; 16]); let mut validators = vec![]; - let (mut v, _) = ValidatorRecord::zero_with_thread_rand_keypair(); + let mut v = ValidatorRecord::random_for_test(&mut rng); v.status = ValidatorStatus::Active; validators.push(v); for _ in 0..4 { - let (mut v, _) = ValidatorRecord::zero_with_thread_rand_keypair(); + let mut v = ValidatorRecord::random_for_test(&mut rng); v.status = ValidatorStatus::Withdrawn; validators.push(v); } @@ -210,9 +212,10 @@ mod tests { #[test] fn test_validator_inductor_valid_all_withdrawn_validators() { + let mut rng = XorShiftRng::from_seed([42; 16]); let mut validators = vec![]; for _ in 0..5 { - let (mut v, _) = ValidatorRecord::zero_with_thread_rand_keypair(); + let mut v = ValidatorRecord::random_for_test(&mut rng); v.status = ValidatorStatus::Withdrawn; validators.push(v); } diff --git a/beacon_chain/validator_shuffling/src/shuffle.rs b/beacon_chain/validator_shuffling/src/shuffle.rs index ee7389949..5b31f8e03 100644 --- a/beacon_chain/validator_shuffling/src/shuffle.rs +++ b/beacon_chain/validator_shuffling/src/shuffle.rs @@ -95,7 +95,7 @@ fn generate_cycle( .honey_badger_split(committees_per_slot) .enumerate() .map(|(j, shard_indices)| ShardCommittee { - shard: ((shard_start + j) % shard_count) as u16, + shard: ((shard_start + j) % shard_count) as u64, committee: shard_indices.to_vec(), }) .collect()