From 89d8686883a8dd90706044e9028a2fb41b63cb40 Mon Sep 17 00:00:00 2001 From: Gav Date: Wed, 7 Feb 2018 16:09:37 +0100 Subject: [PATCH] Half of tests fixed. --- substrate/polkadot-primitives/src/block.rs | 31 +++------------- .../polkadot-primitives/src/transaction.rs | 14 +++++--- substrate/wasm-runtime/polkadot/src/lib.rs | 1 - .../polkadot/src/runtime/governance.rs | 36 +++++-------------- .../polkadot/src/support/storage.rs | 6 ++-- 5 files changed, 26 insertions(+), 62 deletions(-) diff --git a/substrate/polkadot-primitives/src/block.rs b/substrate/polkadot-primitives/src/block.rs index a5d76bf930..3b5691011f 100644 --- a/substrate/polkadot-primitives/src/block.rs +++ b/substrate/polkadot-primitives/src/block.rs @@ -67,6 +67,9 @@ impl Slicable for Digest { } } +/// The block "body": A bunch of transactions. +pub type Body = Vec; + /// A Polkadot relay chain block. #[derive(PartialEq, Eq, Clone)] #[cfg_attr(feature = "std", derive(Serialize, Deserialize, Debug))] @@ -74,7 +77,7 @@ pub struct Block { /// The block header. pub header: Header, /// All relay-chain transactions. - pub transactions: Vec, + pub transactions: Body, } impl Slicable for Block { @@ -165,7 +168,7 @@ mod tests { use super::*; use codec::Slicable; use substrate_serializer as ser; - use parachain; + use primitives::hexdisplay::HexDisplay; #[test] fn test_header_serialization() { @@ -192,28 +195,4 @@ mod tests { let v = header.to_vec(); assert_eq!(Header::from_slice(&mut &v[..]).unwrap(), header); } - - #[test] - fn test_body_serialization() { - assert_eq!(ser::to_string_pretty(&Body { - candidates: vec![ - parachain::Candidate { - parachain_index: 10.into(), - collator_signature: Default::default(), - unprocessed_ingress: Default::default(), - block: ::parachain::BlockData(vec![1, 3, 5, 8]), - } - ], - }), r#"{ - "candidates": [ - { - "parachainIndex": 10, - "collatorSignature": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "unprocessedIngress": [], - "block": "0x01030508" - } - ] -}"#); - } - } diff --git a/substrate/polkadot-primitives/src/transaction.rs b/substrate/polkadot-primitives/src/transaction.rs index a711b58bec..4cdd9cd691 100644 --- a/substrate/polkadot-primitives/src/transaction.rs +++ b/substrate/polkadot-primitives/src/transaction.rs @@ -290,8 +290,6 @@ impl Slicable for Transaction { // with substrate's generic `Vec` type. Basically this just means accepting that there // will be a prefix of u32, which has the total number of bytes following (we don't need // to use this). - let _length_do_not_remove_me_see_above: u32 = try_opt!(Slicable::from_slice(value)); - Some(Transaction { signed: try_opt!(Slicable::from_slice(value)), nonce: try_opt!(Slicable::from_slice(value)), @@ -380,9 +378,10 @@ impl fmt::Debug for UncheckedTransaction { #[cfg(test)] mod tests { - use ::codec::Slicable; - use primitives; use super::*; + use primitives; + use ::codec::Slicable; + use primitives::hexdisplay::HexDisplay; #[test] fn serialize_unchecked() { @@ -394,8 +393,15 @@ mod tests { }, signature: primitives::hash::H512([0; 64]), }; + // 71000000 + // 0101010101010101010101010101010101010101010101010101010101010101 + // e703000000000000 + // 00 + // df0f0200 + // 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 let v = Slicable::to_vec(&tx); + println!("{}", HexDisplay::from(&v)); assert_eq!(UncheckedTransaction::from_slice(&mut &v[..]).unwrap(), tx); } } diff --git a/substrate/wasm-runtime/polkadot/src/lib.rs b/substrate/wasm-runtime/polkadot/src/lib.rs index e277c23f14..6c92c8aa13 100644 --- a/substrate/wasm-runtime/polkadot/src/lib.rs +++ b/substrate/wasm-runtime/polkadot/src/lib.rs @@ -18,7 +18,6 @@ #![cfg_attr(not(feature = "std"), no_std)] -#[macro_use] extern crate substrate_runtime_std as rstd; #[macro_use] diff --git a/substrate/wasm-runtime/polkadot/src/runtime/governance.rs b/substrate/wasm-runtime/polkadot/src/runtime/governance.rs index 4b62d11a95..a7d2baf677 100644 --- a/substrate/wasm-runtime/polkadot/src/runtime/governance.rs +++ b/substrate/wasm-runtime/polkadot/src/runtime/governance.rs @@ -189,9 +189,7 @@ mod tests { // Block 1: Make proposal. Approve it. Era length changes. with_env(|e| e.block_number = 1); - public::propose(&one, &Proposal { - function: Proposal::StakingSetSessionsPerEra(2), - }); + public::propose(&one, &Proposal::StakingSetSessionsPerEra(2)); public::approve(&two, 1); staking::internal::check_new_era(); assert_eq!(staking::era_length(), 2); @@ -214,17 +212,13 @@ mod tests { // Block 1: Make proposal. Fail it. with_env(|e| e.block_number = 1); - public::propose(&one, &Proposal { - function: Proposal::StakingSetSessionsPerEra(2), - }); + public::propose(&one, &Proposal::StakingSetSessionsPerEra(2)); staking::internal::check_new_era(); assert_eq!(staking::era_length(), 1); // Block 2: Make proposal. Approve it. It should change era length. with_env(|e| e.block_number = 2); - public::propose(&one, &Proposal { - function: Proposal::StakingSetSessionsPerEra(2), - }); + public::propose(&one, &Proposal::StakingSetSessionsPerEra(2)); public::approve(&two, 2); staking::internal::check_new_era(); assert_eq!(staking::era_length(), 2); @@ -247,9 +241,7 @@ mod tests { // Block 1: Make proposal. Will have only 1 vote. No change. with_env(|e| e.block_number = 1); - public::propose(&one, &Proposal { - function: Proposal::StakingSetSessionsPerEra(2), - }); + public::propose(&one, &Proposal::StakingSetSessionsPerEra(2)); staking::internal::check_new_era(); assert_eq!(staking::era_length(), 1); }); @@ -272,9 +264,7 @@ mod tests { // Block 1: Make proposal. Will have only 1 vote. No change. with_env(|e| e.block_number = 1); - public::propose(&one, &Proposal { - function: Proposal::StakingSetSessionsPerEra(2), - }); + public::propose(&one, &Proposal::StakingSetSessionsPerEra(2)); public::approve(&two, 0); staking::internal::check_new_era(); assert_eq!(staking::era_length(), 1); @@ -298,9 +288,7 @@ mod tests { // Block 1: Make proposal. Will have only 1 vote. No change. with_env(|e| e.block_number = 1); - public::propose(&one, &Proposal { - function: Proposal::StakingSetSessionsPerEra(2), - }); + public::propose(&one, &Proposal::StakingSetSessionsPerEra(2)); public::approve(&two, 1); public::approve(&two, 1); staking::internal::check_new_era(); @@ -325,12 +313,8 @@ mod tests { // Block 1: Make proposal. Will have only 1 vote. No change. with_env(|e| e.block_number = 1); - public::propose(&one, &Proposal { - function: Proposal::StakingSetSessionsPerEra(2), - }); - public::propose(&two, &Proposal { - function: Proposal::StakingSetSessionsPerEra(2), - }); + public::propose(&one, &Proposal::StakingSetSessionsPerEra(2)); + public::propose(&two, &Proposal::StakingSetSessionsPerEra(2)); staking::internal::check_new_era(); assert_eq!(staking::era_length(), 1); }); @@ -377,9 +361,7 @@ mod tests { // Block 1: Make proposal. Will have only 1 vote. No change. with_env(|e| e.block_number = 1); - public::propose(&one, &Proposal { - function: Proposal::StakingSetSessionsPerEra(2), - }); + public::propose(&one, &Proposal::StakingSetSessionsPerEra(2)); public::approve(&four, 1); staking::internal::check_new_era(); assert_eq!(staking::era_length(), 1); diff --git a/substrate/wasm-runtime/polkadot/src/support/storage.rs b/substrate/wasm-runtime/polkadot/src/support/storage.rs index 3332b7b4cd..5878113b13 100644 --- a/substrate/wasm-runtime/polkadot/src/support/storage.rs +++ b/substrate/wasm-runtime/polkadot/src/support/storage.rs @@ -338,12 +338,10 @@ mod tests { #[test] fn proposals_can_be_stored() { - use polkadot_primitives::{Proposal, InternalFunction}; + use polkadot_primitives::Proposal; let mut t = TestExternalities { storage: HashMap::new(), }; with_externalities(&mut t, || { - let x = Proposal { - function: InternalFunction::StakingSetSessionsPerEra(25519), - }; + let x = Proposal::StakingSetSessionsPerEra(25519); put(b":test", &x); let y: Proposal = get(b":test").unwrap(); assert_eq!(x, y);