test dict

This commit is contained in:
Schluffe
2026-08-26 22:29:39 +02:00
parent 2384c4de1c
commit dbf3d933d8
+34 -3
View File
@@ -18,9 +18,6 @@ test("Dictionary", () => {
setEntrySave(dict, "bar", 0); setEntrySave(dict, "bar", 0);
deleteEntrySave(dict, "bar"); deleteEntrySave(dict, "bar");
console.table(dict.entries);
console.table(dict.indices);
expect(getEntry(dict, "foo")).toBe(42); expect(getEntry(dict, "foo")).toBe(42);
expect(getEntry(dict, "bar")).toBe(undefined); expect(getEntry(dict, "bar")).toBe(undefined);
expect(dict.indices.size).toBe(dict.entries.length); expect(dict.indices.size).toBe(dict.entries.length);
@@ -31,3 +28,37 @@ test("Dictionary", () => {
}); });
expect(sum).toBe(48); expect(sum).toBe(48);
}); });
test("Dictionary don't mutate, when used 'save', while iterating", () => {
const dict: Dictionary<string, number> = createDictionary([
["a", 1],
["b", 2],
["c", 3],
]);
let sum = 0;
forEntry(dict, (value, __, index) => {
if (index < 1) {
setEntrySave(dict, "d", 4);
setEntrySave(dict, "e", 5);
}
sum += value;
});
expect(sum).toBe(6);
expect(dict.indices.size === 5).toEqual(dict.entries.length === 5);
sum = 0;
forEntry(dict, (value, __, index) => {
if (index < 1) {
deleteEntrySave(dict, "d");
deleteEntrySave(dict, "e");
}
sum += value;
});
expect(sum).toBe(15);
expect(dict.indices.size === 3).toEqual(dict.entries.length === 3);
});