diff options
Diffstat (limited to 'test_napi/promise_test.js')
-rw-r--r-- | test_napi/promise_test.js | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/test_napi/promise_test.js b/test_napi/promise_test.js new file mode 100644 index 000000000..86a3f134b --- /dev/null +++ b/test_napi/promise_test.js @@ -0,0 +1,34 @@ +// Copyright 2018-2022 the Deno authors. All rights reserved. MIT license. + +import { assertEquals, assertRejects, loadTestLibrary } from "./common.js"; + +const promise = loadTestLibrary(); + +Deno.test("napi new promise and resolve", async () => { + const p = promise.test_promise_new(); + promise.test_promise_resolve(69); + + assertEquals(await p, 69); +}); + +Deno.test("napi new promise and reject", () => { + const p = promise.test_promise_new(); + + assertRejects(async () => { + promise.test_promise_reject(new TypeError("pikaboo")); + await p; + }, TypeError); +}); + +Deno.test("napi new promise and reject", async () => { + const p = promise.test_promise_new(); + const is = promise.test_promise_is(p); + assertEquals(typeof is, "boolean"); + assertEquals(is, true); + + assertEquals(promise.test_promise_is(undefined), false); + assertEquals(promise.test_promise_is({}), false); + promise.test_promise_resolve(69); + + assertEquals(await p, 69); +}); |