run npm install to generate a package lock

This commit is contained in:
sashinexists
2024-12-07 13:18:31 +11:00
parent e7d08a91b5
commit 23437d228e
2501 changed files with 290663 additions and 0 deletions

View File

@@ -0,0 +1,35 @@
import assert from "node:assert";
import { describe, test } from "node:test";
import { DeepObjectTree, Tree } from "../../src/internal.js";
describe("DeepObjectTree", () => {
test("returns an ObjectTree for value that's a plain sub-object or sub-array", async () => {
const tree = createFixture();
const object = await tree.get("object");
assert.equal(object instanceof DeepObjectTree, true);
assert.deepEqual(await Tree.plain(object), { b: 2 });
assert.equal(object.parent, tree);
const array = await tree.get("array");
assert.equal(array instanceof DeepObjectTree, true);
assert.deepEqual(await Tree.plain(array), [3]);
assert.equal(array.parent, tree);
});
test("adds trailing slashes to keys for subtrees including plain objects or arrays", async () => {
const tree = createFixture();
const keys = Array.from(await tree.keys());
assert.deepEqual(keys, ["a", "object/", "array/"]);
});
});
function createFixture() {
return new DeepObjectTree({
a: 1,
object: {
b: 2,
},
array: [3],
});
}