mirror of
https://github.com/denoland/deno.git
synced 2025-08-01 17:42:32 +00:00
feat(npm): implement Node API (#13633)
This PR implements the NAPI for loading native modules into Deno. Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com> Co-authored-by: DjDeveloper <43033058+DjDeveloperr@users.noreply.github.com> Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
This commit is contained in:
parent
3a3a848406
commit
0b016a7fb8
55 changed files with 5299 additions and 2 deletions
38
test_napi/callback_test.js
Normal file
38
test_napi/callback_test.js
Normal file
|
@ -0,0 +1,38 @@
|
|||
// Copyright 2018-2022 the Deno authors. All rights reserved. MIT license.
|
||||
|
||||
import { assertEquals, loadTestLibrary } from "./common.js";
|
||||
|
||||
const callback = loadTestLibrary();
|
||||
|
||||
Deno.test("napi callback run with args", function () {
|
||||
const result = callback.test_callback_run((a, b) => a + b, [1, 2]);
|
||||
assertEquals(result, 3);
|
||||
});
|
||||
|
||||
Deno.test("napi callback run with args (no return)", function () {
|
||||
const result = callback.test_callback_run(() => {}, []);
|
||||
assertEquals(result, undefined);
|
||||
});
|
||||
|
||||
Deno.test("napi callback run with args (extra arguments)", function () {
|
||||
const result = callback.test_callback_run((a, b) => a + b, [
|
||||
"Hello,",
|
||||
" Deno!",
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
]);
|
||||
assertEquals(result, "Hello, Deno!");
|
||||
});
|
||||
|
||||
Deno.test("napi callback run with args & recv", function () {
|
||||
const result = callback.test_callback_run_with_recv(
|
||||
function () {
|
||||
assertEquals(this, 69);
|
||||
return this;
|
||||
},
|
||||
[],
|
||||
69,
|
||||
);
|
||||
assertEquals(result, 69);
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue