summaryrefslogtreecommitdiff
path: root/tests/napi/common.js
diff options
context:
space:
mode:
authorMatt Mastracci <matthew@mastracci.com>2024-02-12 13:46:50 -0700
committerGitHub <noreply@github.com>2024-02-12 13:46:50 -0700
commitf60720090c7bd8cdf91d7aebd0c42e01c86b3b83 (patch)
tree9becb7ff7e40d37769601fa049beccd101d58a98 /tests/napi/common.js
parentbd1358efab8ba7339a8e70034315fa7da840292e (diff)
chore: move test_ffi and test_nap to tests/ [WIP] (#22394)
Moving some additional NAPI and. FFI tests out of the tree root.
Diffstat (limited to 'tests/napi/common.js')
-rw-r--r--tests/napi/common.js28
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/napi/common.js b/tests/napi/common.js
new file mode 100644
index 000000000..3a4f253ef
--- /dev/null
+++ b/tests/napi/common.js
@@ -0,0 +1,28 @@
+// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
+
+export {
+ assert,
+ assertEquals,
+ assertRejects,
+ assertThrows,
+} from "@std/assert/mod.ts";
+export { fromFileUrl } from "@std/path/mod.ts";
+import process from "node:process";
+
+const targetDir = Deno.execPath().replace(/[^\/\\]+$/, "");
+export const [libPrefix, libSuffix] = {
+ darwin: ["lib", "dylib"],
+ linux: ["lib", "so"],
+ windows: ["", "dll"],
+}[Deno.build.os];
+
+export function loadTestLibrary() {
+ const specifier = `${targetDir}/${libPrefix}test_napi.${libSuffix}`;
+
+ // Internal, used in ext/node
+ const module = {};
+ // Pass some flag, it should be ignored, but make sure it doesn't print
+ // warnings.
+ process.dlopen(module, specifier, 0);
+ return module.exports;
+}