mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-05-30 23:21:02 +00:00
Replace parachain/parathread boolean by enum (#6198)
* Replace parachain/parathread boolean by enum * Address PR comments * Update dependencies * ParaType -> ParaKind * Swap enum field order to avoid migration * Rename paratype field to parakind * Manual en-/decocing of Parakind * Manual TypeInfo for ParaKind * rename field back to parachain * minor * Update runtime/parachains/src/paras/mod.rs Co-authored-by: Andrei Sandu <54316454+sandreim@users.noreply.github.com> * Manual serde Serialize and Deserialize for ParaKind * cargo fmt * Update runtime/parachains/src/paras/mod.rs Co-authored-by: Andronik <write@reusable.software> * Add test for serde_json encoding/decoding * Move serde_json dep to dev-deps Co-authored-by: Andrei Sandu <54316454+sandreim@users.noreply.github.com> Co-authored-by: Andronik <write@reusable.software>
This commit is contained in:
@@ -222,7 +222,7 @@ fn schedule_para_init_rejects_empty_code() {
|
||||
Paras::schedule_para_initialize(
|
||||
1000.into(),
|
||||
ParaGenesisArgs {
|
||||
parachain: false,
|
||||
para_kind: ParaKind::Parathread,
|
||||
genesis_head: dummy_head_data(),
|
||||
validation_code: ValidationCode(vec![]),
|
||||
}
|
||||
@@ -233,7 +233,7 @@ fn schedule_para_init_rejects_empty_code() {
|
||||
assert_ok!(Paras::schedule_para_initialize(
|
||||
1000.into(),
|
||||
ParaGenesisArgs {
|
||||
parachain: false,
|
||||
para_kind: ParaKind::Parathread,
|
||||
genesis_head: dummy_head_data(),
|
||||
validation_code: ValidationCode(vec![1]),
|
||||
}
|
||||
@@ -248,7 +248,7 @@ fn para_past_code_pruning_in_initialize() {
|
||||
(
|
||||
0u32.into(),
|
||||
ParaGenesisArgs {
|
||||
parachain: true,
|
||||
para_kind: ParaKind::Parachain,
|
||||
genesis_head: dummy_head_data(),
|
||||
validation_code: dummy_validation_code(),
|
||||
},
|
||||
@@ -256,7 +256,7 @@ fn para_past_code_pruning_in_initialize() {
|
||||
(
|
||||
1u32.into(),
|
||||
ParaGenesisArgs {
|
||||
parachain: false,
|
||||
para_kind: ParaKind::Parathread,
|
||||
genesis_head: dummy_head_data(),
|
||||
validation_code: dummy_validation_code(),
|
||||
},
|
||||
@@ -316,7 +316,7 @@ fn note_new_head_sets_head() {
|
||||
let paras = vec![(
|
||||
0u32.into(),
|
||||
ParaGenesisArgs {
|
||||
parachain: true,
|
||||
para_kind: ParaKind::Parachain,
|
||||
genesis_head: dummy_head_data(),
|
||||
validation_code: dummy_validation_code(),
|
||||
},
|
||||
@@ -349,7 +349,7 @@ fn note_past_code_sets_up_pruning_correctly() {
|
||||
(
|
||||
0u32.into(),
|
||||
ParaGenesisArgs {
|
||||
parachain: true,
|
||||
para_kind: ParaKind::Parachain,
|
||||
genesis_head: dummy_head_data(),
|
||||
validation_code: dummy_validation_code(),
|
||||
},
|
||||
@@ -357,7 +357,7 @@ fn note_past_code_sets_up_pruning_correctly() {
|
||||
(
|
||||
1u32.into(),
|
||||
ParaGenesisArgs {
|
||||
parachain: false,
|
||||
para_kind: ParaKind::Parathread,
|
||||
genesis_head: dummy_head_data(),
|
||||
validation_code: dummy_validation_code(),
|
||||
},
|
||||
@@ -402,7 +402,7 @@ fn code_upgrade_applied_after_delay() {
|
||||
let paras = vec![(
|
||||
0u32.into(),
|
||||
ParaGenesisArgs {
|
||||
parachain: true,
|
||||
para_kind: ParaKind::Parachain,
|
||||
genesis_head: dummy_head_data(),
|
||||
validation_code: original_code.clone(),
|
||||
},
|
||||
@@ -505,7 +505,7 @@ fn code_upgrade_applied_after_delay_even_when_late() {
|
||||
let paras = vec![(
|
||||
0u32.into(),
|
||||
ParaGenesisArgs {
|
||||
parachain: true,
|
||||
para_kind: ParaKind::Parachain,
|
||||
genesis_head: dummy_head_data(),
|
||||
validation_code: original_code.clone(),
|
||||
},
|
||||
@@ -590,7 +590,7 @@ fn submit_code_change_when_not_allowed_is_err() {
|
||||
let paras = vec![(
|
||||
0u32.into(),
|
||||
ParaGenesisArgs {
|
||||
parachain: true,
|
||||
para_kind: ParaKind::Parachain,
|
||||
genesis_head: dummy_head_data(),
|
||||
validation_code: vec![1, 2, 3].into(),
|
||||
},
|
||||
@@ -658,7 +658,7 @@ fn upgrade_restriction_elapsed_doesnt_mean_can_upgrade() {
|
||||
let paras = vec![(
|
||||
0u32.into(),
|
||||
ParaGenesisArgs {
|
||||
parachain: true,
|
||||
para_kind: ParaKind::Parachain,
|
||||
genesis_head: dummy_head_data(),
|
||||
validation_code: vec![1, 2, 3].into(),
|
||||
},
|
||||
@@ -721,7 +721,7 @@ fn full_parachain_cleanup_storage() {
|
||||
let paras = vec![(
|
||||
0u32.into(),
|
||||
ParaGenesisArgs {
|
||||
parachain: true,
|
||||
para_kind: ParaKind::Parachain,
|
||||
genesis_head: dummy_head_data(),
|
||||
validation_code: original_code.clone(),
|
||||
},
|
||||
@@ -827,7 +827,7 @@ fn cannot_offboard_ongoing_pvf_check() {
|
||||
let paras = vec![(
|
||||
para_id,
|
||||
ParaGenesisArgs {
|
||||
parachain: true,
|
||||
para_kind: ParaKind::Parachain,
|
||||
genesis_head: Default::default(),
|
||||
validation_code: existing_code,
|
||||
},
|
||||
@@ -900,7 +900,7 @@ fn para_incoming_at_session() {
|
||||
assert_ok!(Paras::schedule_para_initialize(
|
||||
b,
|
||||
ParaGenesisArgs {
|
||||
parachain: true,
|
||||
para_kind: ParaKind::Parachain,
|
||||
genesis_head: vec![1].into(),
|
||||
validation_code: code_b.clone(),
|
||||
},
|
||||
@@ -909,7 +909,7 @@ fn para_incoming_at_session() {
|
||||
assert_ok!(Paras::schedule_para_initialize(
|
||||
a,
|
||||
ParaGenesisArgs {
|
||||
parachain: false,
|
||||
para_kind: ParaKind::Parathread,
|
||||
genesis_head: vec![2].into(),
|
||||
validation_code: code_a.clone(),
|
||||
},
|
||||
@@ -918,7 +918,7 @@ fn para_incoming_at_session() {
|
||||
assert_ok!(Paras::schedule_para_initialize(
|
||||
c,
|
||||
ParaGenesisArgs {
|
||||
parachain: true,
|
||||
para_kind: ParaKind::Parachain,
|
||||
genesis_head: vec![3].into(),
|
||||
validation_code: code_c.clone(),
|
||||
},
|
||||
@@ -994,7 +994,7 @@ fn code_hash_at_returns_up_to_end_of_code_retention_period() {
|
||||
let paras = vec![(
|
||||
0u32.into(),
|
||||
ParaGenesisArgs {
|
||||
parachain: true,
|
||||
para_kind: ParaKind::Parachain,
|
||||
genesis_head: dummy_head_data(),
|
||||
validation_code: vec![1, 2, 3].into(),
|
||||
},
|
||||
@@ -1084,7 +1084,7 @@ fn pvf_check_coalescing_onboarding_and_upgrade() {
|
||||
let paras = vec![(
|
||||
a,
|
||||
ParaGenesisArgs {
|
||||
parachain: true,
|
||||
para_kind: ParaKind::Parachain,
|
||||
genesis_head: Default::default(),
|
||||
validation_code: existing_code,
|
||||
},
|
||||
@@ -1117,7 +1117,7 @@ fn pvf_check_coalescing_onboarding_and_upgrade() {
|
||||
assert_ok!(Paras::schedule_para_initialize(
|
||||
b,
|
||||
ParaGenesisArgs {
|
||||
parachain: true,
|
||||
para_kind: ParaKind::Parachain,
|
||||
genesis_head: vec![2].into(),
|
||||
validation_code: validation_code.clone(),
|
||||
},
|
||||
@@ -1185,7 +1185,7 @@ fn pvf_check_onboarding_reject_on_expiry() {
|
||||
assert_ok!(Paras::schedule_para_initialize(
|
||||
a,
|
||||
ParaGenesisArgs {
|
||||
parachain: false,
|
||||
para_kind: ParaKind::Parathread,
|
||||
genesis_head: vec![2].into(),
|
||||
validation_code: validation_code.clone(),
|
||||
},
|
||||
@@ -1224,7 +1224,7 @@ fn pvf_check_upgrade_reject() {
|
||||
let paras = vec![(
|
||||
a,
|
||||
ParaGenesisArgs {
|
||||
parachain: false,
|
||||
para_kind: ParaKind::Parathread,
|
||||
genesis_head: Default::default(),
|
||||
validation_code: old_code,
|
||||
},
|
||||
@@ -1359,7 +1359,7 @@ fn pvf_check_submit_vote() {
|
||||
assert_ok!(Paras::schedule_para_initialize(
|
||||
1000.into(),
|
||||
ParaGenesisArgs {
|
||||
parachain: false,
|
||||
para_kind: ParaKind::Parathread,
|
||||
genesis_head: vec![2].into(),
|
||||
validation_code: code_a.clone(),
|
||||
},
|
||||
@@ -1446,7 +1446,7 @@ fn include_pvf_check_statement_refunds_weight() {
|
||||
let paras = vec![(
|
||||
a,
|
||||
ParaGenesisArgs {
|
||||
parachain: false,
|
||||
para_kind: ParaKind::Parathread,
|
||||
genesis_head: Default::default(),
|
||||
validation_code: old_code,
|
||||
},
|
||||
@@ -1723,3 +1723,41 @@ fn verify_upgrade_restriction_signal_is_externally_accessible() {
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn parakind_encodes_decodes_to_bool_scale() {
|
||||
let chain_kind = ParaKind::Parachain.encode();
|
||||
let chain_bool = true.encode();
|
||||
assert_eq!(chain_kind, chain_bool);
|
||||
|
||||
let chain_dec = ParaKind::decode(&mut chain_kind.as_slice());
|
||||
assert_eq!(chain_dec, Ok(ParaKind::Parachain));
|
||||
|
||||
let thread_kind = ParaKind::Parathread.encode();
|
||||
let thread_bool = false.encode();
|
||||
assert_eq!(thread_kind, thread_bool);
|
||||
|
||||
let thread_dec = ParaKind::decode(&mut thread_kind.as_slice());
|
||||
assert_eq!(thread_dec, Ok(ParaKind::Parathread));
|
||||
|
||||
assert_eq!(bool::type_info(), ParaKind::type_info());
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn parakind_encodes_decodes_to_bool_serde() {
|
||||
let chain = ParaKind::Parachain;
|
||||
let ser_chain = serde_json::to_string(&ParaKind::Parachain).unwrap();
|
||||
let de_chain: ParaKind = serde_json::from_str(&ser_chain).unwrap();
|
||||
assert_eq!(chain, de_chain);
|
||||
|
||||
let ser_true = serde_json::to_string(&true).unwrap();
|
||||
assert_eq!(ser_true, ser_chain);
|
||||
|
||||
let thread = ParaKind::Parathread;
|
||||
let ser_thread = serde_json::to_string(&thread).unwrap();
|
||||
let de_thread: ParaKind = serde_json::from_str(&ser_thread).unwrap();
|
||||
assert_eq!(thread, de_thread);
|
||||
|
||||
let ser_false = serde_json::to_string(&false).unwrap();
|
||||
assert_eq!(ser_false, ser_thread);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user