mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-05-31 09:51:02 +00:00
Fix clippy warnings (#7625)
* Fix clippy check Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io> * Autofix clippy Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io> * Fix trivial Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io> * fmt Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io> * suppress warnings Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io> * Quiet clippy 😌 Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io> --------- Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
This commit is contained in:
committed by
GitHub
parent
a0f83eb992
commit
d501d92176
@@ -377,8 +377,8 @@ impl<T: paras_inherent::Config> BenchBuilder<T> {
|
||||
|
||||
fn signing_context(&self) -> SigningContext<T::Hash> {
|
||||
SigningContext {
|
||||
parent_hash: Self::header(self.block_number.clone()).hash(),
|
||||
session_index: self.session.clone(),
|
||||
parent_hash: Self::header(self.block_number).hash(),
|
||||
session_index: self.session,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -408,7 +408,7 @@ impl<T: paras_inherent::Config> BenchBuilder<T> {
|
||||
}
|
||||
|
||||
let block_number = BlockNumberFor::<T>::from(block);
|
||||
let header = Self::header(block_number.clone());
|
||||
let header = Self::header(block_number);
|
||||
|
||||
frame_system::Pallet::<T>::reset_events();
|
||||
frame_system::Pallet::<T>::initialize(
|
||||
@@ -464,13 +464,13 @@ impl<T: paras_inherent::Config> BenchBuilder<T> {
|
||||
|
||||
for (seed, _) in concluding_cores.iter() {
|
||||
// make sure the candidates that will be concluding are marked as pending availability.
|
||||
let (para_id, core_idx, group_idx) = self.create_indexes(seed.clone());
|
||||
let (para_id, core_idx, group_idx) = self.create_indexes(*seed);
|
||||
Self::add_availability(
|
||||
para_id,
|
||||
core_idx,
|
||||
group_idx,
|
||||
Self::validator_availability_votes_yes(validators.len()),
|
||||
CandidateHash(H256::from(byte32_slice_from(seed.clone()))),
|
||||
CandidateHash(H256::from(byte32_slice_from(*seed))),
|
||||
);
|
||||
}
|
||||
|
||||
@@ -496,11 +496,11 @@ impl<T: paras_inherent::Config> BenchBuilder<T> {
|
||||
.iter()
|
||||
.map(|(seed, num_votes)| {
|
||||
assert!(*num_votes <= validators.len() as u32);
|
||||
let (para_id, _core_idx, group_idx) = self.create_indexes(seed.clone());
|
||||
let (para_id, _core_idx, group_idx) = self.create_indexes(*seed);
|
||||
|
||||
// This generates a pair and adds it to the keystore, returning just the public.
|
||||
let collator_public = CollatorId::generate_pair(None);
|
||||
let header = Self::header(self.block_number.clone());
|
||||
let header = Self::header(self.block_number);
|
||||
let relay_parent = header.hash();
|
||||
let head_data = Self::mock_head_data();
|
||||
let persisted_validation_data_hash = PersistedValidationData::<H256> {
|
||||
@@ -563,7 +563,7 @@ impl<T: paras_inherent::Config> BenchBuilder<T> {
|
||||
let public = validators.get(*val_idx).unwrap();
|
||||
let sig = UncheckedSigned::<CompactStatement>::benchmark_sign(
|
||||
public,
|
||||
CompactStatement::Valid(candidate_hash.clone()),
|
||||
CompactStatement::Valid(candidate_hash),
|
||||
&self.signing_context(),
|
||||
*val_idx,
|
||||
)
|
||||
@@ -632,14 +632,14 @@ impl<T: paras_inherent::Config> BenchBuilder<T> {
|
||||
} else {
|
||||
DisputeStatement::Valid(ValidDisputeStatementKind::Explicit)
|
||||
};
|
||||
let data = dispute_statement.payload_data(candidate_hash.clone(), session);
|
||||
let data = dispute_statement.payload_data(candidate_hash, session);
|
||||
let statement_sig = validator_public.sign(&data).unwrap();
|
||||
|
||||
(dispute_statement, ValidatorIndex(validator_index), statement_sig)
|
||||
})
|
||||
.collect();
|
||||
|
||||
DisputeStatementSet { candidate_hash: candidate_hash.clone(), session, statements }
|
||||
DisputeStatementSet { candidate_hash: candidate_hash, session, statements }
|
||||
})
|
||||
.collect()
|
||||
}
|
||||
@@ -702,7 +702,7 @@ impl<T: paras_inherent::Config> BenchBuilder<T> {
|
||||
bitfields,
|
||||
backed_candidates,
|
||||
disputes,
|
||||
parent_header: Self::header(builder.block_number.clone()),
|
||||
parent_header: Self::header(builder.block_number),
|
||||
},
|
||||
_session: target_session,
|
||||
_block_number: builder.block_number,
|
||||
|
||||
@@ -377,7 +377,6 @@ fn test_initializer_on_new_session() {
|
||||
let mock_genesis_config = MockGenesisConfig {
|
||||
configuration: crate::configuration::GenesisConfig {
|
||||
config: HostConfiguration { dispute_period, ..Default::default() },
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
};
|
||||
@@ -386,13 +385,13 @@ fn test_initializer_on_new_session() {
|
||||
let v0 = <ValidatorId as CryptoType>::Pair::generate().0;
|
||||
|
||||
let candidate_hash = CandidateHash(sp_core::H256::repeat_byte(1));
|
||||
Pallet::<Test>::note_included(0, candidate_hash.clone(), 0);
|
||||
Pallet::<Test>::note_included(1, candidate_hash.clone(), 1);
|
||||
Pallet::<Test>::note_included(2, candidate_hash.clone(), 2);
|
||||
Pallet::<Test>::note_included(3, candidate_hash.clone(), 3);
|
||||
Pallet::<Test>::note_included(4, candidate_hash.clone(), 4);
|
||||
Pallet::<Test>::note_included(5, candidate_hash.clone(), 5);
|
||||
Pallet::<Test>::note_included(6, candidate_hash.clone(), 5);
|
||||
Pallet::<Test>::note_included(0, candidate_hash, 0);
|
||||
Pallet::<Test>::note_included(1, candidate_hash, 1);
|
||||
Pallet::<Test>::note_included(2, candidate_hash, 2);
|
||||
Pallet::<Test>::note_included(3, candidate_hash, 3);
|
||||
Pallet::<Test>::note_included(4, candidate_hash, 4);
|
||||
Pallet::<Test>::note_included(5, candidate_hash, 5);
|
||||
Pallet::<Test>::note_included(6, candidate_hash, 5);
|
||||
|
||||
run_to_block(7, |b| {
|
||||
// a new session at each block
|
||||
@@ -465,7 +464,7 @@ fn test_provide_multi_dispute_is_providing() {
|
||||
let inclusion_parent = sp_core::H256::repeat_byte(0xff);
|
||||
let session = 1;
|
||||
let stmts = vec![DisputeStatementSet {
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
candidate_hash,
|
||||
session,
|
||||
statements: vec![
|
||||
(
|
||||
@@ -481,12 +480,8 @@ fn test_provide_multi_dispute_is_providing() {
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(1),
|
||||
v1.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
],
|
||||
@@ -499,7 +494,7 @@ fn test_provide_multi_dispute_is_providing() {
|
||||
.map(CheckedDisputeStatementSet::unchecked_from_unchecked)
|
||||
.collect()
|
||||
),
|
||||
vec![(1, candidate_hash.clone())],
|
||||
vec![(1, candidate_hash)],
|
||||
);
|
||||
})
|
||||
}
|
||||
@@ -528,31 +523,23 @@ fn test_disputes_with_missing_backing_votes_are_rejected() {
|
||||
let session = 1;
|
||||
|
||||
let stmts = vec![DisputeStatementSet {
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
candidate_hash,
|
||||
session,
|
||||
statements: vec![
|
||||
(
|
||||
DisputeStatement::Valid(ValidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(0),
|
||||
v0.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: true,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: true, candidate_hash, session }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
(
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(1),
|
||||
v1.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
],
|
||||
@@ -590,31 +577,23 @@ fn test_freeze_on_note_included() {
|
||||
|
||||
// v0 votes for 3
|
||||
let stmts = vec![DisputeStatementSet {
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
candidate_hash,
|
||||
session: 3,
|
||||
statements: vec![
|
||||
(
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(0),
|
||||
v0.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session: 3,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session: 3 }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
(
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(1),
|
||||
v1.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session: 3,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session: 3 }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
(
|
||||
@@ -636,7 +615,7 @@ fn test_freeze_on_note_included() {
|
||||
)
|
||||
.is_ok());
|
||||
|
||||
Pallet::<Test>::note_included(3, candidate_hash.clone(), 3);
|
||||
Pallet::<Test>::note_included(3, candidate_hash, 3);
|
||||
assert_eq!(Frozen::<Test>::get(), Some(2));
|
||||
});
|
||||
}
|
||||
@@ -663,31 +642,23 @@ fn test_freeze_provided_against_supermajority_for_included() {
|
||||
|
||||
// v0 votes for 3
|
||||
let stmts = vec![DisputeStatementSet {
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
candidate_hash,
|
||||
session,
|
||||
statements: vec![
|
||||
(
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(0),
|
||||
v0.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
(
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(1),
|
||||
v1.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
(
|
||||
@@ -702,7 +673,7 @@ fn test_freeze_provided_against_supermajority_for_included() {
|
||||
],
|
||||
}];
|
||||
|
||||
Pallet::<Test>::note_included(3, candidate_hash.clone(), 3);
|
||||
Pallet::<Test>::note_included(3, candidate_hash, 3);
|
||||
assert!(Pallet::<Test>::process_checked_multi_dispute_data(
|
||||
&stmts
|
||||
.into_iter()
|
||||
@@ -744,43 +715,31 @@ fn test_freeze_provided_against_byzantine_threshold_for_included() {
|
||||
|
||||
// A byzantine threshold of INVALID
|
||||
let stmts = vec![DisputeStatementSet {
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
candidate_hash,
|
||||
session,
|
||||
statements: vec![
|
||||
(
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(0),
|
||||
v0.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
(
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(1),
|
||||
v1.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
(
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(2),
|
||||
v2.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
(
|
||||
@@ -796,7 +755,7 @@ fn test_freeze_provided_against_byzantine_threshold_for_included() {
|
||||
}];
|
||||
|
||||
// Include the candidate and import the votes
|
||||
Pallet::<Test>::note_included(3, candidate_hash.clone(), 3);
|
||||
Pallet::<Test>::note_included(3, candidate_hash, 3);
|
||||
assert!(Pallet::<Test>::process_checked_multi_dispute_data(
|
||||
&stmts
|
||||
.into_iter()
|
||||
@@ -813,43 +772,31 @@ fn test_freeze_provided_against_byzantine_threshold_for_included() {
|
||||
|
||||
// And generate enough votes to reach supermajority of invalid votes
|
||||
let stmts = vec![DisputeStatementSet {
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
candidate_hash,
|
||||
session,
|
||||
statements: vec![
|
||||
(
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(3),
|
||||
v3.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
(
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(4),
|
||||
v4.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
(
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(5),
|
||||
v5.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
],
|
||||
@@ -922,31 +869,23 @@ mod unconfirmed_disputes {
|
||||
|
||||
// v0 votes for 4, v1 votes against 4.
|
||||
DisputeStatementSet {
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
candidate_hash,
|
||||
session: 4,
|
||||
statements: vec![
|
||||
(
|
||||
DisputeStatement::Valid(ValidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(0),
|
||||
v0.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: true,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session: 4,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: true, candidate_hash, session: 4 }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
(
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(3),
|
||||
v1.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session: 4,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session: 4 }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
],
|
||||
@@ -1037,7 +976,7 @@ fn test_provide_multi_dispute_success_and_other() {
|
||||
|
||||
// v0 and v1 vote for 3, v6 votes against
|
||||
let stmts = vec![DisputeStatementSet {
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
candidate_hash,
|
||||
session,
|
||||
statements: vec![
|
||||
(
|
||||
@@ -1053,24 +992,16 @@ fn test_provide_multi_dispute_success_and_other() {
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(2),
|
||||
v6.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
(
|
||||
DisputeStatement::Valid(ValidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(3),
|
||||
v1.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: true,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session: 3,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: true, candidate_hash, session: 3 }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
],
|
||||
@@ -1080,29 +1011,25 @@ fn test_provide_multi_dispute_success_and_other() {
|
||||
|
||||
assert_ok!(
|
||||
Pallet::<Test>::process_checked_multi_dispute_data(&stmts),
|
||||
vec![(3, candidate_hash.clone())],
|
||||
vec![(3, candidate_hash)],
|
||||
);
|
||||
|
||||
// v3 votes against 3 and for 5, v2 and v6 vote against 5.
|
||||
let stmts = vec![
|
||||
DisputeStatementSet {
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
candidate_hash,
|
||||
session: 3,
|
||||
statements: vec![(
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(5),
|
||||
v3.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session: 3,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session: 3 }
|
||||
.signing_payload(),
|
||||
),
|
||||
)],
|
||||
},
|
||||
DisputeStatementSet {
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
candidate_hash,
|
||||
session: 5,
|
||||
statements: vec![
|
||||
(
|
||||
@@ -1118,24 +1045,16 @@ fn test_provide_multi_dispute_success_and_other() {
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(6),
|
||||
v2.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session: 5,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session: 5 }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
(
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(2),
|
||||
v6.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session: 5,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session: 5 }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
],
|
||||
@@ -1145,23 +1064,19 @@ fn test_provide_multi_dispute_success_and_other() {
|
||||
let stmts = filter_dispute_set(stmts);
|
||||
assert_ok!(
|
||||
Pallet::<Test>::process_checked_multi_dispute_data(&stmts),
|
||||
vec![(5, candidate_hash.clone())],
|
||||
vec![(5, candidate_hash)],
|
||||
);
|
||||
|
||||
// v2 votes for 3
|
||||
let stmts = vec![DisputeStatementSet {
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
candidate_hash,
|
||||
session: 3,
|
||||
statements: vec![(
|
||||
DisputeStatement::Valid(ValidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(6),
|
||||
v2.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: true,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session: 3,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: true, candidate_hash, session: 3 }
|
||||
.signing_payload(),
|
||||
),
|
||||
)],
|
||||
}];
|
||||
@@ -1171,74 +1086,54 @@ fn test_provide_multi_dispute_success_and_other() {
|
||||
let stmts = vec![
|
||||
// 0, 4, and 5 vote against 5
|
||||
DisputeStatementSet {
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
candidate_hash,
|
||||
session: 5,
|
||||
statements: vec![
|
||||
(
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(0),
|
||||
v0.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session: 5,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session: 5 }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
(
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(1),
|
||||
v4.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session: 5,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session: 5 }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
(
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(4),
|
||||
v5.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session: 5,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session: 5 }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
],
|
||||
},
|
||||
// 4 and 5 vote for 3
|
||||
DisputeStatementSet {
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
candidate_hash,
|
||||
session: 3,
|
||||
statements: vec![
|
||||
(
|
||||
DisputeStatement::Valid(ValidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(1),
|
||||
v4.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: true,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session: 3,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: true, candidate_hash, session: 3 }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
(
|
||||
DisputeStatement::Valid(ValidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(4),
|
||||
v5.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: true,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session: 3,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: true, candidate_hash, session: 3 }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
],
|
||||
@@ -1252,7 +1147,7 @@ fn test_provide_multi_dispute_success_and_other() {
|
||||
vec![
|
||||
(
|
||||
5,
|
||||
candidate_hash.clone(),
|
||||
candidate_hash,
|
||||
DisputeState {
|
||||
validators_for: bitvec![u8, BitOrderLsb0; 0, 0, 0, 0, 0, 1, 0],
|
||||
validators_against: bitvec![u8, BitOrderLsb0; 1, 1, 1, 0, 1, 0, 1],
|
||||
@@ -1262,7 +1157,7 @@ fn test_provide_multi_dispute_success_and_other() {
|
||||
),
|
||||
(
|
||||
3,
|
||||
candidate_hash.clone(),
|
||||
candidate_hash,
|
||||
DisputeState {
|
||||
validators_for: bitvec![u8, BitOrderLsb0; 1, 1, 0, 1, 1, 0, 1],
|
||||
validators_against: bitvec![u8, BitOrderLsb0; 0, 0, 1, 0, 0, 1, 0],
|
||||
@@ -1273,9 +1168,9 @@ fn test_provide_multi_dispute_success_and_other() {
|
||||
]
|
||||
);
|
||||
|
||||
assert!(!Pallet::<Test>::concluded_invalid(3, candidate_hash.clone()));
|
||||
assert!(!Pallet::<Test>::concluded_invalid(4, candidate_hash.clone()));
|
||||
assert!(Pallet::<Test>::concluded_invalid(5, candidate_hash.clone()));
|
||||
assert!(!Pallet::<Test>::concluded_invalid(3, candidate_hash));
|
||||
assert!(!Pallet::<Test>::concluded_invalid(4, candidate_hash));
|
||||
assert!(Pallet::<Test>::concluded_invalid(5, candidate_hash));
|
||||
|
||||
// Ensure the `reward_validator` function was correctly called
|
||||
assert_eq!(
|
||||
@@ -1372,7 +1267,7 @@ fn test_punish_post_conclusion() {
|
||||
let session = 3;
|
||||
|
||||
let stmts = vec![DisputeStatementSet {
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
candidate_hash,
|
||||
session,
|
||||
statements: vec![
|
||||
(
|
||||
@@ -1388,60 +1283,40 @@ fn test_punish_post_conclusion() {
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(1),
|
||||
v4.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
(
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(2),
|
||||
v6.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
(
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(6),
|
||||
v2.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
(
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(4),
|
||||
v5.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
(
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(5),
|
||||
v3.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
(
|
||||
@@ -1469,7 +1344,7 @@ fn test_punish_post_conclusion() {
|
||||
|
||||
// someone reveals 3 backing vote, 6 votes against
|
||||
let stmts = vec![DisputeStatementSet {
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
candidate_hash,
|
||||
session,
|
||||
statements: vec![
|
||||
(
|
||||
@@ -1485,12 +1360,8 @@ fn test_punish_post_conclusion() {
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(6),
|
||||
v2.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
],
|
||||
@@ -1600,37 +1471,28 @@ fn test_check_signature() {
|
||||
let wrong_inclusion_parent = sp_core::H256::repeat_byte(4);
|
||||
|
||||
let statement_1 = DisputeStatement::Valid(ValidDisputeStatementKind::Explicit);
|
||||
let statement_2 = DisputeStatement::Valid(ValidDisputeStatementKind::BackingSeconded(
|
||||
inclusion_parent.clone(),
|
||||
));
|
||||
let wrong_statement_2 = DisputeStatement::Valid(ValidDisputeStatementKind::BackingSeconded(
|
||||
wrong_inclusion_parent.clone(),
|
||||
));
|
||||
let statement_2 =
|
||||
DisputeStatement::Valid(ValidDisputeStatementKind::BackingSeconded(inclusion_parent));
|
||||
let wrong_statement_2 =
|
||||
DisputeStatement::Valid(ValidDisputeStatementKind::BackingSeconded(wrong_inclusion_parent));
|
||||
let statement_3 =
|
||||
DisputeStatement::Valid(ValidDisputeStatementKind::BackingValid(inclusion_parent.clone()));
|
||||
let wrong_statement_3 = DisputeStatement::Valid(ValidDisputeStatementKind::BackingValid(
|
||||
wrong_inclusion_parent.clone(),
|
||||
));
|
||||
DisputeStatement::Valid(ValidDisputeStatementKind::BackingValid(inclusion_parent));
|
||||
let wrong_statement_3 =
|
||||
DisputeStatement::Valid(ValidDisputeStatementKind::BackingValid(wrong_inclusion_parent));
|
||||
let statement_4 = DisputeStatement::Valid(ValidDisputeStatementKind::ApprovalChecking);
|
||||
let statement_5 = DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit);
|
||||
|
||||
let signed_1 = validator_id.sign(
|
||||
&ExplicitDisputeStatement { valid: true, candidate_hash: candidate_hash.clone(), session }
|
||||
.signing_payload(),
|
||||
);
|
||||
let signed_2 =
|
||||
validator_id.sign(&CompactStatement::Seconded(candidate_hash.clone()).signing_payload(
|
||||
&SigningContext { session_index: session, parent_hash: inclusion_parent.clone() },
|
||||
));
|
||||
let signed_3 =
|
||||
validator_id.sign(&CompactStatement::Valid(candidate_hash.clone()).signing_payload(
|
||||
&SigningContext { session_index: session, parent_hash: inclusion_parent.clone() },
|
||||
));
|
||||
let signed_4 =
|
||||
validator_id.sign(&ApprovalVote(candidate_hash.clone()).signing_payload(session));
|
||||
let signed_1 = validator_id
|
||||
.sign(&ExplicitDisputeStatement { valid: true, candidate_hash, session }.signing_payload());
|
||||
let signed_2 = validator_id.sign(&CompactStatement::Seconded(candidate_hash).signing_payload(
|
||||
&SigningContext { session_index: session, parent_hash: inclusion_parent },
|
||||
));
|
||||
let signed_3 = validator_id.sign(&CompactStatement::Valid(candidate_hash).signing_payload(
|
||||
&SigningContext { session_index: session, parent_hash: inclusion_parent },
|
||||
));
|
||||
let signed_4 = validator_id.sign(&ApprovalVote(candidate_hash).signing_payload(session));
|
||||
let signed_5 = validator_id.sign(
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash: candidate_hash.clone(), session }
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session }.signing_payload(),
|
||||
);
|
||||
|
||||
assert!(check_signature(
|
||||
@@ -2007,9 +1869,8 @@ fn deduplication_and_sorting_works() {
|
||||
c_hash: &CandidateHash,
|
||||
valid,
|
||||
session| {
|
||||
let payload =
|
||||
ExplicitDisputeStatement { valid, candidate_hash: c_hash.clone(), session }
|
||||
.signing_payload();
|
||||
let payload = ExplicitDisputeStatement { valid, candidate_hash: *c_hash, session }
|
||||
.signing_payload();
|
||||
let sig = validator.sign(&payload);
|
||||
(DisputeStatement::Valid(ValidDisputeStatementKind::Explicit), vidx, sig.clone())
|
||||
};
|
||||
@@ -2031,24 +1892,24 @@ fn deduplication_and_sorting_works() {
|
||||
|
||||
let mut disputes = vec![
|
||||
DisputeStatementSet {
|
||||
candidate_hash: candidate_hash_b.clone(),
|
||||
candidate_hash: candidate_hash_b,
|
||||
session: 2,
|
||||
statements: vec![explicit_triple_b.clone(), explicit_triple_b_bad.clone()],
|
||||
},
|
||||
// same session as above
|
||||
DisputeStatementSet {
|
||||
candidate_hash: candidate_hash_c.clone(),
|
||||
candidate_hash: candidate_hash_c,
|
||||
session: 2,
|
||||
statements: vec![explicit_triple_c, explicit_triple_c_bad],
|
||||
},
|
||||
// the duplicate set
|
||||
DisputeStatementSet {
|
||||
candidate_hash: candidate_hash_b.clone(),
|
||||
candidate_hash: candidate_hash_b,
|
||||
session: 2,
|
||||
statements: vec![explicit_triple_b.clone(), explicit_triple_b_bad.clone()],
|
||||
},
|
||||
DisputeStatementSet {
|
||||
candidate_hash: candidate_hash_a.clone(),
|
||||
candidate_hash: candidate_hash_a,
|
||||
session: 1,
|
||||
statements: vec![explicit_triple_a, explicit_triple_a_bad],
|
||||
},
|
||||
@@ -2116,19 +1977,11 @@ fn filter_removes_duplicates_within_set() {
|
||||
|
||||
let candidate_hash = CandidateHash(sp_core::H256::repeat_byte(1));
|
||||
|
||||
let payload = ExplicitDisputeStatement {
|
||||
valid: true,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session: 1,
|
||||
}
|
||||
.signing_payload();
|
||||
let payload =
|
||||
ExplicitDisputeStatement { valid: true, candidate_hash, session: 1 }.signing_payload();
|
||||
|
||||
let payload_against = ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session: 1,
|
||||
}
|
||||
.signing_payload();
|
||||
let payload_against =
|
||||
ExplicitDisputeStatement { valid: false, candidate_hash, session: 1 }.signing_payload();
|
||||
|
||||
let sig_a = v0.sign(&payload);
|
||||
let sig_b = v0.sign(&payload);
|
||||
@@ -2136,7 +1989,7 @@ fn filter_removes_duplicates_within_set() {
|
||||
let sig_d = v1.sign(&payload_against);
|
||||
|
||||
let statements = DisputeStatementSet {
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
candidate_hash,
|
||||
session: 1,
|
||||
statements: vec![
|
||||
(
|
||||
@@ -2172,7 +2025,7 @@ fn filter_removes_duplicates_within_set() {
|
||||
assert_eq!(
|
||||
statements,
|
||||
Some(CheckedDisputeStatementSet::unchecked_from_unchecked(DisputeStatementSet {
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
candidate_hash,
|
||||
session: 1,
|
||||
statements: vec![
|
||||
(
|
||||
@@ -2217,7 +2070,7 @@ fn filter_bad_signatures_correctly_detects_single_sided() {
|
||||
let candidate_hash_a = CandidateHash(sp_core::H256::repeat_byte(1));
|
||||
|
||||
let payload = |c_hash: &CandidateHash, valid| {
|
||||
ExplicitDisputeStatement { valid, candidate_hash: c_hash.clone(), session: 1 }
|
||||
ExplicitDisputeStatement { valid, candidate_hash: *c_hash, session: 1 }
|
||||
.signing_payload()
|
||||
};
|
||||
|
||||
@@ -2228,7 +2081,7 @@ fn filter_bad_signatures_correctly_detects_single_sided() {
|
||||
let sig_1 = v1.sign(&payload_a_bad);
|
||||
|
||||
let statements = vec![DisputeStatementSet {
|
||||
candidate_hash: candidate_hash_a.clone(),
|
||||
candidate_hash: candidate_hash_a,
|
||||
session: 1,
|
||||
statements: vec![
|
||||
(
|
||||
@@ -2262,17 +2115,13 @@ fn filter_removes_session_out_of_bounds() {
|
||||
|
||||
let candidate_hash = CandidateHash(sp_core::H256::repeat_byte(1));
|
||||
|
||||
let payload = ExplicitDisputeStatement {
|
||||
valid: true,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session: 1,
|
||||
}
|
||||
.signing_payload();
|
||||
let payload =
|
||||
ExplicitDisputeStatement { valid: true, candidate_hash, session: 1 }.signing_payload();
|
||||
|
||||
let sig_a = v0.sign(&payload);
|
||||
|
||||
let statements = vec![DisputeStatementSet {
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
candidate_hash,
|
||||
session: 100,
|
||||
statements: vec![(
|
||||
DisputeStatement::Valid(ValidDisputeStatementKind::Explicit),
|
||||
@@ -2297,7 +2146,6 @@ fn filter_removes_concluded_ancient() {
|
||||
dispute_post_conclusion_acceptance_period,
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
};
|
||||
@@ -2335,26 +2183,20 @@ fn filter_removes_concluded_ancient() {
|
||||
},
|
||||
);
|
||||
|
||||
let payload_a = ExplicitDisputeStatement {
|
||||
valid: true,
|
||||
candidate_hash: candidate_hash_a.clone(),
|
||||
session: 1,
|
||||
}
|
||||
.signing_payload();
|
||||
let payload_a =
|
||||
ExplicitDisputeStatement { valid: true, candidate_hash: candidate_hash_a, session: 1 }
|
||||
.signing_payload();
|
||||
|
||||
let payload_b = ExplicitDisputeStatement {
|
||||
valid: true,
|
||||
candidate_hash: candidate_hash_b.clone(),
|
||||
session: 1,
|
||||
}
|
||||
.signing_payload();
|
||||
let payload_b =
|
||||
ExplicitDisputeStatement { valid: true, candidate_hash: candidate_hash_b, session: 1 }
|
||||
.signing_payload();
|
||||
|
||||
let sig_a = v0.sign(&payload_a);
|
||||
let sig_b = v0.sign(&payload_b);
|
||||
|
||||
let statements = vec![
|
||||
DisputeStatementSet {
|
||||
candidate_hash: candidate_hash_a.clone(),
|
||||
candidate_hash: candidate_hash_a,
|
||||
session: 1,
|
||||
statements: vec![(
|
||||
DisputeStatement::Valid(ValidDisputeStatementKind::Explicit),
|
||||
@@ -2363,7 +2205,7 @@ fn filter_removes_concluded_ancient() {
|
||||
)],
|
||||
},
|
||||
DisputeStatementSet {
|
||||
candidate_hash: candidate_hash_b.clone(),
|
||||
candidate_hash: candidate_hash_b,
|
||||
session: 1,
|
||||
statements: vec![(
|
||||
DisputeStatement::Valid(ValidDisputeStatementKind::Explicit),
|
||||
@@ -2378,7 +2220,7 @@ fn filter_removes_concluded_ancient() {
|
||||
assert_eq!(
|
||||
statements,
|
||||
vec![CheckedDisputeStatementSet::unchecked_from_unchecked(DisputeStatementSet {
|
||||
candidate_hash: candidate_hash_b.clone(),
|
||||
candidate_hash: candidate_hash_b,
|
||||
session: 1,
|
||||
statements: vec![(
|
||||
DisputeStatement::Valid(ValidDisputeStatementKind::Explicit),
|
||||
@@ -2408,19 +2250,13 @@ fn filter_removes_duplicate_statements_sets() {
|
||||
|
||||
let candidate_hash_a = CandidateHash(sp_core::H256::repeat_byte(1));
|
||||
|
||||
let payload = ExplicitDisputeStatement {
|
||||
valid: true,
|
||||
candidate_hash: candidate_hash_a.clone(),
|
||||
session: 1,
|
||||
}
|
||||
.signing_payload();
|
||||
let payload =
|
||||
ExplicitDisputeStatement { valid: true, candidate_hash: candidate_hash_a, session: 1 }
|
||||
.signing_payload();
|
||||
|
||||
let payload_against = ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash_a.clone(),
|
||||
session: 1,
|
||||
}
|
||||
.signing_payload();
|
||||
let payload_against =
|
||||
ExplicitDisputeStatement { valid: false, candidate_hash: candidate_hash_a, session: 1 }
|
||||
.signing_payload();
|
||||
|
||||
let sig_a = v0.sign(&payload);
|
||||
let sig_a_against = v1.sign(&payload_against);
|
||||
@@ -2440,12 +2276,12 @@ fn filter_removes_duplicate_statements_sets() {
|
||||
|
||||
let mut sets = vec![
|
||||
DisputeStatementSet {
|
||||
candidate_hash: candidate_hash_a.clone(),
|
||||
candidate_hash: candidate_hash_a,
|
||||
session: 1,
|
||||
statements: statements.clone(),
|
||||
},
|
||||
DisputeStatementSet {
|
||||
candidate_hash: candidate_hash_a.clone(),
|
||||
candidate_hash: candidate_hash_a,
|
||||
session: 1,
|
||||
statements: statements.clone(),
|
||||
},
|
||||
@@ -2459,11 +2295,7 @@ fn filter_removes_duplicate_statements_sets() {
|
||||
|
||||
assert_eq!(
|
||||
sets,
|
||||
vec![DisputeStatementSet {
|
||||
candidate_hash: candidate_hash_a.clone(),
|
||||
session: 1,
|
||||
statements,
|
||||
}]
|
||||
vec![DisputeStatementSet { candidate_hash: candidate_hash_a, session: 1, statements }]
|
||||
);
|
||||
})
|
||||
}
|
||||
@@ -2480,17 +2312,14 @@ fn filter_ignores_single_sided() {
|
||||
|
||||
let candidate_hash_a = CandidateHash(sp_core::H256::repeat_byte(1));
|
||||
|
||||
let payload = ExplicitDisputeStatement {
|
||||
valid: true,
|
||||
candidate_hash: candidate_hash_a.clone(),
|
||||
session: 1,
|
||||
}
|
||||
.signing_payload();
|
||||
let payload =
|
||||
ExplicitDisputeStatement { valid: true, candidate_hash: candidate_hash_a, session: 1 }
|
||||
.signing_payload();
|
||||
|
||||
let sig_a = v0.sign(&payload);
|
||||
|
||||
let statements = vec![DisputeStatementSet {
|
||||
candidate_hash: candidate_hash_a.clone(),
|
||||
candidate_hash: candidate_hash_a,
|
||||
session: 1,
|
||||
statements: vec![(
|
||||
DisputeStatement::Valid(ValidDisputeStatementKind::Explicit),
|
||||
@@ -2517,17 +2346,14 @@ fn import_ignores_single_sided() {
|
||||
|
||||
let candidate_hash_a = CandidateHash(sp_core::H256::repeat_byte(1));
|
||||
|
||||
let payload = ExplicitDisputeStatement {
|
||||
valid: true,
|
||||
candidate_hash: candidate_hash_a.clone(),
|
||||
session: 1,
|
||||
}
|
||||
.signing_payload();
|
||||
let payload =
|
||||
ExplicitDisputeStatement { valid: true, candidate_hash: candidate_hash_a, session: 1 }
|
||||
.signing_payload();
|
||||
|
||||
let sig_a = v0.sign(&payload);
|
||||
|
||||
let statements = vec![DisputeStatementSet {
|
||||
candidate_hash: candidate_hash_a.clone(),
|
||||
candidate_hash: candidate_hash_a,
|
||||
session: 1,
|
||||
statements: vec![(
|
||||
DisputeStatement::Valid(ValidDisputeStatementKind::Explicit),
|
||||
|
||||
@@ -68,10 +68,7 @@ pub(crate) fn genesis_config(paras: Vec<(ParaId, ParaKind)>) -> MockGenesisConfi
|
||||
.collect(),
|
||||
..Default::default()
|
||||
},
|
||||
configuration: configuration::GenesisConfig {
|
||||
config: default_config(),
|
||||
..Default::default()
|
||||
},
|
||||
configuration: configuration::GenesisConfig { config: default_config() },
|
||||
..Default::default()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -259,7 +259,7 @@ impl<N: Ord + Copy + PartialEq> ParaPastCodeMeta<N> {
|
||||
// of the para.
|
||||
#[cfg(test)]
|
||||
fn most_recent_change(&self) -> Option<N> {
|
||||
self.upgrade_times.last().map(|x| x.expected_at.clone())
|
||||
self.upgrade_times.last().map(|x| x.expected_at)
|
||||
}
|
||||
|
||||
// prunes all code upgrade logs occurring at or before `max`.
|
||||
|
||||
@@ -280,7 +280,6 @@ fn para_past_code_pruning_in_initialize() {
|
||||
paras: GenesisConfig { paras, ..Default::default() },
|
||||
configuration: crate::configuration::GenesisConfig {
|
||||
config: HostConfiguration { code_retention_period, ..Default::default() },
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
};
|
||||
@@ -333,7 +332,6 @@ fn note_new_head_sets_head() {
|
||||
paras: GenesisConfig { paras, ..Default::default() },
|
||||
configuration: crate::configuration::GenesisConfig {
|
||||
config: HostConfiguration { code_retention_period, ..Default::default() },
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
};
|
||||
@@ -375,7 +373,6 @@ fn note_past_code_sets_up_pruning_correctly() {
|
||||
paras: GenesisConfig { paras, ..Default::default() },
|
||||
configuration: crate::configuration::GenesisConfig {
|
||||
config: HostConfiguration { code_retention_period, ..Default::default() },
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
};
|
||||
@@ -424,7 +421,6 @@ fn code_upgrade_applied_after_delay() {
|
||||
validation_upgrade_cooldown,
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
};
|
||||
@@ -537,7 +533,6 @@ fn code_upgrade_applied_after_delay_even_when_late() {
|
||||
validation_upgrade_cooldown,
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
};
|
||||
@@ -620,7 +615,6 @@ fn submit_code_change_when_not_allowed_is_err() {
|
||||
validation_upgrade_cooldown,
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
};
|
||||
@@ -691,7 +685,6 @@ fn upgrade_restriction_elapsed_doesnt_mean_can_upgrade() {
|
||||
validation_upgrade_cooldown,
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
};
|
||||
@@ -757,7 +750,6 @@ fn full_parachain_cleanup_storage() {
|
||||
thread_availability_period: 1,
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
};
|
||||
@@ -1013,7 +1005,6 @@ fn code_hash_at_returns_up_to_end_of_code_retention_period() {
|
||||
validation_upgrade_delay,
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
};
|
||||
@@ -1104,7 +1095,6 @@ fn pvf_check_coalescing_onboarding_and_upgrade() {
|
||||
paras: GenesisConfig { paras, ..Default::default() },
|
||||
configuration: crate::configuration::GenesisConfig {
|
||||
config: HostConfiguration { validation_upgrade_delay, ..Default::default() },
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
};
|
||||
@@ -1169,7 +1159,6 @@ fn pvf_check_onboarding_reject_on_expiry() {
|
||||
let genesis_config = MockGenesisConfig {
|
||||
configuration: crate::configuration::GenesisConfig {
|
||||
config: HostConfiguration { pvf_voting_ttl, ..Default::default() },
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
};
|
||||
@@ -1569,7 +1558,6 @@ fn add_trusted_validation_code_insta_approval() {
|
||||
minimum_validation_upgrade_delay,
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
};
|
||||
@@ -1611,7 +1599,6 @@ fn add_trusted_validation_code_enacts_existing_pvf_vote() {
|
||||
minimum_validation_upgrade_delay,
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
};
|
||||
|
||||
@@ -155,43 +155,31 @@ mod enter {
|
||||
let generate_votes = |session: u32, candidate_hash: CandidateHash| {
|
||||
// v0 votes for 3
|
||||
vec![DisputeStatementSet {
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
candidate_hash,
|
||||
session,
|
||||
statements: vec![
|
||||
(
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(0),
|
||||
v0.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
(
|
||||
DisputeStatement::Invalid(InvalidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(1),
|
||||
v1.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: false,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: false, candidate_hash, session }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
(
|
||||
DisputeStatement::Valid(ValidDisputeStatementKind::Explicit),
|
||||
ValidatorIndex(1),
|
||||
v1.sign(
|
||||
&ExplicitDisputeStatement {
|
||||
valid: true,
|
||||
candidate_hash: candidate_hash.clone(),
|
||||
session,
|
||||
}
|
||||
.signing_payload(),
|
||||
&ExplicitDisputeStatement { valid: true, candidate_hash, session }
|
||||
.signing_payload(),
|
||||
),
|
||||
),
|
||||
],
|
||||
@@ -202,7 +190,7 @@ mod enter {
|
||||
};
|
||||
|
||||
let candidate_hash = CandidateHash(sp_core::H256::repeat_byte(1));
|
||||
let statements = generate_votes(3, candidate_hash.clone());
|
||||
let statements = generate_votes(3, candidate_hash);
|
||||
set_scrapable_on_chain_disputes::<Test>(3, statements);
|
||||
assert_matches!(pallet::Pallet::<Test>::on_chain_votes(), Some(ScrapedOnChainVotes {
|
||||
session,
|
||||
@@ -221,7 +209,7 @@ mod enter {
|
||||
});
|
||||
|
||||
let candidate_hash = CandidateHash(sp_core::H256::repeat_byte(2));
|
||||
let statements = generate_votes(7, candidate_hash.clone());
|
||||
let statements = generate_votes(7, candidate_hash);
|
||||
set_scrapable_on_chain_disputes::<Test>(7, statements);
|
||||
assert_matches!(pallet::Pallet::<Test>::on_chain_votes(), Some(ScrapedOnChainVotes {
|
||||
session,
|
||||
@@ -1330,7 +1318,7 @@ mod sanitizers {
|
||||
let mut set = std::collections::HashSet::new();
|
||||
for (idx, backed_candidate) in backed_candidates.iter().enumerate() {
|
||||
if idx & 0x01 == 0 {
|
||||
set.insert(backed_candidate.hash().clone());
|
||||
set.insert(backed_candidate.hash());
|
||||
}
|
||||
}
|
||||
set
|
||||
|
||||
@@ -116,10 +116,7 @@ fn default_config() -> HostConfiguration<BlockNumber> {
|
||||
#[test]
|
||||
fn add_parathread_claim_works() {
|
||||
let genesis_config = MockGenesisConfig {
|
||||
configuration: crate::configuration::GenesisConfig {
|
||||
config: default_config(),
|
||||
..Default::default()
|
||||
},
|
||||
configuration: crate::configuration::GenesisConfig { config: default_config() },
|
||||
..Default::default()
|
||||
};
|
||||
|
||||
@@ -200,7 +197,7 @@ fn cannot_add_claim_when_no_parathread_cores() {
|
||||
config
|
||||
};
|
||||
let genesis_config = MockGenesisConfig {
|
||||
configuration: crate::configuration::GenesisConfig { config, ..Default::default() },
|
||||
configuration: crate::configuration::GenesisConfig { config },
|
||||
..Default::default()
|
||||
};
|
||||
|
||||
@@ -224,10 +221,7 @@ fn cannot_add_claim_when_no_parathread_cores() {
|
||||
#[test]
|
||||
fn session_change_prunes_cores_beyond_retries_and_those_from_non_live_parathreads() {
|
||||
let genesis_config = MockGenesisConfig {
|
||||
configuration: crate::configuration::GenesisConfig {
|
||||
config: default_config(),
|
||||
..Default::default()
|
||||
},
|
||||
configuration: crate::configuration::GenesisConfig { config: default_config() },
|
||||
..Default::default()
|
||||
};
|
||||
let max_parathread_retries = default_config().parathread_retries;
|
||||
@@ -326,10 +320,7 @@ fn session_change_prunes_cores_beyond_retries_and_those_from_non_live_parathread
|
||||
#[test]
|
||||
fn session_change_shuffles_validators() {
|
||||
let genesis_config = MockGenesisConfig {
|
||||
configuration: crate::configuration::GenesisConfig {
|
||||
config: default_config(),
|
||||
..Default::default()
|
||||
},
|
||||
configuration: crate::configuration::GenesisConfig { config: default_config() },
|
||||
..Default::default()
|
||||
};
|
||||
|
||||
@@ -384,10 +375,7 @@ fn session_change_takes_only_max_per_core() {
|
||||
};
|
||||
|
||||
let genesis_config = MockGenesisConfig {
|
||||
configuration: crate::configuration::GenesisConfig {
|
||||
config: config.clone(),
|
||||
..Default::default()
|
||||
},
|
||||
configuration: crate::configuration::GenesisConfig { config: config.clone() },
|
||||
..Default::default()
|
||||
};
|
||||
|
||||
@@ -432,10 +420,7 @@ fn session_change_takes_only_max_per_core() {
|
||||
#[test]
|
||||
fn schedule_schedules() {
|
||||
let genesis_config = MockGenesisConfig {
|
||||
configuration: crate::configuration::GenesisConfig {
|
||||
config: default_config(),
|
||||
..Default::default()
|
||||
},
|
||||
configuration: crate::configuration::GenesisConfig { config: default_config() },
|
||||
..Default::default()
|
||||
};
|
||||
|
||||
@@ -557,10 +542,7 @@ fn schedule_schedules() {
|
||||
#[test]
|
||||
fn schedule_schedules_including_just_freed() {
|
||||
let genesis_config = MockGenesisConfig {
|
||||
configuration: crate::configuration::GenesisConfig {
|
||||
config: default_config(),
|
||||
..Default::default()
|
||||
},
|
||||
configuration: crate::configuration::GenesisConfig { config: default_config() },
|
||||
..Default::default()
|
||||
};
|
||||
|
||||
@@ -733,10 +715,7 @@ fn schedule_schedules_including_just_freed() {
|
||||
#[test]
|
||||
fn schedule_clears_availability_cores() {
|
||||
let genesis_config = MockGenesisConfig {
|
||||
configuration: crate::configuration::GenesisConfig {
|
||||
config: default_config(),
|
||||
..Default::default()
|
||||
},
|
||||
configuration: crate::configuration::GenesisConfig { config: default_config() },
|
||||
..Default::default()
|
||||
};
|
||||
|
||||
@@ -839,10 +818,7 @@ fn schedule_rotates_groups() {
|
||||
let parathread_cores = config.parathread_cores;
|
||||
|
||||
let genesis_config = MockGenesisConfig {
|
||||
configuration: crate::configuration::GenesisConfig {
|
||||
config: config.clone(),
|
||||
..Default::default()
|
||||
},
|
||||
configuration: crate::configuration::GenesisConfig { config: config.clone() },
|
||||
..Default::default()
|
||||
};
|
||||
|
||||
@@ -911,10 +887,7 @@ fn parathread_claims_are_pruned_after_retries() {
|
||||
let max_retries = default_config().parathread_retries;
|
||||
|
||||
let genesis_config = MockGenesisConfig {
|
||||
configuration: crate::configuration::GenesisConfig {
|
||||
config: default_config(),
|
||||
..Default::default()
|
||||
},
|
||||
configuration: crate::configuration::GenesisConfig { config: default_config() },
|
||||
..Default::default()
|
||||
};
|
||||
|
||||
@@ -959,10 +932,7 @@ fn parathread_claims_are_pruned_after_retries() {
|
||||
#[test]
|
||||
fn availability_predicate_works() {
|
||||
let genesis_config = MockGenesisConfig {
|
||||
configuration: crate::configuration::GenesisConfig {
|
||||
config: default_config(),
|
||||
..Default::default()
|
||||
},
|
||||
configuration: crate::configuration::GenesisConfig { config: default_config() },
|
||||
..Default::default()
|
||||
};
|
||||
|
||||
@@ -1067,10 +1037,7 @@ fn next_up_on_available_uses_next_scheduled_or_none_for_thread() {
|
||||
config.parathread_cores = 1;
|
||||
|
||||
let genesis_config = MockGenesisConfig {
|
||||
configuration: crate::configuration::GenesisConfig {
|
||||
config: config.clone(),
|
||||
..Default::default()
|
||||
},
|
||||
configuration: crate::configuration::GenesisConfig { config: config.clone() },
|
||||
..Default::default()
|
||||
};
|
||||
|
||||
@@ -1139,10 +1106,7 @@ fn next_up_on_time_out_reuses_claim_if_nothing_queued() {
|
||||
config.parathread_cores = 1;
|
||||
|
||||
let genesis_config = MockGenesisConfig {
|
||||
configuration: crate::configuration::GenesisConfig {
|
||||
config: config.clone(),
|
||||
..Default::default()
|
||||
},
|
||||
configuration: crate::configuration::GenesisConfig { config: config.clone() },
|
||||
..Default::default()
|
||||
};
|
||||
|
||||
@@ -1217,10 +1181,7 @@ fn next_up_on_available_is_parachain_always() {
|
||||
config.parathread_cores = 0;
|
||||
|
||||
let genesis_config = MockGenesisConfig {
|
||||
configuration: crate::configuration::GenesisConfig {
|
||||
config: config.clone(),
|
||||
..Default::default()
|
||||
},
|
||||
configuration: crate::configuration::GenesisConfig { config: config.clone() },
|
||||
..Default::default()
|
||||
};
|
||||
|
||||
@@ -1271,10 +1232,7 @@ fn next_up_on_time_out_is_parachain_always() {
|
||||
config.parathread_cores = 0;
|
||||
|
||||
let genesis_config = MockGenesisConfig {
|
||||
configuration: crate::configuration::GenesisConfig {
|
||||
config: config.clone(),
|
||||
..Default::default()
|
||||
},
|
||||
configuration: crate::configuration::GenesisConfig { config: config.clone() },
|
||||
..Default::default()
|
||||
};
|
||||
|
||||
@@ -1322,10 +1280,7 @@ fn next_up_on_time_out_is_parachain_always() {
|
||||
#[test]
|
||||
fn session_change_requires_reschedule_dropping_removed_paras() {
|
||||
let genesis_config = MockGenesisConfig {
|
||||
configuration: crate::configuration::GenesisConfig {
|
||||
config: default_config(),
|
||||
..Default::default()
|
||||
},
|
||||
configuration: crate::configuration::GenesisConfig { config: default_config() },
|
||||
..Default::default()
|
||||
};
|
||||
|
||||
@@ -1399,10 +1354,7 @@ fn session_change_requires_reschedule_dropping_removed_paras() {
|
||||
#[test]
|
||||
fn parathread_claims_are_pruned_after_deregistration() {
|
||||
let genesis_config = MockGenesisConfig {
|
||||
configuration: crate::configuration::GenesisConfig {
|
||||
config: default_config(),
|
||||
..Default::default()
|
||||
},
|
||||
configuration: crate::configuration::GenesisConfig { config: default_config() },
|
||||
..Default::default()
|
||||
};
|
||||
|
||||
|
||||
@@ -71,10 +71,7 @@ fn default_config() -> HostConfiguration<BlockNumber> {
|
||||
|
||||
fn genesis_config() -> MockGenesisConfig {
|
||||
MockGenesisConfig {
|
||||
configuration: configuration::GenesisConfig {
|
||||
config: default_config(),
|
||||
..Default::default()
|
||||
},
|
||||
configuration: configuration::GenesisConfig { config: default_config() },
|
||||
..Default::default()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -523,21 +523,21 @@ fn overweight_queue_works() {
|
||||
assert_last_events(
|
||||
[
|
||||
pallet_message_queue::Event::<Test>::Processed {
|
||||
id: hash_1.clone(),
|
||||
id: hash_1,
|
||||
origin: Ump(UmpQueueId::Para(para_a)),
|
||||
weight_used: Weight::from_parts(301, 301),
|
||||
success: true,
|
||||
}
|
||||
.into(),
|
||||
pallet_message_queue::Event::<Test>::OverweightEnqueued {
|
||||
id: hash_2.clone(),
|
||||
id: hash_2,
|
||||
origin: Ump(UmpQueueId::Para(para_a)),
|
||||
page_index: 0,
|
||||
message_index: 1,
|
||||
}
|
||||
.into(),
|
||||
pallet_message_queue::Event::<Test>::OverweightEnqueued {
|
||||
id: hash_3.clone(),
|
||||
id: hash_3,
|
||||
origin: Ump(UmpQueueId::Para(para_a)),
|
||||
page_index: 0,
|
||||
message_index: 2,
|
||||
|
||||
Reference in New Issue
Block a user