2021-02-25 15:48:56 -06:00
|
|
|
/*
|
|
|
|
* 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")]
|
2021-06-13 13:33:26 -05:00
|
|
|
use fluence::marine;
|
|
|
|
#[cfg(target_arch = "wasm32")]
|
|
|
|
use fluence::module_manifest;
|
|
|
|
|
|
|
|
#[cfg(target_arch = "wasm32")]
|
|
|
|
module_manifest!();
|
2021-02-25 15:48:56 -06:00
|
|
|
|
|
|
|
pub fn main() {}
|
|
|
|
|
2021-06-13 13:33:26 -05:00
|
|
|
#[marine]
|
2021-02-25 15:48:56 -06:00
|
|
|
#[cfg(target_arch = "wasm32")]
|
|
|
|
pub fn call_parameters() -> String {
|
|
|
|
let cp = fluence::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
|
|
|
|
)
|
|
|
|
}
|
2021-06-13 13:33:26 -05:00
|
|
|
|
|
|
|
#[cfg(test)]
|
|
|
|
mod tests {
|
|
|
|
use fluence_test::marine_test;
|
|
|
|
use fluence_test::CallParameters;
|
|
|
|
use fluence_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);
|
|
|
|
}
|
|
|
|
}
|