diff options
author | Bartek IwaĆczuk <biwanczuk@gmail.com> | 2023-05-24 15:41:43 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-05-24 15:41:43 +0200 |
commit | e56695daa89b7c53a88a691f35ee9a498caffbdf (patch) | |
tree | 4d02b4422e50ec0bc0ec5b733923f64206d4abba /test_napi/make_callback_test.js | |
parent | 0bb5bbc7a0ff7565a4c7fa4ebc8c69e02f76e6b5 (diff) |
fix(napi): add napi_async_init and napi_async_destroy (#19234)
We don't have support for "AsyncContext" in "node:async_hooks"
module, so these two APIs are just noops.
Towards https://github.com/denoland/deno/issues/18610.
Diffstat (limited to 'test_napi/make_callback_test.js')
-rw-r--r-- | test_napi/make_callback_test.js | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/test_napi/make_callback_test.js b/test_napi/make_callback_test.js new file mode 100644 index 000000000..63ab18810 --- /dev/null +++ b/test_napi/make_callback_test.js @@ -0,0 +1,53 @@ +// Copyright 2018-2023 the Deno authors. All rights reserved. MIT license. + +import { assertEquals, loadTestLibrary } from "./common.js"; + +const mc = loadTestLibrary(); + +Deno.test("napi makeCallback1", function () { + const resource = {}; + + let callCount = 0; + function cb() { + callCount++; + assertEquals(arguments.length, 0); + assertEquals(this, globalThis); + return 42; + } + assertEquals(mc.makeCallback(resource, globalThis, cb), 42); + assertEquals(callCount, 1); +}); + +Deno.test("napi makeCallback2", function () { + const resource = {}; + + let callCount = 0; + function cb(x) { + callCount++; + assertEquals(arguments.length, 1); + assertEquals(this, globalThis); + assertEquals(x, 1337); + return 42; + } + assertEquals(mc.makeCallback(resource, globalThis, cb, 1337), 42); + assertEquals(callCount, 1); +}); + +Deno.test("napi makeCallback3", function () { + const resource = {}; + + let callCount = 0; + + function multiArgFunc(arg1, arg2, arg3) { + callCount++; + assertEquals(arg1, 1); + assertEquals(arg2, 2); + assertEquals(arg3, 3); + return 42; + } + assertEquals( + mc.makeCallback(resource, globalThis, multiArgFunc, 1, 2, 3), + 42, + ); + assertEquals(callCount, 1); +}); |