From b341fdde4ca3b5fd059b6ef9e43067c5b936d926 Mon Sep 17 00:00:00 2001 From: krisbitney Date: Tue, 18 Jul 2023 12:53:21 -0500 Subject: [PATCH] fixed wrap-rust test case 002-object-types --- .../cases/002-object-types/output/entry.rs | 6 ++++++ .../__tests__/cases/002-object-types/output/mod.rs | 13 +++++++++++++ .../cases/002-object-types/output/module/module.rs | 3 ++- .../cases/002-object-types/output/module/wrapped.rs | 9 +++++---- 4 files changed, 26 insertions(+), 5 deletions(-) diff --git a/implementations/wrap-rust/src/__tests__/cases/002-object-types/output/entry.rs b/implementations/wrap-rust/src/__tests__/cases/002-object-types/output/entry.rs index 640d46b3..fa5b9a6f 100644 --- a/implementations/wrap-rust/src/__tests__/cases/002-object-types/output/entry.rs +++ b/implementations/wrap-rust/src/__tests__/cases/002-object-types/output/entry.rs @@ -1,3 +1,6 @@ +use crate::{ + method_wrapped +}; use polywrap_wasm_rs::{ abort, invoke, @@ -13,6 +16,9 @@ pub extern "C" fn _wrap_invoke(method_size: u32, args_size: u32, env_size: u32) let result: Vec; match args.method.as_str() { + "method" => { + result = method_wrapped(args.args.as_slice(), env_size); + } _ => { invoke::wrap_invoke_error(format!("Could not find invoke function {}", args.method)); return false; diff --git a/implementations/wrap-rust/src/__tests__/cases/002-object-types/output/mod.rs b/implementations/wrap-rust/src/__tests__/cases/002-object-types/output/mod.rs index 6f9f9379..1f3d3f12 100644 --- a/implementations/wrap-rust/src/__tests__/cases/002-object-types/output/mod.rs +++ b/implementations/wrap-rust/src/__tests__/cases/002-object-types/output/mod.rs @@ -7,7 +7,20 @@ pub mod custom_map_value; pub use custom_map_value::CustomMapValue; pub mod _else; pub use _else::Else; +pub mod arg; +pub use arg::Arg; +pub mod nested; +pub use nested::Nested; +pub mod output; +pub use output::Output; +pub mod module; +pub use module::{ + Module, + ModuleTrait, + method_wrapped, + ArgsMethod +}; // Override print!(...) & println!(...) macros #[macro_export] diff --git a/implementations/wrap-rust/src/__tests__/cases/002-object-types/output/module/module.rs b/implementations/wrap-rust/src/__tests__/cases/002-object-types/output/module/module.rs index 765049d0..9a212678 100644 --- a/implementations/wrap-rust/src/__tests__/cases/002-object-types/output/module/module.rs +++ b/implementations/wrap-rust/src/__tests__/cases/002-object-types/output/module/module.rs @@ -9,9 +9,10 @@ use polywrap_wasm_rs::{ JSON }; use crate::{ - ArgsMethod + ArgsMethod, }; use crate::Arg; +use crate::Output; pub struct Module; diff --git a/implementations/wrap-rust/src/__tests__/cases/002-object-types/output/module/wrapped.rs b/implementations/wrap-rust/src/__tests__/cases/002-object-types/output/module/wrapped.rs index ad475095..e98b5a62 100644 --- a/implementations/wrap-rust/src/__tests__/cases/002-object-types/output/module/wrapped.rs +++ b/implementations/wrap-rust/src/__tests__/cases/002-object-types/output/module/wrapped.rs @@ -14,17 +14,18 @@ use polywrap_wasm_rs::{ }; use crate::module::{ModuleTrait, Module}; use crate::Arg; +use crate::Output; #[derive(Clone, Debug, Deserialize, Serialize)] pub struct ArgsMethod { - pub arg: Arg + pub arg: Arg, } pub fn method_wrapped(args: &[u8], env_size: u32) -> Vec { match from_slice::(args) { Ok(args) => { - let result = Module::method1(ArgsMethod { - arg: args.arg + let result = Module::method(ArgsMethod { + arg: args.arg, }); match result { Ok(res) => { @@ -39,4 +40,4 @@ pub fn method_wrapped(args: &[u8], env_size: u32) -> Vec { panic!("{}", e.to_string()) } } -} \ No newline at end of file +}