]>
git.kianting.info Git - uann/blob - index.ts
62da6f8be3d1028a96c91c5dbecd8a792f003f2c
2 let assert
= require("assert");
3 let tokenize
= require("../src/tokenize");
5 let a
= tokenize
.match1Char("我");
7 let example1
= a({matched
: "", remained
: "我的"});
8 assert(example1
._tag
== "Some");
9 assert(example1
.value
.matched
== "我");
10 assert(example1
.value
.remained
== "的");
12 let example2
= a({matched
: "", remained
: "妳的"});
13 assert(example2
._tag
== "None");
17 let thenDo
= tokenize
.thenDo
;
18 let orDo
= tokenize
.orDo
;
19 let zeroOrMoreDo
= tokenize
.zeroOrMoreDo
;
20 let notDo
= tokenize
.notDo
;
21 let matchAny
= tokenize
.matchAny
;
24 let compPart1
= tokenize
.match1Char("我");
25 let compPart2
= tokenize
.match1Char("的");
27 let doThenTestee1
= {_tag
: "Some",value
: {matched
: "", remained
: "我的貓"}};
28 let doTestRes1
= thenDo(thenDo(doThenTestee1
, compPart1
), compPart2
);
29 assert(doTestRes1
._tag
== "Some");
30 assert(doTestRes1
.value
.matched
== "我的");
31 assert(doTestRes1
.value
.remained
== "貓");
34 let doThenTestee2
= {_tag
: "Some",value
: {matched
: "", remained
: "我們"}};
35 let doTestRes2
= thenDo(thenDo(doThenTestee2
, compPart1
), compPart2
);
36 assert(doTestRes2
._tag
== "None");
38 let doThenTestee3
= {_tag
: "Some",value
: {matched
: "", remained
: "我的貓"}};
39 let doTestRes3
= thenDo(thenDo(doThenTestee3
, orDo(compPart1
, compPart2
)), compPart2
);
40 assert(doTestRes3
._tag
== "Some");
41 assert(doTestRes3
.value
.matched
== "我的");
42 assert(doTestRes3
.value
.remained
== "貓");
44 let doThenTestee4
= {_tag
: "Some",value
: {matched
: "", remained
: "的的貓"}};
45 let doTestRes4
= thenDo(thenDo(doThenTestee4
, orDo(compPart1
, compPart2
)), compPart2
);
46 assert(doTestRes4
._tag
== "Some");
47 assert(doTestRes4
.value
.matched
== "的的");
48 assert(doTestRes4
.value
.remained
== "貓");
50 let doThenTestee5
= {_tag
: "Some",value
: {matched
: "", remained
: "的貓"}};
51 let doTestRes5
= thenDo(thenDo(doThenTestee5
, zeroOrMoreDo(compPart1
)), compPart2
);
52 assert(doTestRes5
._tag
== "Some");
53 assert(doTestRes5
.value
.matched
== "的");
54 assert(doTestRes5
.value
.remained
== "貓");
56 let doThenTestee6
= {_tag
: "Some",value
: {matched
: "", remained
: "我我我的貓"}};
57 let doTestRes6
= thenDo(thenDo(doThenTestee6
, zeroOrMoreDo(compPart1
)), compPart2
);
58 assert(doTestRes6
._tag
== "Some");
59 assert(doTestRes6
.value
.matched
== "我我我的");
60 assert(doTestRes6
.value
.remained
== "貓");
62 let doThenTestee7
= {_tag
: "Some",value
: {matched
: "", remained
: "我的"}};
63 let doTestRes7
= thenDo(thenDo(doThenTestee7
, notDo(compPart1
)), compPart2
);
64 assert(doTestRes7
._tag
== "None");
66 let doThenTestee8
= {_tag
: "Some",value
: {matched
: "", remained
: "妳的"}};
67 let doTestRes8
= thenDo(thenDo(doThenTestee8
, notDo(compPart1
)), compPart2
);
68 assert(doTestRes8
._tag
== "Some");
69 assert(doTestRes8
.value
.matched
== "妳的");
71 let doThenTestee9
= {_tag
: "Some",value
: {matched
: "", remained
: "妳的"}};
72 let doTestRes9
= thenDo(doThenTestee9
, matchAny
);
73 assert(doTestRes9
._tag
== "Some");
74 assert(doTestRes9
.value
.matched
== "妳");
75 assert(doTestRes9
.value
.remained
== "的");
77 tokenize
.tokenize("+123");
78 tokenize
.tokenize("123");
79 tokenize
.tokenize("-123");
80 tokenize
.tokenize(" 123");
82 tokenize
.tokenize("c123");
88 tokenize
.tokenize(" ");
89 tokenize
.tokenize(" ");
90 tokenize
.tokenize(" \t");
91 tokenize
.tokenize(" \t123");
94 tokenize
.tokenize(" \t123aaa456");
100 tokenize
.tokenize(" \t123\n456");
102 tokenize
.tokenize("\"\"");
103 tokenize
.tokenize("\"123\"");
104 tokenize
.tokenize("\"1\\\"23\"");
105 tokenize
.tokenize("\"1\\\"23\" abc123");
107 tokenize
.tokenize("+0.012");
108 tokenize
.tokenize("0.0");
109 tokenize
.tokenize("-222.0");
110 tokenize
.tokenize("1+1 ==2; 3+8 foo(12)");
112 console
.log(tokenize
.tokenize("2+2"));
115 let harfbuzz
= require("../src/harfbuzz.js");
116 harfbuzz
.harfbuzzTest("123.abc");
119 let pdfManipulate
= require("../src/pdfManipulate.js");
120 pdfManipulate
.pdfGenerate("123.abc");
121 console
.log("/tmp/test.pdf產出ah");