Simplify the integration test (#47)

This commit is contained in:
vms 2020-12-23 09:28:41 +03:00 committed by GitHub
parent 7241175472
commit 51754016f7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 78 additions and 129 deletions

174
Cargo.lock generated
View File

@ -42,7 +42,7 @@ checksum = "68803225a7b13e47191bab76f2687382b60d259e8cf37f6e1893658b84bb9479"
name = "aqua-test-module" name = "aqua-test-module"
version = "0.1.0" version = "0.1.0"
dependencies = [ dependencies = [
"fluence 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", "fluence",
] ]
[[package]] [[package]]
@ -50,7 +50,7 @@ name = "aqua-test-utils"
version = "0.1.0" version = "0.1.0"
dependencies = [ dependencies = [
"aquamarine-vm", "aquamarine-vm",
"fluence 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", "fluence",
"serde_json", "serde_json",
] ]
@ -58,7 +58,7 @@ dependencies = [
name = "aquamarine" name = "aquamarine"
version = "0.1.3" version = "0.1.3"
dependencies = [ dependencies = [
"fluence 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", "fluence",
"log", "log",
"serde", "serde",
"serde_json", "serde_json",
@ -69,10 +69,10 @@ dependencies = [
[[package]] [[package]]
name = "aquamarine-vm" name = "aquamarine-vm"
version = "0.1.5" version = "0.1.6"
source = "git+https://github.com/fluencelabs/fce#725f6e65f32b8503faae49c875187db6fbdc3d1e" source = "git+https://github.com/fluencelabs/fce#f022a2dec4229f1dd739794e98a0e5d080ea13d5"
dependencies = [ dependencies = [
"fluence-faas 0.1.17 (git+https://github.com/fluencelabs/fce)", "fluence-faas 0.1.18 (git+https://github.com/fluencelabs/fce)",
"maplit", "maplit",
"serde", "serde",
"serde_json", "serde_json",
@ -628,28 +628,6 @@ version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed" checksum = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed"
[[package]]
name = "fce"
version = "0.1.14"
source = "git+https://github.com/fluencelabs/fce#725f6e65f32b8503faae49c875187db6fbdc3d1e"
dependencies = [
"boolinator",
"fce-utils 0.1.0 (git+https://github.com/fluencelabs/fce)",
"fce-wit-interfaces 0.1.9 (git+https://github.com/fluencelabs/fce)",
"fce-wit-parser 0.1.11 (git+https://github.com/fluencelabs/fce)",
"log",
"multi-map",
"multimap",
"parity-wasm",
"pwasm-utils",
"safe-transmute",
"serde",
"wasmer-interface-types-fl",
"wasmer-runtime-core-fl",
"wasmer-runtime-fl",
"wasmer-wasi-fl",
]
[[package]] [[package]]
name = "fce" name = "fce"
version = "0.1.14" version = "0.1.14"
@ -674,9 +652,26 @@ dependencies = [
] ]
[[package]] [[package]]
name = "fce-utils" name = "fce"
version = "0.1.0" version = "0.1.14"
source = "git+https://github.com/fluencelabs/fce#725f6e65f32b8503faae49c875187db6fbdc3d1e" source = "git+https://github.com/fluencelabs/fce#f022a2dec4229f1dd739794e98a0e5d080ea13d5"
dependencies = [
"boolinator",
"fce-utils 0.1.0 (git+https://github.com/fluencelabs/fce)",
"fce-wit-interfaces 0.1.9 (git+https://github.com/fluencelabs/fce)",
"fce-wit-parser 0.1.11 (git+https://github.com/fluencelabs/fce)",
"log",
"multi-map",
"multimap",
"parity-wasm",
"pwasm-utils",
"safe-transmute",
"serde",
"wasmer-interface-types-fl",
"wasmer-runtime-core-fl",
"wasmer-runtime-fl",
"wasmer-wasi-fl",
]
[[package]] [[package]]
name = "fce-utils" name = "fce-utils"
@ -685,13 +680,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dcdd9d63fa5f87e03514ba8ca3bb91a25121bbf1c63a26df710f166ab8f274f7" checksum = "dcdd9d63fa5f87e03514ba8ca3bb91a25121bbf1c63a26df710f166ab8f274f7"
[[package]] [[package]]
name = "fce-wit-interfaces" name = "fce-utils"
version = "0.1.9" version = "0.1.0"
source = "git+https://github.com/fluencelabs/fce#725f6e65f32b8503faae49c875187db6fbdc3d1e" source = "git+https://github.com/fluencelabs/fce#f022a2dec4229f1dd739794e98a0e5d080ea13d5"
dependencies = [
"multimap",
"wasmer-interface-types-fl",
]
[[package]] [[package]]
name = "fce-wit-interfaces" name = "fce-wit-interfaces"
@ -704,16 +695,12 @@ dependencies = [
] ]
[[package]] [[package]]
name = "fce-wit-parser" name = "fce-wit-interfaces"
version = "0.1.11" version = "0.1.9"
source = "git+https://github.com/fluencelabs/fce#725f6e65f32b8503faae49c875187db6fbdc3d1e" source = "git+https://github.com/fluencelabs/fce#f022a2dec4229f1dd739794e98a0e5d080ea13d5"
dependencies = [ dependencies = [
"anyhow", "multimap",
"fce-wit-interfaces 0.1.9 (git+https://github.com/fluencelabs/fce)",
"serde",
"walrus",
"wasmer-interface-types-fl", "wasmer-interface-types-fl",
"wasmer-runtime-core-fl",
] ]
[[package]] [[package]]
@ -730,29 +717,33 @@ dependencies = [
"wasmer-runtime-core-fl", "wasmer-runtime-core-fl",
] ]
[[package]]
name = "fce-wit-parser"
version = "0.1.11"
source = "git+https://github.com/fluencelabs/fce#f022a2dec4229f1dd739794e98a0e5d080ea13d5"
dependencies = [
"anyhow",
"fce-wit-interfaces 0.1.9 (git+https://github.com/fluencelabs/fce)",
"serde",
"walrus",
"wasmer-interface-types-fl",
"wasmer-runtime-core-fl",
]
[[package]] [[package]]
name = "fixedbitset" name = "fixedbitset"
version = "0.2.0" version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "37ab347416e802de484e4d03c7316c48f1ecb56574dfd4a46a80f173ce1de04d" checksum = "37ab347416e802de484e4d03c7316c48f1ecb56574dfd4a46a80f173ce1de04d"
[[package]]
name = "fluence"
version = "0.2.13"
source = "git+https://github.com/fluencelabs/rust-sdk#71591f412cb65879d74e8c38838e827ab74d8802"
dependencies = [
"fluence-sdk-macro 0.2.13 (git+https://github.com/fluencelabs/rust-sdk)",
"fluence-sdk-main 0.2.13 (git+https://github.com/fluencelabs/rust-sdk)",
]
[[package]] [[package]]
name = "fluence" name = "fluence"
version = "0.2.13" version = "0.2.13"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "083f40a5d000b28b74f10d824925eccf1fbdf6dbb8881e6d052c6183b2bc615e" checksum = "083f40a5d000b28b74f10d824925eccf1fbdf6dbb8881e6d052c6183b2bc615e"
dependencies = [ dependencies = [
"fluence-sdk-macro 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", "fluence-sdk-macro",
"fluence-sdk-main 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", "fluence-sdk-main",
] ]
[[package]] [[package]]
@ -761,7 +752,7 @@ version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4f5d68695059de51743eddcd98a0ba77ec3af7fa51b2eb5fcb35edce05ff1144" checksum = "4f5d68695059de51743eddcd98a0ba77ec3af7fa51b2eb5fcb35edce05ff1144"
dependencies = [ dependencies = [
"fluence-faas 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", "fluence-faas 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
"log", "log",
"maplit", "maplit",
"serde", "serde",
@ -773,13 +764,14 @@ dependencies = [
[[package]] [[package]]
name = "fluence-faas" name = "fluence-faas"
version = "0.1.17" version = "0.1.18"
source = "git+https://github.com/fluencelabs/fce#725f6e65f32b8503faae49c875187db6fbdc3d1e" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "760e23d5582bee6ec9800c0a3e179525e80a28482d17a09ed7d138d121020368"
dependencies = [ dependencies = [
"cmd_lib", "cmd_lib",
"fce 0.1.14 (git+https://github.com/fluencelabs/fce)", "fce 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)",
"fce-utils 0.1.0 (git+https://github.com/fluencelabs/fce)", "fce-utils 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"fluence-sdk-main 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", "fluence-sdk-main",
"itertools", "itertools",
"log", "log",
"safe-transmute", "safe-transmute",
@ -795,14 +787,13 @@ dependencies = [
[[package]] [[package]]
name = "fluence-faas" name = "fluence-faas"
version = "0.1.17" version = "0.1.18"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "git+https://github.com/fluencelabs/fce#f022a2dec4229f1dd739794e98a0e5d080ea13d5"
checksum = "95e1bc2abb01e97b5c1ce975d1b9b0e13582a4aa42cecfeb5e23879bc2a1ac3b"
dependencies = [ dependencies = [
"cmd_lib", "cmd_lib",
"fce 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", "fce 0.1.14 (git+https://github.com/fluencelabs/fce)",
"fce-utils 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "fce-utils 0.1.0 (git+https://github.com/fluencelabs/fce)",
"fluence-sdk-main 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", "fluence-sdk-main",
"itertools", "itertools",
"log", "log",
"safe-transmute", "safe-transmute",
@ -816,31 +807,13 @@ dependencies = [
"wasmer-wasi-fl", "wasmer-wasi-fl",
] ]
[[package]]
name = "fluence-sdk-macro"
version = "0.2.13"
source = "git+https://github.com/fluencelabs/rust-sdk#71591f412cb65879d74e8c38838e827ab74d8802"
dependencies = [
"fluence-sdk-wit 0.2.13 (git+https://github.com/fluencelabs/rust-sdk)",
]
[[package]] [[package]]
name = "fluence-sdk-macro" name = "fluence-sdk-macro"
version = "0.2.13" version = "0.2.13"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2f79abced6cdfdd7089b0accad0d9c760bf9d2e82ae1bec851383e061cb40790" checksum = "2f79abced6cdfdd7089b0accad0d9c760bf9d2e82ae1bec851383e061cb40790"
dependencies = [ dependencies = [
"fluence-sdk-wit 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", "fluence-sdk-wit",
]
[[package]]
name = "fluence-sdk-main"
version = "0.2.13"
source = "git+https://github.com/fluencelabs/rust-sdk#71591f412cb65879d74e8c38838e827ab74d8802"
dependencies = [
"fluence-sdk-macro 0.2.13 (git+https://github.com/fluencelabs/rust-sdk)",
"log",
"serde",
] ]
[[package]] [[package]]
@ -849,24 +822,11 @@ version = "0.2.13"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2348d5b5000012f9da835e52f7473e08dff6345e9beba2e80a91b801e48ac0b6" checksum = "2348d5b5000012f9da835e52f7473e08dff6345e9beba2e80a91b801e48ac0b6"
dependencies = [ dependencies = [
"fluence-sdk-macro 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", "fluence-sdk-macro",
"log", "log",
"serde", "serde",
] ]
[[package]]
name = "fluence-sdk-wit"
version = "0.2.13"
source = "git+https://github.com/fluencelabs/rust-sdk#71591f412cb65879d74e8c38838e827ab74d8802"
dependencies = [
"proc-macro2",
"quote",
"serde",
"serde_json",
"syn",
"uuid",
]
[[package]] [[package]]
name = "fluence-sdk-wit" name = "fluence-sdk-wit"
version = "0.2.13" version = "0.2.13"
@ -1368,7 +1328,7 @@ dependencies = [
name = "polyplets" name = "polyplets"
version = "0.1.0" version = "0.1.0"
dependencies = [ dependencies = [
"fluence 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", "fluence",
"serde", "serde",
] ]
@ -1715,9 +1675,8 @@ checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
[[package]] [[package]]
name = "stepper-interface" name = "stepper-interface"
version = "0.1.0" version = "0.1.0"
source = "git+https://github.com/fluencelabs/aquamarine#b967a63abca9742d6764e9b27926025d5e2b2efb"
dependencies = [ dependencies = [
"fluence 0.2.13 (git+https://github.com/fluencelabs/rust-sdk)", "fluence",
"serde", "serde",
"wasmer-interface-types-fl", "wasmer-interface-types-fl",
] ]
@ -1725,8 +1684,9 @@ dependencies = [
[[package]] [[package]]
name = "stepper-interface" name = "stepper-interface"
version = "0.1.0" version = "0.1.0"
source = "git+https://github.com/fluencelabs/aquamarine#724117547205d8ccc742d325b542af8f3df801b8"
dependencies = [ dependencies = [
"fluence 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", "fluence",
"serde", "serde",
"wasmer-interface-types-fl", "wasmer-interface-types-fl",
] ]
@ -1741,7 +1701,7 @@ dependencies = [
"criterion", "criterion",
"csv", "csv",
"env_logger", "env_logger",
"fluence 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", "fluence",
"fluence-app-service", "fluence-app-service",
"jsonpath_lib", "jsonpath_lib",
"log", "log",

View File

@ -242,6 +242,7 @@ fn tetraplet_with_wasm_modules() {
let services = Rc::new(RefCell::new(services)); let services = Rc::new(RefCell::new(services));
let services_inner = services.clone(); let services_inner = services.clone();
const ADMIN_PEER_PK: &str = "12D3KooWEXNUbCXooUwHrHBbrmjsrpHXoEphPwbjQXEGyzbqKnE1";
let host_func: HostExportedFunc = Box::new(move |_, args: Vec<IValue>| -> Option<IValue> { let host_func: HostExportedFunc = Box::new(move |_, args: Vec<IValue>| -> Option<IValue> {
let service_id = match &args[0] { let service_id = match &args[0] {
IValue::String(str) => str, IValue::String(str) => str,
@ -266,6 +267,7 @@ fn tetraplet_with_wasm_modules() {
let tetraplets: Vec<Vec<SDKTetraplet>> = serde_json::from_str(tetraplets).unwrap(); let tetraplets: Vec<Vec<SDKTetraplet>> = serde_json::from_str(tetraplets).unwrap();
let mut call_parameters = CallParameters::default(); let mut call_parameters = CallParameters::default();
call_parameters.init_peer_id = ADMIN_PEER_PK.to_string();
call_parameters.tetraplets = tetraplets; call_parameters.tetraplets = tetraplets;
let service_args = serde_json::from_str(service_args).unwrap(); let service_args = serde_json::from_str(service_args).unwrap();
@ -282,7 +284,7 @@ fn tetraplet_with_wasm_modules() {
let script = String::from( let script = String::from(
r#" r#"
(seq (seq
(call %current_peer_id% ("auth" "is_authorized") [%init_peer_id%] auth_result) (call %current_peer_id% ("auth" "is_authorized") [] auth_result)
(call %current_peer_id% ("log_storage" "delete") [auth_result.$.is_authorized "1"]) (call %current_peer_id% ("log_storage" "delete") [auth_result.$.is_authorized "1"])
) )
"#, "#,
@ -290,7 +292,6 @@ fn tetraplet_with_wasm_modules() {
let mut vm = create_aqua_vm(host_func, "some peer_id"); let mut vm = create_aqua_vm(host_func, "some peer_id");
const ADMIN_PEER_PK: &str = "12D3KooWEXNUbCXooUwHrHBbrmjsrpHXoEphPwbjQXEGyzbqKnE1";
let result = call_vm!(vm, ADMIN_PEER_PK, script, "", ""); let result = call_vm!(vm, ADMIN_PEER_PK, script, "", "");
let path: CallEvidencePath = serde_json::from_slice(&result.data).unwrap(); let path: CallEvidencePath = serde_json::from_slice(&result.data).unwrap();
let right_res = EvidenceState::Call(CallResult::Executed(Rc::new(serde_json::Value::String(String::from( let right_res = EvidenceState::Call(CallResult::Executed(Rc::new(serde_json::Value::String(String::from(

View File

@ -14,16 +14,8 @@
* limitations under the License. * limitations under the License.
*/ */
#![allow(clippy::all)]
use fluence::fce; use fluence::fce;
#[fce]
pub struct CallServiceResult {
pub ret_code: i32,
pub result: String,
}
const ADMIN_PEER_PK: &str = "12D3KooWEXNUbCXooUwHrHBbrmjsrpHXoEphPwbjQXEGyzbqKnE1"; const ADMIN_PEER_PK: &str = "12D3KooWEXNUbCXooUwHrHBbrmjsrpHXoEphPwbjQXEGyzbqKnE1";
fn main() {} fn main() {}
@ -34,8 +26,9 @@ struct AuthResult {
} }
#[fce] #[fce]
fn is_authorized(user_peer_pk: String) -> AuthResult { fn is_authorized() -> AuthResult {
let is_authorized = user_peer_pk == ADMIN_PEER_PK; let call_parameters = fluence::get_call_parameters();
let is_authorized = call_parameters.init_peer_id == ADMIN_PEER_PK;
AuthResult { AuthResult {
is_authorized: is_authorized.into(), is_authorized: is_authorized.into(),

View File

@ -16,16 +16,10 @@
use fluence::fce; use fluence::fce;
#[fce]
pub struct CallServiceResult {
pub ret_code: i32,
pub result: String,
}
fn main() {} fn main() {}
#[fce] #[fce]
fn delete(is_authorized: Vec<i32>, _record_id: String) -> String { fn delete(is_authorized: bool, _record_id: String) -> String {
let call_parameters = fluence::get_call_parameters(); let call_parameters = fluence::get_call_parameters();
let tetraplets = call_parameters.tetraplets; let tetraplets = call_parameters.tetraplets;
let tetraplet = &tetraplets[0]; let tetraplet = &tetraplets[0];
@ -34,8 +28,9 @@ fn delete(is_authorized: Vec<i32>, _record_id: String) -> String {
return String::from("invalid json path in tetraplet"); return String::from("invalid json path in tetraplet");
} }
match is_authorized[0] { if is_authorized {
1 => String::from("Ok"), String::from("Ok")
_ => String::from("not authorized"), } else {
String::from("not authorized")
} }
} }