name:
src/test/js/execution/ExecutorNamedRangeTest.ts
-rw-r--r--
2201
1import { NameException } from "../../../main/js/errors/NameException";
2import { ParseException } from "../../../main/js/errors/ParseException";
3import { describe, it, runner } from "../testutils/TestUtils";
4
5describe("Executor.execute - Named Range", function () {
6 it("should allow alpha-numeric characters, numbers, underscores, and periods", function () {
7 runner()
8 .addNamedRange("Super.Name_Here10Here..Stuff", "Alpha!A1:A1")
9 .addCell("Alpha", "A1", "= 10")
10 .addCell("Alpha", "A2", "= Super.Name_Here10Here..Stuff")
11 .addExpectedValue("Alpha", "A2", 10)
12 .run();
13 });
14
15 it("should have a max length of 255 characters", function () {
16 runner()
17 .addCell(
18 "Alpha",
19 "A1",
20 "= NamedRangeIsTooLongNamedRangeIsTooLongNamedRangeIsTooLongNamedRangeIsTooLong" +
21 "NamedRangeIsTooLongNamedRangeIsTooLongNamedRangeIsTooLongNamedRangeIsTooLongNamedRangeIsTooLong" +
22 "NamedRangeIsTooLongNamedRangeIsTooLongNamedRangeIsTooLongNamedRangeIsTooLongTooLongOk"
23 )
24 .addExpectedValue("Alpha", "A1", new ParseException())
25 .run();
26 runner()
27 .addNamedRange(
28 "NamedRangeIsAlmostTooLongNamedRangeIsAlmostTooLongNamedRangeIsAlmostTooLong" +
29 "NamedRangeIsAlmostTooLongNamedRangeIsAlmostTooLongNamedRangeIsAlmostTooLongNamedRangeIsAlmostTooLong" +
30 "NamedRangeIsAlmostTooLongNamedRangeIsAlmostTooLongNamedRangeIsAlmostTooLongABCDE",
31 "Alpha!A1:A1"
32 )
33 .addCell("Alpha", "A1", "= 10")
34 .addCell(
35 "Alpha",
36 "A2",
37 "= NamedRangeIsAlmostTooLongNamedRangeIsAlmostTooLongNamedRangeIsAlmostTooLong" +
38 "NamedRangeIsAlmostTooLongNamedRangeIsAlmostTooLongNamedRangeIsAlmostTooLongNamedRangeIsAlmostTooLong" +
39 "NamedRangeIsAlmostTooLongNamedRangeIsAlmostTooLongNamedRangeIsAlmostTooLongABCDE"
40 )
41 .addExpectedValue("Alpha", "A1", 10)
42 .addExpectedValue("Alpha", "A2", 10)
43 .run();
44 });
45
46 it("should return NAME exception when named range is not found", function () {
47 runner()
48 .addCell("Alpha", "A1", "= NotFoundRange")
49 .addExpectedValue("Alpha", "A1", new NameException())
50 .run();
51 });
52});