From 60b68e63f1045a36496257912ef4f32e716a2440 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Elias=20Sj=C3=B6green?= Date: Mon, 20 Sep 2021 11:38:28 -0700 Subject: test(ext/ffi): add tests for different parameter and return types (#12158) --- test_ffi/tests/integration_tests.rs | 7 +++++++ test_ffi/tests/test.js | 18 ++++++++++++++++-- 2 files changed, 23 insertions(+), 2 deletions(-) (limited to 'test_ffi/tests') diff --git a/test_ffi/tests/integration_tests.rs b/test_ffi/tests/integration_tests.rs index 7aa8a0611..62b28d879 100644 --- a/test_ffi/tests/integration_tests.rs +++ b/test_ffi/tests/integration_tests.rs @@ -39,6 +39,13 @@ fn basic() { let expected = "\ something\n\ 579\n\ + 579\n\ + 579\n\ + 579\n\ + 579\n\ + 579\n\ + 579.9119873046875\n\ + 579.912\n\ Correct number of resources\n"; assert_eq!(stdout, expected); assert_eq!(stderr, ""); diff --git a/test_ffi/tests/test.js b/test_ffi/tests/test.js index a7b0aba6d..24b64722c 100644 --- a/test_ffi/tests/test.js +++ b/test_ffi/tests/test.js @@ -12,11 +12,25 @@ const libPath = `${targetDir}/${libPrefix}test_ffi.${libSuffix}`; const resourcesPre = Deno.resources(); const dylib = Deno.dlopen(libPath, { "print_something": { parameters: [], result: "void" }, - "add": { parameters: ["u32", "u32"], result: "u32" }, + "add_u32": { parameters: ["u32", "u32"], result: "u32" }, + "add_i32": { parameters: ["i32", "i32"], result: "i32" }, + "add_u64": { parameters: ["u64", "u64"], result: "u64" }, + "add_i64": { parameters: ["i64", "i64"], result: "i64" }, + "add_usize": { parameters: ["usize", "usize"], result: "usize" }, + "add_isize": { parameters: ["isize", "isize"], result: "isize" }, + "add_f32": { parameters: ["f32", "f32"], result: "f32" }, + "add_f64": { parameters: ["f64", "f64"], result: "f64" }, }); dylib.symbols.print_something(); -console.log(dylib.symbols.add(123, 456)); +console.log(dylib.symbols.add_u32(123, 456)); +console.log(dylib.symbols.add_i32(123, 456)); +console.log(dylib.symbols.add_u64(123, 456)); +console.log(dylib.symbols.add_i64(123, 456)); +console.log(dylib.symbols.add_usize(123, 456)); +console.log(dylib.symbols.add_isize(123, 456)); +console.log(dylib.symbols.add_f32(123.123, 456.789)); +console.log(dylib.symbols.add_f64(123.123, 456.789)); dylib.close(); const resourcesPost = Deno.resources(); -- cgit v1.2.3