Fix warnings and make CI working again (#4469)

* Fix warnings and make CI working again

* Fix test
This commit is contained in:
Bastian Köcher
2019-12-20 14:47:19 +01:00
committed by Arkadiy Paronyan
parent 7d4c6354df
commit bfad5f3ffc
9 changed files with 48 additions and 47 deletions
@@ -15,6 +15,7 @@
// along with Substrate. If not, see <http://www.gnu.org/licenses/>.
//! Integration tests for runtime interface primitives
#![cfg(test)]
use sp_runtime_interface::*;
use sp_runtime_interface_test_wasm::{WASM_BINARY, test_api::HostFunctions};
@@ -23,85 +24,85 @@ use sp_wasm_interface::HostFunctions as HostFunctionsT;
type TestExternalities = sp_state_machine::TestExternalities<sp_core::Blake2Hasher, u64>;
fn call_wasm_method<HF: HostFunctionsT>(method: &str) -> TestExternalities {
let mut ext = TestExternalities::default();
let mut ext_ext = ext.ext();
let mut ext = TestExternalities::default();
let mut ext_ext = ext.ext();
sc_executor::call_in_wasm::<
_,
(
HF,
sp_io::SubstrateHostFunctions,
sc_executor::deprecated_host_interface::SubstrateExternals
)
>(
method,
&[],
sc_executor::WasmExecutionMethod::Interpreted,
&mut ext_ext,
&WASM_BINARY[..],
8,
).expect(&format!("Executes `{}`", method));
sc_executor::call_in_wasm::<
_,
(
HF,
sp_io::SubstrateHostFunctions,
sc_executor::deprecated_host_interface::SubstrateExternals
)
>(
method,
&[],
sc_executor::WasmExecutionMethod::Interpreted,
&mut ext_ext,
&WASM_BINARY[..],
8,
).expect(&format!("Executes `{}`", method));
ext
ext
}
#[test]
fn test_return_data() {
call_wasm_method::<HostFunctions>("test_return_data");
call_wasm_method::<HostFunctions>("test_return_data");
}
#[test]
fn test_return_option_data() {
call_wasm_method::<HostFunctions>("test_return_option_data");
call_wasm_method::<HostFunctions>("test_return_option_data");
}
#[test]
fn test_set_storage() {
let mut ext = call_wasm_method::<HostFunctions>("test_set_storage");
let mut ext = call_wasm_method::<HostFunctions>("test_set_storage");
let expected = "world";
assert_eq!(expected.as_bytes(), &ext.ext().storage("hello".as_bytes()).unwrap()[..]);
let expected = "world";
assert_eq!(expected.as_bytes(), &ext.ext().storage("hello".as_bytes()).unwrap()[..]);
}
#[test]
fn test_return_value_into_mutable_reference() {
call_wasm_method::<HostFunctions>("test_return_value_into_mutable_reference");
call_wasm_method::<HostFunctions>("test_return_value_into_mutable_reference");
}
#[test]
fn test_get_and_return_array() {
call_wasm_method::<HostFunctions>("test_get_and_return_array");
call_wasm_method::<HostFunctions>("test_get_and_return_array");
}
#[test]
fn test_array_as_mutable_reference() {
call_wasm_method::<HostFunctions>("test_array_as_mutable_reference");
call_wasm_method::<HostFunctions>("test_array_as_mutable_reference");
}
#[test]
fn test_return_input_public_key() {
call_wasm_method::<HostFunctions>("test_return_input_public_key");
call_wasm_method::<HostFunctions>("test_return_input_public_key");
}
#[test]
#[should_panic(
expected = "Other(\"Instantiation: Export ext_test_api_return_input_version_1 not found\")"
expected = "Other(\"Instantiation: Export ext_test_api_return_input_version_1 not found\")"
)]
fn host_function_not_found() {
call_wasm_method::<()>("test_return_data");
call_wasm_method::<()>("test_return_data");
}
#[test]
#[should_panic(
expected =
"FunctionExecution(\"ext_test_api_invalid_utf8_data_version_1\", \
\"Invalid utf8 data provided\")"
expected =
"FunctionExecution(\"ext_test_api_invalid_utf8_data_version_1\", \
\"Invalid utf8 data provided\")"
)]
fn test_invalid_utf8_data_should_return_an_error() {
call_wasm_method::<HostFunctions>("test_invalid_utf8_data_should_return_an_error");
call_wasm_method::<HostFunctions>("test_invalid_utf8_data_should_return_an_error");
}
#[test]
fn test_overwrite_native_function_implementation() {
call_wasm_method::<HostFunctions>("test_overwrite_native_function_implementation");
call_wasm_method::<HostFunctions>("test_overwrite_native_function_implementation");
}
+1 -1
View File
@@ -6,7 +6,7 @@ edition = "2018"
[dependencies]
serde = { version = "1.0.101", optional = true, features = ["derive"] }
codec = { package = "parity-scale-codec", version = "1.0.0", default-features = false, features = ["derive"] }
codec = { package = "parity-scale-codec", version = "1.1.0", default-features = false, features = ["derive"] }
sp-core = { version = "2.0.0", default-features = false, path = "../core" }
sp-application-crypto = { version = "2.0.0", default-features = false, path = "../application-crypto" }
sp-arithmetic = { version = "2.0.0", default-features = false, path = "../arithmetic" }