From 4c70c2058dda1a52e3c281898fb1897dcf9f52ec Mon Sep 17 00:00:00 2001 From: Gav Date: Fri, 2 Feb 2018 22:40:20 +0100 Subject: [PATCH] Fix all tests. --- substrate/executor/src/native_executor.rs | 15 ++++++++-- substrate/executor/src/wasm_executor.rs | 26 +++++++++++++++++- substrate/primitives/src/ed25519.rs | 8 ------ .../release/runtime_polkadot.compact.wasm | Bin 69084 -> 69324 bytes .../release/runtime_polkadot.wasm | Bin 69134 -> 69374 bytes 5 files changed, 38 insertions(+), 11 deletions(-) diff --git a/substrate/executor/src/native_executor.rs b/substrate/executor/src/native_executor.rs index 92045ee976..d9426be1cb 100644 --- a/substrate/executor/src/native_executor.rs +++ b/substrate/executor/src/native_executor.rs @@ -50,7 +50,18 @@ mod tests { const BLOATY_CODE: &[u8] = include_bytes!("../../wasm-runtime/target/wasm32-unknown-unknown/release/runtime_polkadot.wasm"); const COMPACT_CODE: &[u8] = include_bytes!("../../wasm-runtime/target/wasm32-unknown-unknown/release/runtime_polkadot.compact.wasm"); - fn tx() -> Vec { "679fcf0a846b4224c84ecad7d91a26241c46d00cb53d6480a363274e8965ee34b0b80b4b2e3836d3d8f8f12c0c1aef7350af587d9aee3883561d11726068ac0a2f8c6129d816cf51c374bc7f08c3e63ed156cf78aefb4a6550d97b87997977ee00000000000000000228000000d75a980182b10ab7d54bfed3c964073a0ee172f3daa62325af021a68f707511a4500000000000000".convert() } + fn tx() -> Vec { + let transaction = Transaction { + signed: one(), + nonce: 0, + function: Function::StakingTransfer, + input_data: two().to_vec().join(&69u64), + }; + let signature = secret_for(&transaction.signed).unwrap() + .sign(&transaction.to_vec()) + .inner(); + UncheckedTransaction { transaction, signature }.to_vec() + } #[test] fn panic_execution_with_foreign_code_gives_error() { @@ -185,7 +196,7 @@ mod tests { construct_block( 2, block1().1, - hex!("244289aaa48ad6aa39db860d8ec09295ee7f06d1addac3dc02aa993db8644008"), + hex!("2e69e4405a13981224078ad5355c68401bf56d0fe3f14a3536734666e6a8a047"), vec![ Transaction { signed: two(), diff --git a/substrate/executor/src/wasm_executor.rs b/substrate/executor/src/wasm_executor.rs index d1875b6371..5b87270724 100644 --- a/substrate/executor/src/wasm_executor.rs +++ b/substrate/executor/src/wasm_executor.rs @@ -293,6 +293,7 @@ mod tests { use primitives::{blake2_256, twox_128}; use runtime_std::{self, TestExternalities}; use native_runtime::support::{one, two, StaticHexInto}; + use native_runtime::primitives::AccountID; use native_runtime::codec::KeyedVec; use native_runtime::runtime::staking::balance; @@ -402,7 +403,30 @@ mod tests { ); } - fn tx() -> Vec { "679fcf0a846b4224c84ecad7d91a26241c46d00cb53d6480a363274e8965ee34b0b80b4b2e3836d3d8f8f12c0c1aef7350af587d9aee3883561d11726068ac0a2f8c6129d816cf51c374bc7f08c3e63ed156cf78aefb4a6550d97b87997977ee00000000000000000228000000d75a980182b10ab7d54bfed3c964073a0ee172f3daa62325af021a68f707511a4500000000000000".convert() } + use primitives::ed25519::Pair; + fn secret_for(who: &AccountID) -> Option { + match who { + x if *x == one() => Some(Pair::from_seed(b"12345678901234567890123456789012")), + x if *x == two() => Some("9d61b19deffd5a60ba844af492ec2cc44449c5697b326919703bac031cae7f60".into()), + _ => None, + } + } + + fn tx() -> Vec { + use native_runtime::codec::{Joiner, Slicable}; + use native_runtime::support::{one, two}; + use native_runtime::primitives::*; + let transaction = Transaction { + signed: one(), + nonce: 0, + function: Function::StakingTransfer, + input_data: two().to_vec().join(&69u64), + }; + let signature = secret_for(&transaction.signed).unwrap() + .sign(&transaction.to_vec()) + .inner(); + UncheckedTransaction { transaction, signature }.to_vec() + } #[test] fn panic_execution_gives_error() { diff --git a/substrate/primitives/src/ed25519.rs b/substrate/primitives/src/ed25519.rs index e190c4f018..5bfffc2411 100644 --- a/substrate/primitives/src/ed25519.rs +++ b/substrate/primitives/src/ed25519.rs @@ -224,13 +224,6 @@ mod test { let public = pair.public(); assert_eq!(public, "2f8c6129d816cf51c374bc7f08c3e63ed156cf78aefb4a6550d97b87997977ee".into()); let message = b"Something important"; - let signature = pair.sign(&message[..]); - assert!(signature.verify(&message[..], &public)); - } - - #[test] - fn can_sign_transaction() { - let pair = Pair::from_seed(b"12345678901234567890123456789012"); let public = pair.public(); assert_eq!(public, "2f8c6129d816cf51c374bc7f08c3e63ed156cf78aefb4a6550d97b87997977ee".into()); let message = FromHex::from_hex("2f8c6129d816cf51c374bc7f08c3e63ed156cf78aefb4a6550d97b87997977ee00000000000000002228000000d75a980182b10ab7d54bfed3c964073a0ee172f3daa62325af021a68f707511a4500000000000000").unwrap(); @@ -238,6 +231,5 @@ mod test { use hexdisplay::HexDisplay; println!("Correct signature: {}", HexDisplay::from(&signature.0)); assert!(signature.verify(&message[..], &public)); - panic!(); } } diff --git a/substrate/wasm-runtime/target/wasm32-unknown-unknown/release/runtime_polkadot.compact.wasm b/substrate/wasm-runtime/target/wasm32-unknown-unknown/release/runtime_polkadot.compact.wasm index 4ff597b8c79dab280c2276d8a7debe6e61882b6e..745c95ccf5be004e450d5c6df6f60cf55901bbc4 100644 GIT binary patch delta 21746 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ȪFl#8SXA}muNWrC0lX(VBh@~RaGNXmpY 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 bU2exU)KcJXUz{g~lSww0ogZ#ZvXTD}*Rn0i diff --git a/substrate/wasm-runtime/target/wasm32-unknown-unknown/release/runtime_polkadot.wasm b/substrate/wasm-runtime/target/wasm32-unknown-unknown/release/runtime_polkadot.wasm index b02b09b63d8dbc4bfda896d0256d33823ece1c85..afb2e9471182c38c6edb769cf918f0daaeca009b 100644 GIT binary patch delta 21959 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 oxD5I@0Bs670_Y^#PL