diff --git a/build.rs b/build.rs index 7ddf4d8d..b8a7c775 100644 --- a/build.rs +++ b/build.rs @@ -2,4 +2,5 @@ fn main() { println!("cargo:rerun-if-changed=providers/javy_quickjs_provider_v1.wasm"); println!("cargo:rerun-if-changed=providers/javy_quickjs_provider_v2.wasm"); println!("cargo:rerun-if-changed=providers/javy_quickjs_provider_v3.wasm"); + println!("cargo:rerun-if-changed=providers/shopify_functions_javy_v1.wasm"); } diff --git a/providers/shopify_functions_javy_v1.wasm b/providers/shopify_functions_javy_v1.wasm new file mode 100644 index 00000000..3ed2218a Binary files /dev/null and b/providers/shopify_functions_javy_v1.wasm differ diff --git a/src/engine.rs b/src/engine.rs index 23912b62..e0596d73 100644 --- a/src/engine.rs +++ b/src/engine.rs @@ -291,6 +291,21 @@ mod tests { assert_eq!(function_run_result.unwrap().memory_usage, 1344); } + #[test] + fn test_js_functions_javy_v1() { + let input = include_bytes!("../tests/fixtures/input/js_function_input.json").to_vec(); + let function_run_result = run(FunctionRunParams { + function_path: Path::new("tests/fixtures/build/js_functions_javy_v1.wasm") + .to_path_buf(), + input, + export: DEFAULT_EXPORT, + ..Default::default() + }); + + assert!(function_run_result.is_ok()); + assert_eq!(function_run_result.unwrap().memory_usage, 1344); + } + #[test] fn test_exit_code_zero() { let function_run_result = run(FunctionRunParams { diff --git a/tests/fixtures/README.md b/tests/fixtures/README.md index 1001570e..afdc4b21 100644 --- a/tests/fixtures/README.md +++ b/tests/fixtures/README.md @@ -16,7 +16,6 @@ cargo wasi build --profile=wasm -p exit_code -p exports -p log_truncation_functi ``` **JS examples:** - js_function_v2.wasm: ``` javy compile -d -o tests/fixtures/build/js_function_v2.wasm tests/fixtures/js_function/src/functions.js @@ -27,6 +26,11 @@ js_function_v3.wasm: javy build -C dynamic -C plugin=providers/javy_quickjs_provider_v3.wasm -o tests/fixtures/build/js_function_v3.wasm tests/fixtures/js_function/src/functions.js ``` +js_functions_javy_v1.wasm: +``` +javy build -C dynamic -C plugin=providers/shopify_functions_javy_v1.wasm -o tests/fixtures/build/js_functions_javy_v1.wasm tests/fixtures/js_function/src/functions.js +``` + **`*.wat` examples:** ``` find tests/fixtures -maxdepth 1 -type f -name "*.wat" \ diff --git a/tests/fixtures/build/js_functions_javy_v1.wasm b/tests/fixtures/build/js_functions_javy_v1.wasm new file mode 100644 index 00000000..13a80694 Binary files /dev/null and b/tests/fixtures/build/js_functions_javy_v1.wasm differ