diff options
author | EuAndreh <eu@euandre.org> | 2023-11-16 16:09:05 -0300 |
---|---|---|
committer | EuAndreh <eu@euandre.org> | 2023-11-16 16:09:05 -0300 |
commit | 4eea08e81de0aa006434d7299397d60ecee9abd1 (patch) | |
tree | a1bf6820b97df30a8b457a787a1a91f51b98a587 /tests | |
parent | Add WIP non-async functions to napi-sqlite.c (diff) | |
download | papod-4eea08e81de0aa006434d7299397d60ecee9abd1.tar.gz papod-4eea08e81de0aa006434d7299397d60ecee9abd1.tar.xz |
tests/runner.js: Replace hand-rolled assert with "node:assert" module
Diffstat (limited to 'tests')
-rw-r--r-- | tests/js/utils.js | 90 | ||||
-rw-r--r-- | tests/runner.js | 11 |
2 files changed, 45 insertions, 56 deletions
diff --git a/tests/js/utils.js b/tests/js/utils.js index b86d8c2..670d89a 100644 --- a/tests/js/utils.js +++ b/tests/js/utils.js @@ -1,120 +1,120 @@ +const assert = require("node:assert"); + const { runTests } = require("../runner.js"); const { eq, keys } = require("../../src/utils.js"); const test_eq = t => { t.start("eq()"); t.test("scalar values equality", () => { - t.assert(eq(0, 0)); - t.assert(eq(100, 100)); - t.assert(eq(1.5, 1.5)); - t.assert(eq(-9, -9)); - - t.assert(!eq(0, 1)); - t.assert(!eq(100, 99)); - t.assert(!eq(1.5, 1.4)); - t.assert(!eq(-9, 9)); + assert(eq(0, 0)); + assert(eq(100, 100)); + assert(eq(1.5, 1.5)); + assert(eq(-9, -9)); + assert(!eq(0, 1)); + assert(!eq(100, 99)); + assert(!eq(1.5, 1.4)); + assert(!eq(-9, 9)); - t.assert(eq(null, null)); - t.assert(eq(undefined, undefined)); - t.assert(eq("", "")); - t.assert(eq("a string", "a string")); - t.assert(!eq(null, undefined)); - t.assert(!eq(undefined, 0)); - t.assert(!eq("", "0")); - t.assert(!eq("a string", "another string")); + assert(eq(null, null)); + assert(eq(undefined, undefined)); + assert(eq("", "")); + assert(eq("a string", "a string")); + assert(!eq(null, undefined)); + assert(!eq(undefined, 0)); + assert(!eq("", "0")); + assert(!eq("a string", "another string")); - t.assert(eq(true, true)); - t.assert(eq(false, false)); - t.assert(!eq(true, false)); + assert(eq(true, true)); + assert(eq(false, false)); + assert(!eq(true, false)); - t.assert(eq(1n, 1n)); - t.assert(eq(99999999999999n, 99999999999999n)); - // t.assert(eq(1, 1n)); + assert(eq(1n, 1n)); + assert(eq(99999999999999n, 99999999999999n)); }); t.test("array equality", () => { - t.assert(eq([], [])); + assert(eq([], [])); - t.assert(eq([0, 1, 2], [0, 1, 2])); - t.assert(eq([0, 1, 2], new Array(0, 1, 2))); + assert(eq([0, 1, 2], [0, 1, 2])); + assert(eq([0, 1, 2], new Array(0, 1, 2))); - t.assert(!eq([0, 1, 2], [0, 1])); - t.assert(!eq([0, 1], new Array(0, 1, 2))); + assert(!eq([0, 1, 2], [0, 1])); + assert(!eq([0, 1], new Array(0, 1, 2))); - t.assert(eq([undefined], [undefined])); - t.assert(eq([null, 0, "", true], [null, 0, "", true])); + assert(eq([undefined], [undefined])); + assert(eq([null, 0, "", true], [null, 0, "", true])); - t.assert(eq([[[[0]]]], [[[[0]]]])); + assert(eq([[[[0]]]], [[[[0]]]])); - t.assert(!eq([[[[0]]]], [0])); + assert(!eq([[[[0]]]], [0])); }); t.test("object equality", () => { - t.assert(eq({}, {})); - t.assert(eq({ a: 1 }, { a: 1 })); + assert(eq({}, {})); + assert(eq({ a: 1 }, { a: 1 })); - t.assert(!eq({ a: 1, b: undefined }, { a: 1 })); + assert(!eq({ a: 1, b: undefined }, { a: 1 })); - t.assert(eq( + assert(eq( { a: 1, b: { c: { d: "e" } } }, { a: 1, b: { c: { d: "e" } } }, )); class C {} - // ... + // ... FIXME: finish }); t.test("mixed values", () => { - t.assert(eq( + assert(eq( {a: ["", 1, 2, 3, [{ b: { c: [ "d", "e" ]}}]]}, {a: ["", 1, 2, 3, [{ b: { c: [ "d", "e" ]}}]]}, )); - t.assert(!eq(null, {})); + assert(!eq(null, {})); - t.assert(!eq([], {})); + assert(!eq([], {})); }); }; const test_keys = t => { t.start("keys()"); t.test("happy paths", () => { - t.assertEq( + assert.deepEqual( { a: 1, b: 2 }, keys(["a", "b"], { a: 1, b: 2, c: 3 }), ); }); t.test("stress scenarios", () => { - t.assertEq( + assert.deepEqual( {}, keys([], {}), "empty selection of empty object", ); - t.assertEq( + assert.deepEqual( {}, keys([], {a: 1}), "empty selection of non-empty object", ); - t.assertEq( + assert.deepEqual( {}, keys(["a"], {}), "non-empty selection of empty object", ); - t.assertEq( + assert.deepEqual( { a: undefined, b: null }, keys(["a", "b", "c"], { a: undefined, b: null }), "falsy values", diff --git a/tests/runner.js b/tests/runner.js index ca0c183..4772a28 100644 --- a/tests/runner.js +++ b/tests/runner.js @@ -23,17 +23,6 @@ const t = { throw e; } }, - assertEq: (expected, given, msg = "") => { - if (!eq(expected, given)) { - console.error("expected:", expected, "\ngiven: ", given); - throw new AssertionError(`${red(msg)}`); - } - }, - assert: (x, msg = "") => { - if (!x) { - throw new AssertionError(`${red(msg)}`); - } - }, }; const runTests = async tests => { |