1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 17:27:35 +00:00

Spreadsheet: Make Range(s).forEach() return Position objects

This commit is contained in:
u9g 2022-02-27 16:05:27 -05:00 committed by Ali Mohammad Pur
parent d047f26a74
commit 4eb2c70a03
3 changed files with 31 additions and 32 deletions

View file

@ -46,24 +46,32 @@ describe("Basic functions", () => {
expect(reduce).toBeDefined();
expect(reduce(acc => acc + 1, 0, [1, 2, 3, 4])).toEqual(4);
expect(reduce(acc => acc + 1, 0, [])).toEqual(0);
expect(reduce((acc, x) => acc + "|" + x.toString(), 0, R`A0:A2`)).toEqual("0|0|1|2");
expect(reduce((acc, x) => acc + "|" + x.toString(), 0, R`A0:A0`)).toEqual("0|0");
});
test("numericReduce", () => {
expect(numericReduce).toBeDefined();
expect(numericReduce(acc => acc + 1, 0, [1, 2, 3, 4])).toEqual(4);
expect(numericReduce(acc => acc + 1, 0, [])).toEqual(0);
expect(numericReduce((acc, x) => acc + x, 19, R`A0:A2`)).toEqual(22);
expect(numericReduce(acc => acc + 1, 3, R`A0:A0`)).toEqual(4);
});
test("numericResolve", () => {
expect(numericResolve).toBeDefined();
expect(numericResolve(["A0", "A1", "A2"])).toEqual([0, 1, 2]);
expect(numericResolve(["0", "1", "2"])).toEqual([0, 1, 2]);
expect(numericResolve([])).toEqual([]);
expect(numericResolve(R`A0:A2`)).toEqual([0, 1, 2]);
expect(numericResolve(R`A0:A0`)).toEqual([0]);
});
test("resolve", () => {
expect(resolve).toBeDefined();
expect(resolve(["A0", "A1", "A2"])).toEqual(["0", "1", "2"]);
expect(resolve(["A", "B", "C"])).toEqual(["A", "B", "C"]);
expect(resolve([])).toEqual([]);
expect(resolve(R`A0:A2`)).toEqual(["0", "1", "2"]);
expect(resolve(R`A0:A0`)).toEqual(["0"]);
});
});