Files
sashinexists/node_modules/@weborigami/async-tree/test/operations/regExpKeys.test.js
2024-12-07 13:18:31 +11:00

26 lines
798 B
JavaScript

import assert from "node:assert";
import { describe, test } from "node:test";
import { DeepObjectTree, Tree } from "../../src/internal.js";
import regExpKeys from "../../src/operations/regExpKeys.js";
describe("regExpKeys", () => {
test("matches keys using regular expressions", async () => {
const fixture = await regExpKeys(
new DeepObjectTree({
a: true,
"b.*": true,
c: {
d: true,
"e*": true,
},
})
);
assert(await Tree.traverse(fixture, "a"));
assert(!(await Tree.traverse(fixture, "alice")));
assert(await Tree.traverse(fixture, "bob"));
assert(await Tree.traverse(fixture, "brenda"));
assert(await Tree.traverse(fixture, "c", "d"));
assert(await Tree.traverse(fixture, "c", "eee"));
});
});