mirror of
https://github.com/denoland/deno.git
synced 2024-11-22 15:06:54 -05:00
512d5337c4
This commit fixes problem with loading N-API modules that use the "old" way of registration (using "napi_module_register" API). The slot was not cleared after loading modules, causing subsequent calls that use the new way of registration (using "napi_register_module_v1" API) to try and load the previous module. Ref https://github.com/denoland/deno/issues/16460 --------- Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
27 lines
692 B
JavaScript
27 lines
692 B
JavaScript
// Copyright 2018-2023 the Deno authors. All rights reserved. MIT license.
|
|
|
|
export {
|
|
assert,
|
|
assertEquals,
|
|
assertRejects,
|
|
assertThrows,
|
|
} from "../test_util/std/testing/asserts.ts";
|
|
export { fromFileUrl } from "../test_util/std/path/mod.ts";
|
|
|
|
const targetDir = Deno.execPath().replace(/[^\/\\]+$/, "");
|
|
export const [libPrefix, libSuffix] = {
|
|
darwin: ["lib", "dylib"],
|
|
linux: ["lib", "so"],
|
|
windows: ["", "dll"],
|
|
}[Deno.build.os];
|
|
|
|
const ops = Deno[Deno.internal].core.ops;
|
|
|
|
export function loadTestLibrary() {
|
|
const specifier = `${targetDir}/${libPrefix}test_napi.${libSuffix}`;
|
|
|
|
// Internal, used in ext/node
|
|
return ops.op_napi_open(specifier, {
|
|
Buffer: {},
|
|
});
|
|
}
|