From 9cc7c5a9b25690c618e38aaa05f25952aaab7a6a Mon Sep 17 00:00:00 2001 From: Gav Date: Wed, 31 Jan 2018 06:52:40 +0100 Subject: [PATCH] Test enumerted trie root. --- substrate/executor/src/wasm_executor.rs | 6 +++--- .../release/runtime_test.compact.wasm | Bin 13189 -> 14114 bytes .../release/runtime_test.wasm | Bin 13314 -> 14239 bytes substrate/wasm-runtime/test/src/lib.rs | 9 +++++++-- 4 files changed, 10 insertions(+), 5 deletions(-) diff --git a/substrate/executor/src/wasm_executor.rs b/substrate/executor/src/wasm_executor.rs index 7518039df6..a64a4f9176 100644 --- a/substrate/executor/src/wasm_executor.rs +++ b/substrate/executor/src/wasm_executor.rs @@ -382,16 +382,16 @@ mod tests { ); } -/* #[test] + #[test] fn enumerated_trie_root_should_work() { let mut ext = TestExternalities::default(); let test_code = include_bytes!("../../wasm-runtime/target/wasm32-unknown-unknown/release/runtime_test.compact.wasm"); assert_eq!( WasmExecutor.call(&mut ext, &test_code[..], "test_enumerated_trie_root", &CallData(vec![])).unwrap(), - vec![0] + ordered_trie_root(vec![b"zero".to_vec(), b"one".to_vec(), b"two".to_vec()]).0.to_vec() ); } -*/ + fn tx() -> Vec { "679fcf0a846b4224c84ecad7d91a26241c46d00cb53d6480a363274e8965ee34b0b80b4b2e3836d3d8f8f12c0c1aef7350af587d9aee3883561d11726068ac0a2f8c6129d816cf51c374bc7f08c3e63ed156cf78aefb4a6550d97b87997977ee00000000000000000228000000d75a980182b10ab7d54bfed3c964073a0ee172f3daa62325af021a68f707511a4500000000000000".convert() } #[test] diff --git a/substrate/wasm-runtime/target/wasm32-unknown-unknown/release/runtime_test.compact.wasm b/substrate/wasm-runtime/target/wasm32-unknown-unknown/release/runtime_test.compact.wasm index 63e7666aadfbfdef2c4286d3397788e339381d7b..3905e9d9113959f2da7e70433a3943645341db65 100644 GIT binary patch delta 3376 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 T>cCHS_I&1v*Fin=#D@PLVEVPx delta 2596 zcmZuzZD?E989wLSdvzrpeO%kJEX#I%WXrbv5&0vwaOpyF0ww8|G=VWP$X3@Maw5n2 zKvF)umRcKTl&u>MC*9U9V=DWdqSh&F41%_LBa~7M3#>mnFf2d%BR@pffj21ZxmW&3 z$1a@vocDP@&U@bXoGbk%|AVWX%$Ks15JF$@-R9l5$B$`mvB2%QDeg|+D$gw!(`lmL z{=)<{Za?|TN9nlI1KWpZSo#SzolLV0bjm@Z#0=E$Je;R^G)%pw_5 z=U8Mt5p<}9)%k1bsky0{6dCqAO!;R1mLrcmB~MPxlF_zi;H9aVnaOA8ZlsHur>TT_tw5I;0ox%Hr{!dnqswrc` zhTj=K1#F#l4KrITxo^?1dg6ZTWHl&2l&)A4xG?5ZRJq zKEQ4?#oWN|6-iU*Ixr(Fc$6JDzi=oPvZBmD2`T<>drdY|d1I2OXN zFcmJL3&S4gyR2YL7cPsbC%t3-U^K|B9#pa(MQ;+K?@~P)L+xUeOCh=Cm1EMt=BWh} zB28QnU815yJ|t4Zf?A9S9oHvD_w7Hj`KH4Tksiy-PQguAZ;RM$T<9~*9YZ4MO$_d~ zBV#zZ&*Rh*i*Z~(VVo8}+=v;VHJfHg^*^GA3KfYZUG=CWR$QHniFU>%w9-PKbfE>g z`~}4xz8@3zz4?0od+J+#-=n(P=^LPN_3OBxOm*~6?klNZec8YEKk5hZ30vKWpQb)_ zd|(>ts{?U(|75`SerMn^81LZFdR(vsv-;>g!Dd**$yYCzHwVA_1L8 zYH;UpuNs7efff+!AiamWIyqL5_YH1s!pP3=9)6DS`Gs;D2e<&!0E7w<24oY6Dm@kA zvB5W~l4GmtJI4mEeBnBZ^e!U79FaCm9ub(@JG}_}>Q3*PJaLd>9g7UYssU{NE)wE` ze3bIG$?qSm7guY^LAmEXTJyo-nwy@ZN|nmR!%EdWoG+}E(;|~wO5YMh);(%BInv+o zaJNX2Nu#-GCA?J6C#~k5()TluG=C! zIJbty&8z90D6M7|Gr22voGRyGktvD%^|Bp#A%8u$1j$*W&N)jaQFD0iIz=O-4s4#W zUC!O7>@wI7zLH#hK0eg(hL2kUtX<7Faoij?SydAg;Yc02i_i(^3P8KFI3+&y(nNf` z;p44h0a=u<9+UxTp-p~nS!T1~0@&v`-BIsOoImj?bPWUwfonNjtl{UOgX3uLG<{g+ z%>Z{DRJf|1n;c4R2e?&0RQm*O0{u?(M_>=)b{xeGsLjb}Xfw$DPNJxANz9j#V^uwv zyhJNo;i(j5wbrc{kAH*Giu&dB8Mf1|{xSV4)(CG^X0lX#(#azYU-QrjEcVqy*XVRE yOf_n^Q`Dol#QQcCU>kD#5Vdb!gx#pRFw)*p>EdnJtn-g*yf}Xo|7#X;`Th%0cp8ZS diff --git a/substrate/wasm-runtime/test/src/lib.rs b/substrate/wasm-runtime/test/src/lib.rs index c63ca73fca..ae5a6c179c 100644 --- a/substrate/wasm-runtime/test/src/lib.rs +++ b/substrate/wasm-runtime/test/src/lib.rs @@ -8,7 +8,8 @@ use alloc::vec::Vec; #[macro_use] extern crate runtime_std; -use runtime_std::{set_storage, storage, print, blake2_256, twox_128, twox_256, ed25519_verify}; +use runtime_std::{set_storage, storage, print, blake2_256, twox_128, twox_256, ed25519_verify, + enumerated_trie_root}; fn test_blake2_256(input: &[u8]) -> Vec { blake2_256(&input).to_vec() @@ -29,6 +30,10 @@ fn test_ed25519_verify(input: &[u8]) -> Vec { [ed25519_verify(sig, &msg[..], pubkey) as u8].to_vec() } +fn test_enumerated_trie_root(_input: &[u8]) -> Vec { + enumerated_trie_root(&[&b"zero"[..], &b"one"[..], &b"two"[..]]).to_vec() +} + fn test_data_in(input: &[u8]) -> Vec { print("set_storage"); set_storage(b"input", &input); @@ -59,4 +64,4 @@ fn test_conditional_panic(input: &[u8]) -> Vec { } impl_stubs!(test_data_in, test_empty_return, test_panic, test_conditional_panic, - test_blake2_256, test_twox_256, test_twox_128, test_ed25519_verify); + test_blake2_256, test_twox_256, test_twox_128, test_ed25519_verify, test_enumerated_trie_root);