/* * Copyright 2020 Fluence Labs Limited * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #[cfg(target_arch = "wasm32")] use marine_rs_sdk::marine; #[cfg(target_arch = "wasm32")] use marine_rs_sdk::module_manifest; #[cfg(target_arch = "wasm32")] module_manifest!(); pub fn main() {} #[marine] #[cfg(target_arch = "wasm32")] pub fn call_parameters() -> String { let cp = marine_rs_sdk::get_call_parameters(); format!( "{}\n{}\n{}\n{}\n{}\n{:?}", cp.init_peer_id, cp.service_id, cp.service_creator_peer_id, cp.host_id, cp.particle_id, cp.tetraplets ) } #[cfg(test)] mod tests { use marine_rs_sdk_test::marine_test; use marine_rs_sdk_test::CallParameters; use marine_rs_sdk_test::SecurityTetraplet; #[marine_test(config_path = "../Config.toml", modules_dir = "../artifacts")] fn empty_string() { let init_peer_id = "init_peer_id"; let service_id = "service_id"; let service_creator_peer_id = "service_creator_peer_id"; let host_id = "host_id"; let particle_id = "particle_id"; let mut tetraplet = SecurityTetraplet::default(); tetraplet.function_name = "some_func_name".to_string(); tetraplet.json_path = "some_json_path".to_string(); let tetraplets = vec![vec![tetraplet]]; let cp = CallParameters { init_peer_id: init_peer_id.to_string(), service_id: service_id.to_string(), service_creator_peer_id: service_creator_peer_id.to_string(), host_id: host_id.to_string(), particle_id: particle_id.to_string(), tetraplets: tetraplets.clone(), }; let actual = call_parameters.call_parameters_cp(cp); let expected = format!( "{}\n{}\n{}\n{}\n{}\n{:?}", init_peer_id, service_id, service_creator_peer_id, host_id, particle_id, tetraplets ); assert_eq!(actual, expected); } }