/[suikacvs]/markup/html/whatpm/t/css-token-1.test
Suika

Contents of /markup/html/whatpm/t/css-token-1.test

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.9 - (show annotations) (download)
Sat Sep 8 16:43:52 2007 UTC (18 years, 5 months ago) by wakaba
Branch: MAIN
Changes since 1.8: +165 -1 lines
++ whatpm/t/ChangeLog	8 Sep 2007 16:43:37 -0000
	* css-token-1.test: Test cases for one-char tokens, |COMMENT|,
	and |COMMENT_INVALID| are added.

2007-09-09  Wakaba  <wakaba@suika.fam.cx>

1 {"tests": [
2 {"description": "empty",
3 "input": "",
4 "output": []},
5
6 {"description": "length=1 IDENT (lowercase)",
7 "input": "a",
8 "output": [["IDENT", "a"]]},
9
10 {"description": "length=1 IDENT (uppercase)",
11 "input": "A",
12 "output": [["IDENT", "A"]]},
13
14 {"description": "length=2 IDENT (uppercase)",
15 "input": "AB",
16 "output": [["IDENT", "AB"]]},
17
18 {"description": "length=2 IDENT (lowercase)",
19 "input": "ab",
20 "output": [["IDENT", "ab"]]},
21
22 {"description": "\\",
23 "input": "\\",
24 "output": [["DELIM", "\\"]]},
25
26 {"description": "IDENT started by escape 1",
27 "input": "\\41",
28 "output": [["IDENT", "A"]]},
29
30 {"description": "IDENT started by escape 2",
31 "input": "\\041",
32 "output": [["IDENT", "A"]]},
33
34 {"description": "IDENT started by escape 3",
35 "input": "\\0041",
36 "output": [["IDENT", "A"]]},
37
38 {"description": "IDENT started by escape 4",
39 "input": "\\00041",
40 "output": [["IDENT", "A"]]},
41
42 {"description": "IDENT started by escape 5",
43 "input": "\\000041",
44 "output": [["IDENT", "A"]]},
45
46 {"description": "IDENT started by escape 6",
47 "input": "\\0000041",
48 "output": [["IDENT", "\u00041"]]},
49
50 {"description": "IDENT started by escape 7",
51 "input": "\\00000041",
52 "output": [["IDENT", "\u000041"]]},
53
54 {"description": "IDENT started by escape followed by a space 1",
55 "input": "\\41 ",
56 "output": [["IDENT", "A"]]},
57
58 {"description": "IDENT started by escape followed by a space 2",
59 "input": "\\41 a",
60 "output": [["IDENT", "Aa"]]},
61
62 {"description": "IDENT started by escape followed by a space 3",
63 "input": "\\41\u0009a",
64 "output": [["IDENT", "Aa"]]},
65
66 {"description": "IDENT started by escape followed by a space 4",
67 "input": "\\000041 ",
68 "output": [["IDENT", "A"]]},
69
70 {"description": "IDENT started by escape followed by a space 5",
71 "input": "\\000041\u000D\u000A",
72 "output": [["IDENT", "A"]]},
73
74 {"description": "\\\u000D",
75 "input": "\\\u000D",
76 "output": [["DELIM", "\\"], ["S"]]},
77
78 {"description": "\\\u000D\u000A",
79 "input": "\\\u000D\u000A",
80 "output": [["DELIM", "\\"], ["S"]]},
81
82 {"description": "\\\u000D\\\u000A",
83 "input": "\\\u000D\\\u000A",
84 "output": [["DELIM", "\\"], ["S"], ["DELIM", "\\"], ["S"]]},
85
86 {"description": "\\\u000C",
87 "input": "\\\u000C",
88 "output": [["DELIM", "\\"], ["S"]]},
89
90 {"description": "\\\u000A",
91 "input": "\\\u000A",
92 "output": [["DELIM", "\\"], ["S"]]},
93
94 {"description": "\\ ",
95 "input": "\\ ",
96 "output": [["IDENT", " "]]},
97
98 {"description": "\\\\",
99 "input": "\\\\",
100 "output": [["IDENT", "\\"]]},
101
102 {"description": "\\\\\\",
103 "input": "\\\\\\",
104 "output": [["IDENT", "\\"], ["DELIM", "\\"]]},
105
106 {"description": "\\\u0009",
107 "input": "\\\u0009",
108 "output": [["IDENT", "\u0009"]]},
109
110 {"description": "\\X",
111 "input": "\\X",
112 "output": [["IDENT", "X"]]},
113
114 {"description": "a\\",
115 "input": "a\\",
116 "output": [["IDENT", "a"], ["DELIM", "\\"]]},
117
118 {"description": "a\\f1",
119 "input": "a\\f1",
120 "output": [["IDENT", "a\u00f1"]]},
121
122 {"description": "a\\F1",
123 "input": "a\\F1",
124 "output": [["IDENT", "a\u00f1"]]},
125
126 {"description": "a\\0f1",
127 "input": "a\\0f1",
128 "output": [["IDENT", "a\u00f1"]]},
129
130 {"description": "a\\0F1",
131 "input": "a\\0F1",
132 "output": [["IDENT", "a\u00f1"]]},
133
134 {"description": "a\\41",
135 "input": "a\\41",
136 "output": [["IDENT", "aA"]]},
137
138 {"description": "a\\41 b",
139 "input": "a\\41 b",
140 "output": [["IDENT", "aAb"]]},
141
142 {"description": "a\\41\u0009X",
143 "input": "a\\41\u0009X",
144 "output": [["IDENT", "aAX"]]},
145
146 {"description": "a\\4e00",
147 "input": "a\\4e00",
148 "output": [["IDENT", "a\u4e00"]]},
149
150 {"description": "a\\41 X",
151 "input": "a\\41 X",
152 "output": [["IDENT", "aA"], ["S"], ["IDENT", "X"]]},
153
154 {"description": "a\\ ",
155 "input": "a\\ ",
156 "output": [["IDENT", "a "]]},
157
158 {"description": "a\\ b",
159 "input": "a\\ b",
160 "output": [["IDENT", "a b"]]},
161
162 {"description": "a\\\\b",
163 "input": "a\\\\b",
164 "output": [["IDENT", "a\\b"]]},
165
166 {"description": "a\\\u0009b",
167 "input": "a\\\u0009b",
168 "output": [["IDENT", "a\u0009b"]]},
169
170 {"description": "a\\GB",
171 "input": "a\\GB",
172 "output": [["IDENT", "aGB"]]},
173
174 {"description": "a\\\u000D",
175 "input": "a\\\u000D",
176 "output": [["IDENT", "a"], ["DELIM", "\\"], ["S"]]},
177
178 {"description": "a\\\u000A",
179 "input": "a\\\u000A",
180 "output": [["IDENT", "a"], ["DELIM", "\\"], ["S"]]},
181
182 {"description": "a\\\u000D\u000A",
183 "input": "a\\\u000D\u000A",
184 "output": [["IDENT", "a"], ["DELIM", "\\"], ["S"]]},
185
186 {"description": "a\\\u000D\\\u000A",
187 "input": "a\\\u000D\\\u000A",
188 "output": [["IDENT", "a"], ["DELIM", "\\"], ["S"], ["DELIM", "\\"], ["S"]]},
189
190 {"description": "a\\\u000C",
191 "input": "a\\\u000C",
192 "output": [["IDENT", "a"], ["DELIM", "\\"], ["S"]]},
193
194 {"description": "-",
195 "input": "-",
196 "output": [["DELIM", "-"]]},
197
198 {"description": "\\-",
199 "input": "\\-",
200 "output": [["IDENT", "-"]]},
201
202 {"description": "-i",
203 "input": "-i",
204 "output": [["IDENT", "-i"]]},
205
206 {"description": "\\-i",
207 "input": "\\-i",
208 "output": [["IDENT", "-i"]]},
209
210 {"description": "-ident",
211 "input": "-ident",
212 "output": [["IDENT", "-ident"]]},
213
214 {"description": "\\-ident",
215 "input": "\\-ident",
216 "output": [["IDENT", "-ident"]]},
217
218 {"description": "-ident-ident",
219 "input": "-ident-ident",
220 "output": [["IDENT", "-ident-ident"]]},
221
222 {"description": "\\-ident-ident",
223 "input": "\\-ident-ident",
224 "output": [["IDENT", "-ident-ident"]]},
225
226 {"description": "-1",
227 "input": "-1",
228 "output": [["DELIM", "-"], ["NUMBER", "1"]]},
229
230 {"description": "\\-1",
231 "input": "\\-1",
232 "output": [["IDENT", "-1"]]},
233
234 {"description": "-1a",
235 "input": "-1a",
236 "output": [["DELIM", "-"], ["DIMENSION", "1", "a"]]},
237
238 {"description": "\\-1a",
239 "input": "\\-1a",
240 "output": [["IDENT", "-1a"]]},
241
242 {"description": "-\\31",
243 "input": "-\\31",
244 "output": [["IDENT", "-1"]]},
245
246 {"description": "\\-\\31",
247 "input": "\\-\\31",
248 "output": [["IDENT", "-1"]]},
249
250 {"description": "-\\41",
251 "input": "-\\41",
252 "output": [["IDENT", "-A"]]},
253
254 {"description": "\\-\\41",
255 "input": "\\-\\41",
256 "output": [["IDENT", "-A"]]},
257
258 {"description": "-\\\u000D",
259 "input": "-\\\u000D",
260 "output": [["DELIM", "-"], ["DELIM", "\\"], ["S"]]},
261
262 {"description": "\\-\\\u000D",
263 "input": "\\-\\\u000D",
264 "output": [["IDENT", "-"], ["DELIM", "\\"], ["S"]]},
265
266 {"description": "\u4e00",
267 "input": "\u4e00",
268 "output": [["IDENT", "\u4e00"]]},
269
270 {"description": "a\u4e00b",
271 "input": "a\u4e00b",
272 "output": [["IDENT", "a\u4e00b"]]},
273
274 {"description": "@",
275 "input": "@",
276 "output": [["DELIM", "@"]]},
277
278 {"description": "@a",
279 "input": "@a",
280 "output": [["ATKEYWORD", "a"]]},
281
282 {"description": "@A",
283 "input": "@A",
284 "output": [["ATKEYWORD", "A"]]},
285
286 {"description": "@abc",
287 "input": "@abc",
288 "output": [["ATKEYWORD", "abc"]]},
289
290 {"description": "@-",
291 "input": "@-",
292 "output": [["DELIM", "@"], ["DELIM", "-"]]},
293
294 {"description": "@\\-",
295 "input": "@\\-",
296 "output": [["ATKEYWORD", "-"]]},
297
298 {"description": "@-a",
299 "input": "@-a",
300 "output": [["ATKEYWORD", "-a"]]},
301
302 {"description": "@\\-a",
303 "input": "@\\-a",
304 "output": [["ATKEYWORD", "-a"]]},
305
306 {"description": "@1",
307 "input": "@1",
308 "output": [["DELIM", "@"], ["NUMBER", "1"]]},
309
310 {"description": "@\\1",
311 "input": "@\\1",
312 "output": [["ATKEYWORD", "\u0001"]]},
313
314 {"description": "@-1",
315 "input": "@-1",
316 "output": [["DELIM", "@"], ["DELIM", "-"], ["NUMBER", "1"]]},
317
318 {"description": "@--",
319 "input": "@--",
320 "output": [["DELIM", "@"], ["DELIM", "-"], ["DELIM", "-"]]},
321
322 {"description": "@--1",
323 "input": "@--1",
324 "output": [["DELIM", "@"], ["DELIM", "-"], ["DELIM", "-"], ["NUMBER", "1"]]},
325
326 {"description": "@--a",
327 "input": "@--a",
328 "output": [["DELIM", "@"], ["DELIM", "-"], ["IDENT", "-a"]]},
329
330 {"description": "@-\\-a",
331 "input": "@-\\-a",
332 "output": [["ATKEYWORD", "--a"]]},
333
334 {"description": "@-->",
335 "input": "@-->",
336 "output": [["DELIM", "@"], ["CDC"]]},
337
338 {"description": "@--->",
339 "input": "@--->",
340 "output": [["DELIM", "@"], ["DELIM", "-"], ["CDC"]]},
341
342 {"description": "@\\41",
343 "input": "@\\41",
344 "output": [["ATKEYWORD", "A"]]},
345
346 {"description": "@\\61 b",
347 "input": "@\\61 b",
348 "output": [["ATKEYWORD", "ab"]]},
349
350 {"description": "@\\61 b",
351 "input": "@\\61 b",
352 "output": [["ATKEYWORD", "a"], ["S"], ["IDENT", "b"]]},
353
354 {"description": "@a\\41",
355 "input": "@aA",
356 "output": [["ATKEYWORD", "aA"]]},
357
358 {"description": "@a\\4e00X",
359 "input": "@a\\4e00X",
360 "output": [["ATKEYWORD", "a\u4e00X"]]},
361
362 {"description": "\"",
363 "input": "\"",
364 "output": [["INVALID", ""]]},
365
366 {"description": "'",
367 "input": "'",
368 "output": [["INVALID", ""]]},
369
370 {"description": "\"\"",
371 "input": "\"\"",
372 "output": [["STRING", ""]]},
373
374 {"description": "''",
375 "input": "''",
376 "output": [["STRING", ""]]},
377
378 {"description": "\"a",
379 "input": "\"a",
380 "output": [["INVALID", "a"]]},
381
382 {"description": "'a",
383 "input": "'a",
384 "output": [["INVALID", "a"]]},
385
386 {"description": "'a'",
387 "input": "'a'",
388 "output": [["STRING", "a"]]},
389
390 {"description": "\"a\"",
391 "input": "\"a\"",
392 "output": [["STRING", "a"]]},
393
394 {"description": "'a'",
395 "input": "'a'",
396 "output": [["STRING", "a"]]},
397
398 {"description": "\"a'",
399 "input": "\"a'",
400 "output": [["INVALID", "a'"]]},
401
402 {"description": "'a\"",
403 "input": "'a\"",
404 "output": [["INVALID", "a\""]]},
405
406 {"description": "\"A",
407 "input": "\"A",
408 "output": [["INVALID", "A"]]},
409
410 {"description": "'A",
411 "input": "'A",
412 "output": [["INVALID", "A"]]},
413
414 {"description": "\"A\"",
415 "input": "\"A\"",
416 "output": [["STRING", "A"]]},
417
418 {"description": "'A'",
419 "input": "'A'",
420 "output": [["STRING", "A"]]},
421
422 {"description": "\"A'",
423 "input": "\"A'",
424 "output": [["INVALID", "A'"]]},
425
426 {"description": "'A\"",
427 "input": "'A\"",
428 "output": [["INVALID", "A\""]]},
429
430 {"description": "\"abc",
431 "input": "\"abc",
432 "output": [["INVALID", "abc"]]},
433
434 {"description": "'abc",
435 "input": "'abc",
436 "output": [["INVALID", "abc"]]},
437
438 {"description": "\"abc\"",
439 "input": "\"abc\"",
440 "output": [["STRING", "abc"]]},
441
442 {"description": "'abc'",
443 "input": "'abc'",
444 "output": [["STRING", "abc"]]},
445
446 {"description": "\"a\\",
447 "input": "\"a\\",
448 "output": [["INVALID", "a"], ["DELIM", "\\"]]},
449
450 {"description": "'a\\",
451 "input": "'a\\",
452 "output": [["INVALID", "a"], ["DELIM", "\\"]]},
453
454 {"description": "\"\\",
455 "input": "\"\\",
456 "output": [["INVALID", ""], ["DELIM", "\\"]]},
457
458 {"description": "'\\",
459 "input": "'\\",
460 "output": [["INVALID", ""], ["DELIM", "\\"]]},
461
462 {"description": "\"a\\\"",
463 "input": "\"a\\\"",
464 "output": [["INVALID", "a\""]]},
465
466 {"description": "'a\\\"",
467 "input": "'a\\\"",
468 "output": [["INVALID", "a\""]]},
469
470 {"description": "'a\\'",
471 "input": "'a\\'",
472 "output": [["INVALID", "a'"]]},
473
474 {"description": "\"\\\"",
475 "input": "\"\\\"",
476 "output": [["INVALID", "\""]]},
477
478 {"description": "'\\\"",
479 "input": "'\\\"",
480 "output": [["INVALID", "\""]]},
481
482 {"description": "'\\'",
483 "input": "'\\'",
484 "output": [["INVALID", "'"]]},
485
486 {"description": "'\\\\\"",
487 "input": "'\\\\\"",
488 "output": [["INVALID", "\\\""]]},
489
490 {"description": "\"a\\'",
491 "input": "\"a\\'",
492 "output": [["INVALID", "a'"]]},
493
494 {"description": "\"a\\x",
495 "input": "\"a\\x",
496 "output": [["INVALID", "ax"]]},
497
498 {"description": "\"\\x",
499 "input": "\"\\x",
500 "output": [["INVALID", "x"]]},
501
502 {"description": "'\\x",
503 "input": "'\\x",
504 "output": [["INVALID", "x"]]},
505
506 {"description": "\"a\\x\"",
507 "input": "\"a\\x\"",
508 "output": [["STRING", "ax"]]},
509
510 {"description": "\"\\x \"",
511 "input": "\"\\x \"",
512 "output": [["STRING", "x "]]},
513
514 {"description": "\"a\\x \"",
515 "input": "\"a\\x \"",
516 "output": [["STRING", "ax "]]},
517
518 {"description": "\"\\31",
519 "input": "\"\\31",
520 "output": [["INVALID", "1"]]},
521
522 {"description": "\"a\\31",
523 "input": "\"a\\31",
524 "output": [["INVALID", "a1"]]},
525
526 {"description": "'a\\31",
527 "input": "'a\\31",
528 "output": [["INVALID", "a1"]]},
529
530 {"description": "\"\\31\"",
531 "input": "\"\\31\"",
532 "output": [["STRING", "1"]]},
533
534 {"description": "'\\31'",
535 "input": "'\\31'",
536 "output": [["STRING", "1"]]},
537
538 {"description": "\"a\\31\"",
539 "input": "\"a\\31\"",
540 "output": [["STRING", "a1"]]},
541
542 {"description": "\"\\31 ",
543 "input": "\"\\31 ",
544 "output": [["INVALID", "1"]]},
545
546 {"description": "\"a\\31 ",
547 "input": "\"a\\31 ",
548 "output": [["INVALID", "a1"]]},
549
550 {"description": "\"a\\31 \"",
551 "input": "\"a\\31 \"",
552 "output": [["STRING", "a1"]]},
553
554 {"description": "\"\\\u000D",
555 "input": "\"\\\u000D",
556 "output": [["INVALID", "\u000D"]]},
557
558 {"description": "'\\\u000D",
559 "input": "'\\\u000D",
560 "output": [["INVALID", "\u000D"]]},
561
562 {"description": "\"a\\\u000D",
563 "input": "\"a\\\u000D",
564 "output": [["INVALID", "a\u000D"]]},
565
566 {"description": "\"a\\\u000D\"",
567 "input": "\"a\\\u000D\"",
568 "output": [["STRING", "a\u000D"]]},
569
570 {"description": "'a\\\u000D'",
571 "input": "'a\\\u000D'",
572 "output": [["STRING", "a\u000D"]]},
573
574 {"description": "\"a\\\u000D\u000A",
575 "input": "\"a\\\u000D\u000A",
576 "output": [["INVALID", "a\u000D\u000A"]]},
577
578 {"description": "\"a\\\u000D\u000A\"",
579 "input": "\"a\\\u000D\u000A\"",
580 "output": [["STRING", "a\u000D\u000A"]]},
581
582 {"description": "\"a\\\u000D\\\u000A",
583 "input": "\"a\\\u000D\\\u000A",
584 "output": [["INVALID", "a\u000D\u000A"]]},
585
586 {"description": "'a\\\u000D\\\u000A",
587 "input": "'a\\\u000D\\\u000A",
588 "output": [["INVALID", "a\u000D\u000A"]]},
589
590 {"description": "\"a\\\u000D\\\u000A\"",
591 "input": "\"a\\\u000D\\\u000A\"",
592 "output": [["STRING", "a\u000D\u000A"]]},
593
594 {"description": "\"a\\\u000A",
595 "input": "\"a\\\u000A",
596 "output": [["INVALID", "a\u000A"]]},
597
598 {"description": "\"a\\\u000A\"",
599 "input": "\"a\\\u000A\"",
600 "output": [["STRING", "a\u000A"]]},
601
602 {"description": "'a\\\u000A'",
603 "input": "'a\\\u000A'",
604 "output": [["STRING", "a\u000A"]]},
605
606 {"description": "\"a\\\u000C",
607 "input": "\"a\\\u000C",
608 "output": [["INVALID", "a\u000C"]]},
609
610 {"description": "\"a\\\u000C\"",
611 "input": "\"a\\\u000C\"",
612 "output": [["STRING", "a\u000C"]]},
613
614 {"description": "'a\\\u000C'",
615 "input": "'a\\\u000C'",
616 "output": [["STRING", "a\u000C"]]},
617
618 {"description": "\"a\\\u000Daa",
619 "input": "\"a\\\u000Daa",
620 "output": [["INVALID", "a\u000Daa"]]},
621
622 {"description": "\"a\\\u000D\u000Ab",
623 "input": "\"a\\\u000D\u000Ab",
624 "output": [["INVALID", "a\u000D\u000Ab"]]},
625
626 {"description": "'a\\\u000D\u000Ab",
627 "input": "'a\\\u000D\u000Ab",
628 "output": [["INVALID", "a\u000D\u000Ab"]]},
629
630 {"description": "'\u000d'",
631 "input": "'\u000d'",
632 "output": [["INVALID", ""], ["S"], ["INVALID", ""]]},
633
634 {"description": "\"\u000d\"",
635 "input": "\"\u000d\"",
636 "output": [["INVALID", ""], ["S"], ["INVALID", ""]]},
637
638 {"description": "'\u000d\u000a'",
639 "input": "'\u000d\u000a'",
640 "output": [["INVALID", ""], ["S"], ["INVALID", ""]]},
641
642 {"description": "\"\u000d\u000a\"",
643 "input": "\"\u000d\u000a\"",
644 "output": [["INVALID", ""], ["S"], ["INVALID", ""]]},
645
646 {"description": "'\u000a'",
647 "input": "'\u000a'",
648 "output": [["INVALID", ""], ["S"], ["INVALID", ""]]},
649
650 {"description": "\"\u000a\"",
651 "input": "\"\u000a\"",
652 "output": [["INVALID", ""], ["S"], ["INVALID", ""]]},
653
654 {"description": "'\u000c'",
655 "input": "'\u000c'",
656 "output": [["INVALID", ""], ["S"], ["INVALID", ""]]},
657
658 {"description": "\"\u000c\"",
659 "input": "\"\u000c\"",
660 "output": [["INVALID", ""], ["S"], ["INVALID", ""]]},
661
662 {"description": "#",
663 "input": "#",
664 "output": [["DELIM", "#"]]},
665
666 {"description": "\\#",
667 "input": "\\#",
668 "output": [["IDENT", "#"]]},
669
670 {"description": "#a",
671 "input": "#a",
672 "output": [["HASH", "a"]]},
673
674 {"description": "#A",
675 "input": "#A",
676 "output": [["HASH", "A"]]},
677
678 {"description": "##",
679 "input": "##",
680 "output": [["DELIM", "#"], ["DELIM", "#"]]},
681
682 {"description": "#\\#",
683 "input": "#\\#",
684 "output": [["HASH", "#"]]},
685
686 {"description": "#\\X",
687 "input": "#\\X",
688 "output": [["HASH", "X"]]},
689
690 {"description": "#\\a",
691 "input": "#\\a",
692 "output": [["HASH", "\u000a"]]},
693
694 {"description": "#\\-",
695 "input": "#\\-",
696 "output": [["HASH", "-"]]},
697
698 {"description": "#_",
699 "input": "#_",
700 "output": [["HASH", "_"]]},
701
702 {"description": "#0",
703 "input": "#0",
704 "output": [["HASH", "0"]]},
705
706 {"description": "#123456",
707 "input": "#123456",
708 "output": [["HASH", "123456"]]},
709
710 {"description": "#abc",
711 "input": "#abc",
712 "output": [["HASH", "abc"]]},
713
714 {"description": "#\\4e00XYZ",
715 "input": "#\\4e00XYZ",
716 "output": [["HASH", "\u4e00XYZ"]]},
717
718 {"description": "#\u4e00",
719 "input": "#\u4e00",
720 "output": [["HASH", "\u4e00"]]},
721
722 {"description": "#a\\100",
723 "input": "#a\\100",
724 "output": [["HASH", "a\u0100"]]},
725
726 {"description": "#1234567890",
727 "input": "#1234567890",
728 "output": [["HASH", "1234567890"]]},
729
730 {"description": "#1a",
731 "input": "#1a",
732 "output": [["HASH", "1a"]]},
733
734 {"description": "#\\a b",
735 "input": "#\\a b",
736 "output": [["HASH", "\u000ab"]]},
737
738 {"description": "#!",
739 "input": "#!",
740 "output": [["DELIM", "#"], ["DELIM", "!"]]},
741
742 {"description": "#-",
743 "input": "#-",
744 "output": [["HASH", "-"]]},
745
746 {"description": "#--",
747 "input": "#--",
748 "output": [["HASH", "--"]]},
749
750 {"description": "#-->",
751 "input": "#-->",
752 "output": [["HASH", "--"], ["GREATER"]]},
753
754 {"description": "0",
755 "input": "0",
756 "output": [["NUMBER", "0"]]},
757
758 {"description": "1",
759 "input": "1",
760 "output": [["NUMBER", "1"]]},
761
762 {"description": "111",
763 "input": "111",
764 "output": [["NUMBER", "111"]]},
765
766 {"description": "0001",
767 "input": "0001",
768 "output": [["NUMBER", "0001"]]},
769
770 {"description": "1e",
771 "input": "1e",
772 "output": [["DIMENSION", "1", "e"]]},
773
774 {"description": "1e4",
775 "input": "1e4",
776 "output": [["DIMENSION", "1", "e4"]]},
777
778 {"description": "1n+2",
779 "input": "1n+2",
780 "output": [["DIMENSION", "1", "n"], ["PLUS"], ["NUMBER", "2"]]},
781
782 {"description": "0.",
783 "input": "0.",
784 "output": [["NUMBER", "0"], ["DELIM", "."]]},
785
786 {"description": "1.",
787 "input": "1.",
788 "output": [["NUMBER", "1"], ["DELIM", "."]]},
789
790 {"description": "144.",
791 "input": "144.",
792 "output": [["NUMBER", "144"], ["DELIM", "."]]},
793
794 {"description": "0.1",
795 "input": "0.1",
796 "output": [["NUMBER", "0.1"]]},
797
798 {"description": "1.1",
799 "input": "1.1",
800 "output": [["NUMBER", "1.1"]]},
801
802 {"description": "0.1000",
803 "input": "0.1000",
804 "output": [["NUMBER", "0.1000"]]},
805
806 {"description": "0.0001",
807 "input": "0.0001",
808 "output": [["NUMBER", "0.0001"]]},
809
810 {"description": ".",
811 "input": ".",
812 "output": [["DELIM", "."]]},
813
814 {"description": ".1",
815 "input": ".1",
816 "output": [["NUMBER", "0.1"]]},
817
818 {"description": ".0",
819 "input": ".0",
820 "output": [["NUMBER", "0.0"]]},
821
822 {"description": ".1234",
823 "input": ".1234",
824 "output": [["NUMBER", "0.1234"]]},
825
826 {"description": ".1ab",
827 "input": ".1ab",
828 "output": [["DIMENSION", "0.1", "ab"]]},
829
830 {"description": ".1.2",
831 "input": ".1.2",
832 "output": [["NUMBER", "0.1"], ["NUMBER", "0.2"]]},
833
834 {"description": ".a",
835 "input": ".a",
836 "output": [["DELIM", "."], ["IDENT", "a"]]},
837
838 {"description": "3.11.66",
839 "input": "3.11.66",
840 "output": [["NUMBER", "3.11"], ["NUMBER", "0.66"]]},
841
842 {"description": "..",
843 "input": "..",
844 "output": [["DELIM", "."], ["DELIM", "."]]},
845
846 {"description": "...",
847 "input": "...",
848 "output": [["DELIM", "."], ["DELIM", "."], ["DELIM", "."]]},
849
850 {"description": "...1",
851 "input": "...1",
852 "output": [["DELIM", "."], ["DELIM", "."], ["NUMBER", "0.1"]]},
853
854 {"description": "...a",
855 "input": "...a",
856 "output": [["DELIM", "."], ["DELIM", "."], ["DELIM", "."], ["IDENT", "a"]]},
857
858 {"description": "+0",
859 "input": "+0",
860 "output": [["PLUS"], ["NUMBER", "0"]]},
861
862 {"description": "+1",
863 "input": "+1",
864 "output": [["PLUS"], ["NUMBER", "1"]]},
865
866 {"description": "+1.15",
867 "input": "+1.15",
868 "output": [["PLUS"], ["NUMBER", "1.15"]]},
869
870 {"description": "-.55",
871 "input": "-.55",
872 "output": [["DELIM", "-"], ["NUMBER", "0.55"]]},
873
874 {"description": "-0",
875 "input": "-0",
876 "output": [["DELIM", "-"], ["NUMBER", "0"]]},
877
878 {"description": "-0.2",
879 "input": "-0.2",
880 "output": [["DELIM", "-"], ["NUMBER", "0.2"]]},
881
882 {"description": "-.1",
883 "input": "-.1",
884 "output": [["DELIM", "-"], ["NUMBER", "0.1"]]},
885
886 {"description": "+-0",
887 "input": "+-0",
888 "output": [["PLUS"], ["DELIM", "-"], ["NUMBER", "0"]]},
889
890 {"description": "a-0",
891 "input": "a-0",
892 "output": [["IDENT", "a-0"]]},
893
894 {"description": "@a-0",
895 "input": "@a-0",
896 "output": [["ATKEYWORD", "a-0"]]},
897
898 {"description": "#a-0",
899 "input": "#a-0",
900 "output": [["HASH", "a-0"]]},
901
902 {"description": "<!-0",
903 "input": "<!-0",
904 "output": [["DELIM", "<"], ["DELIM", "!"], ["DELIM", "-"], ["NUMBER", "0"]]},
905
906 {"description": "<!--0",
907 "input": "<!--0",
908 "output": [["CDO"], ["NUMBER", "0"]]},
909
910 {"description": "<!---0",
911 "input": "<!---0",
912 "output": [["CDO"], ["DELIM", "-"], ["NUMBER", "0"]]},
913
914 {"description": "0a",
915 "input": "0a",
916 "output": [["DIMENSION", "0", "a"]]},
917
918 {"description": "1a",
919 "input": "1a",
920 "output": [["DIMENSION", "1", "a"]]},
921
922 {"description": "0A",
923 "input": "0A",
924 "output": [["DIMENSION", "0", "A"]]},
925
926 {"description": "00a",
927 "input": "00a",
928 "output": [["DIMENSION", "00", "a"]]},
929
930 {"description": "11a",
931 "input": "11a",
932 "output": [["DIMENSION", "11", "a"]]},
933
934 {"description": "0ab",
935 "input": "0ab",
936 "output": [["DIMENSION", "0", "ab"]]},
937
938 {"description": "0aB",
939 "input": "0aB",
940 "output": [["DIMENSION", "0", "aB"]]},
941
942 {"description": "0.1a",
943 "input": "0.1a",
944 "output": [["DIMENSION", "0.1", "a"]]},
945
946 {"description": "0.a",
947 "input": "0.a",
948 "output": [["NUMBER", "0"], ["DELIM", "."], ["IDENT", "a"]]},
949
950 {"description": ".0a",
951 "input": ".0a",
952 "output": [["DIMENSION", "0.0", "a"]]},
953
954 {"description": "0\\X",
955 "input": "0\\X",
956 "output": [["DIMENSION", "0", "X"]]},
957
958 {"description": "0\\Xa",
959 "input": "0\\Xa",
960 "output": [["DIMENSION", "0", "Xa"]]},
961
962 {"description": "0\\.1",
963 "input": "0\\.1",
964 "output": [["DIMENSION", "0", ".1"]]},
965
966 {"description": "0.\\1",
967 "input": "0.\\1",
968 "output": [["NUMBER", "0"], ["DELIM", "."], ["IDENT", "\u0001"]]},
969
970 {"description": "0a\\X",
971 "input": "0a\\X",
972 "output": [["DIMENSION", "0", "aX"]]},
973
974 {"description": "0a\\Xa",
975 "input": "0a\\Xa",
976 "output": [["DIMENSION", "0", "aXa"]]},
977
978 {"description": "0\\a",
979 "input": "0\\a",
980 "output": [["DIMENSION", "0", "\u000a"]]},
981
982 {"description": "0\\4e00",
983 "input": "0\\4e00",
984 "output": [["DIMENSION", "0", "\u4e00"]]},
985
986 {"description": "0a\\a",
987 "input": "0a\\a",
988 "output": [["DIMENSION", "0", "a\u000a"]]},
989
990 {"description": "0a\\100 b",
991 "input": "0a\\100 b",
992 "output": [["DIMENSION", "0", "a\u0100b"]]},
993
994 {"description": "0\\\u000d",
995 "input": "0\\\u000d",
996 "output": [["NUMBER", "0"], ["DELIM", "\\"], ["S"]]},
997
998 {"description": "0\\\u000a",
999 "input": "0\\\u000a",
1000 "output": [["NUMBER", "0"], ["DELIM", "\\"], ["S"]]},
1001
1002 {"description": "0\\\u000d\u000a",
1003 "input": "0\\\u000d\u000a",
1004 "output": [["NUMBER", "0"], ["DELIM", "\\"], ["S"]]},
1005
1006 {"description": "0\\\u000c",
1007 "input": "0\\\u000c",
1008 "output": [["NUMBER", "0"], ["DELIM", "\\"], ["S"]]},
1009
1010 {"description": "0a\\\u000d",
1011 "input": "0a\\\u000d",
1012 "output": [["DIMENSION", "0", "a"], ["DELIM", "\\"], ["S"]]},
1013
1014 {"description": "0a\\\u000a",
1015 "input": "0a\\\u000a",
1016 "output": [["DIMENSION", "0", "a"], ["DELIM", "\\"], ["S"]]},
1017
1018 {"description": "0a\\\u000d\u000a",
1019 "input": "0a\\\u000d\u000a",
1020 "output": [["DIMENSION", "0", "a"], ["DELIM", "\\"], ["S"]]},
1021
1022 {"description": "0a\\\u000c",
1023 "input": "0a\\\u000c",
1024 "output": [["DIMENSION", "0", "a"], ["DELIM", "\\"], ["S"]]},
1025
1026 {"description": "0a12",
1027 "input": "0a12",
1028 "output": [["DIMENSION", "0", "a12"]]},
1029
1030 {"description": "0a_b-c",
1031 "input": "0a_b-c",
1032 "output": [["DIMENSION", "0", "a_b-c"]]},
1033
1034 {"description": "0a---",
1035 "input": "0a---",
1036 "output": [["DIMENSION", "0", "a---"]]},
1037
1038 {"description": "0a-->",
1039 "input": "0a-->",
1040 "output": [["DIMENSION", "0", "a--"], ["GREATER"]]},
1041
1042 {"description": "0a/**/-->",
1043 "input": "0a/**/-->",
1044 "output": [["DIMENSION", "0", "a"], ["CDC"]]},
1045
1046 {"description": "0/**/a",
1047 "input": "0/**/a",
1048 "output": [["NUMBER", "0"], ["IDENT", "a"]]},
1049
1050 {"description": "0-",
1051 "input": "0-",
1052 "output": [["NUMBER", "0"], ["DELIM", "-"]]},
1053
1054 {"description": "0.0-",
1055 "input": "0.0-",
1056 "output": [["NUMBER", "0.0"], ["DELIM", "-"]]},
1057
1058 {"description": "0\\-",
1059 "input": "0\\-",
1060 "output": [["DIMENSION", "0", "-"]]},
1061
1062 {"description": "0-a",
1063 "input": "0-a",
1064 "output": [["DIMENSION", "0", "-a"]]},
1065
1066 {"description": "0.0-a",
1067 "input": "0.0-a",
1068 "output": [["DIMENSION", "0.0", "-a"]]},
1069
1070 {"description": "0-abc",
1071 "input": "0-abc",
1072 "output": [["DIMENSION", "0", "-abc"]]},
1073
1074 {"description": "0-\\",
1075 "input": "0-\\",
1076 "output": [["NUMBER", "0"], ["DELIM", "-"], ["DELIM", "\\"]]},
1077
1078 {"description": "0-\\9",
1079 "input": "0-\\9",
1080 "output": [["DIMENSION", "0", "-\u0009"]]},
1081
1082 {"description": "0-\\9x",
1083 "input": "0-\\9x",
1084 "output": [["DIMENSION", "0", "-\u0009x"]]},
1085
1086 {"description": "0-\\9 b",
1087 "input": "0-\\9 b",
1088 "output": [["DIMENSION", "0", "-\u0009b"]]},
1089
1090 {"description": "0-a\\9",
1091 "input": "0-a\\9",
1092 "output": [["DIMENSION", "0", "-a\u0009"]]},
1093
1094 {"description": "0-a\\9 b",
1095 "input": "0-a\\9 b",
1096 "output": [["DIMENSION", "0", "-a\u0009b"]]},
1097
1098 {"description": "0-\\x",
1099 "input": "0-\\x",
1100 "output": [["DIMENSION", "0", "-x"]]},
1101
1102 {"description": "0-\\\u000d",
1103 "input": "0-\\\u000d",
1104 "output": [["NUMBER", "0"], ["DELIM", "-"], ["DELIM", "\\"], ["S"]]},
1105
1106 {"description": "0-\\\u000d\u000a",
1107 "input": "0-\\\u000d\u000a",
1108 "output": [["NUMBER", "0"], ["DELIM", "-"], ["DELIM", "\\"], ["S"]]},
1109
1110 {"description": "0-\\\u000a",
1111 "input": "0-\\\u000a",
1112 "output": [["NUMBER", "0"], ["DELIM", "-"], ["DELIM", "\\"], ["S"]]},
1113
1114 {"description": "0-\\\u000c",
1115 "input": "0-\\\u000c",
1116 "output": [["NUMBER", "0"], ["DELIM", "-"], ["DELIM", "\\"], ["S"]]},
1117
1118 {"description": "0--",
1119 "input": "0--",
1120 "output": [["NUMBER", "0"], ["DELIM", "-"], ["DELIM", "-"]]},
1121
1122 {"description": "0-->",
1123 "input": "0-->",
1124 "output": [["NUMBER", "0"], ["CDC"]]},
1125
1126 {"description": "0-a--",
1127 "input": "0-a--",
1128 "output": [["DIMENSION", "0", "-a--"]]},
1129
1130 {"description": "0-a-->",
1131 "input": "0-a-->",
1132 "output": [["DIMENSION", "0", "-a--"], ["GREATER"]]},
1133
1134 {"description": "0%",
1135 "input": "0%",
1136 "output": [["PERCENTAGE", "0"]]},
1137
1138 {"description": "0\\%",
1139 "input": "0\\%",
1140 "output": [["DIMENSION", "0", "%"]]},
1141
1142 {"description": "0.0%",
1143 "input": "0.0%",
1144 "output": [["PERCENTAGE", "0.0"]]},
1145
1146 {"description": "0.0\\%",
1147 "input": "0.0\\%",
1148 "output": [["DIMENSION", "0.0", "%"]]},
1149
1150 {"description": ".0%",
1151 "input": ".0%",
1152 "output": [["PERCENTAGE", "0.0"]]},
1153
1154 {"description": ".0\\%",
1155 "input": ".0\\%",
1156 "output": [["DIMENSION", "0.0", "%"]]},
1157
1158 {"description": "0%a",
1159 "input": "0%a",
1160 "output": [["PERCENTAGE", "0"], ["IDENT", "a"]]},
1161
1162 {"description": "0\\%a",
1163 "input": "0\\%a",
1164 "output": [["DIMENSION", "0", "%a"]]},
1165
1166 {"description": "120%",
1167 "input": "120%",
1168 "output": [["PERCENTAGE", "120"]]},
1169
1170 {"description": "120\\%",
1171 "input": "120\\%",
1172 "output": [["DIMENSION", "120", "%"]]},
1173
1174 {"description": "0.%",
1175 "input": "0.%",
1176 "output": [["NUMBER", "0"], ["DELIM", "."], ["DELIM", "%"]]},
1177
1178 {"description": "0.\\%",
1179 "input": "0.\\%",
1180 "output": [["NUMBER", "0"], ["DELIM", "."], ["IDENT", "%"]]},
1181
1182 {"description": "u",
1183 "input": "u",
1184 "output": [["IDENT", "u"]]},
1185
1186 {"description": "U",
1187 "input": "U",
1188 "output": [["IDENT", "U"]]},
1189
1190 {"description": "\\u",
1191 "input": "\\u",
1192 "output": [["IDENT", "u"]]},
1193
1194 {"description": "ur",
1195 "input": "ur",
1196 "output": [["IDENT", "ur"]]},
1197
1198 {"description": "url",
1199 "input": "url",
1200 "output": [["IDENT", "url"]]},
1201
1202 {"description": "url(",
1203 "input": "url(",
1204 "output": [["URI_INVALID"]]},
1205
1206 {"description": "uRl(",
1207 "input": "uRl(",
1208 "output": [["URI_INVALID"]]},
1209
1210 {"description": "ur\\l(",
1211 "input": "ur\\l(",
1212 "output": [["URI_INVALID"]]},
1213
1214 {"description": "url\\(",
1215 "input": "url\\(",
1216 "output": [["IDENT", "url("]]},
1217
1218 {"description": "url()",
1219 "input": "url()",
1220 "output": [["URI", ""]]},
1221
1222 {"description": "url( )",
1223 "input": "url( )",
1224 "output": [["URI", ""]]},
1225
1226 {"description": "url( )",
1227 "input": "url( )",
1228 "output": [["URI", ""]]},
1229
1230 {"description": "url(\u0009)",
1231 "input": "url(\u0009)",
1232 "output": [["URI", ""]]},
1233
1234 {"description": "url(a)",
1235 "input": "url(a)",
1236 "output": [["URI", "a"]]},
1237
1238 {"description": "url(abcde)",
1239 "input": "url(abcde)",
1240 "output": [["URI", "abcde"]]},
1241
1242 {"description": "url( a)",
1243 "input": "url( a)",
1244 "output": [["URI", "a"]]},
1245
1246 {"description": "url(a )",
1247 "input": "url(a )",
1248 "output": [["URI", "a"]]},
1249
1250 {"description": "url( a )",
1251 "input": "url( a )",
1252 "output": [["URI", "a"]]},
1253
1254 {"description": "url( /**/a)",
1255 "input": "url( /**/a)",
1256 "output": [["URI", "/**/a"]]},
1257
1258 {"description": "url( /**/ a)",
1259 "input": "url( /**/ a)",
1260 "output": [["URI_INVALID"]]},
1261
1262 {"description": "url(a b)",
1263 "input": "url(a b)",
1264 "output": [["URI_INVALID"]]},
1265
1266 {"description": "url())",
1267 "input": "url())",
1268 "output": [["URI", ""], ["RPAREN"]]},
1269
1270 {"description": "url(()",
1271 "input": "url(()",
1272 "output": [["URI_INVALID"]]},
1273
1274 {"description": "url(\u0001)",
1275 "input": "url(\u0001)",
1276 "output": [["URI_INVALID"]]},
1277
1278 {"description": "url(\u4e00)",
1279 "input": "url(\u4e00)",
1280 "output": [["URI", "\u4e00"]]},
1281
1282 {"description": "url(\u000d)",
1283 "input": "url(\u000d)",
1284 "output": [["URI", ""]]},
1285
1286 {"description": "url(\u000a)",
1287 "input": "url(\u000a)",
1288 "output": [["URI", ""]]},
1289
1290 {"description": "url(\u000d\u000a)",
1291 "input": "url(\u000d\u000a)",
1292 "output": [["URI", ""]]},
1293
1294 {"description": "url(\u000c)",
1295 "input": "url(\u000c)",
1296 "output": [["URI", ""]]},
1297
1298 {"description": "url(\u000b)",
1299 "input": "url(\u000b)",
1300 "output": [["URI_INVALID"]]},
1301
1302 {"description": "url(ad)",
1303 "input": "url(ad)",
1304 "output": [["URI", "ad"]]},
1305
1306 {"description": "url(a )",
1307 "input": "url(a )",
1308 "output": [["URI", "a"]]},
1309
1310 {"description": "url(a\u000d)",
1311 "input": "url(a\u000d)",
1312 "output": [["URI", "a"]]},
1313
1314 {"description": "url(a\u000a)",
1315 "input": "url(a\u000a)",
1316 "output": [["URI", "a"]]},
1317
1318 {"description": "url(a()",
1319 "input": "url(a()",
1320 "output": [["URI_INVALID"]]},
1321
1322 {"description": "url(a))",
1323 "input": "url(a))",
1324 "output": [["URI", "a"], ["RPAREN"]]},
1325
1326 {"description": "url(a\u4e00)",
1327 "input": "url(a\u4e00)",
1328 "output": [["URI", "a\u4e00"]]},
1329
1330 {"description": "url(\\)",
1331 "input": "url(\\)",
1332 "output": [["URI_INVALID"]]},
1333
1334 {"description": "url(a\\)",
1335 "input": "url(a\\)",
1336 "output": [["URI_INVALID"]]},
1337
1338 {"description": "url(\\x)",
1339 "input": "url(\\x)",
1340 "output": [["URI", "x"]]},
1341
1342 {"description": "url(a\\x)",
1343 "input": "url(a\\x)",
1344 "output": [["URI", "ax"]]},
1345
1346 {"description": "url(\\xyz)",
1347 "input": "url(\\xyz)",
1348 "output": [["URI", "xyz"]]},
1349
1350 {"description": "url(a\\xyz)",
1351 "input": "url(a\\xyz)",
1352 "output": [["URI", "axyz"]]},
1353
1354 {"description": "url(\\x yz)",
1355 "input": "url(\\x yz)",
1356 "output": [["URI_INVALID"]]},
1357
1358 {"description": "url(a\\x yz)",
1359 "input": "url(a\\x yz)",
1360 "output": [["URI_INVALID"]]},
1361
1362 {"description": "url(\\a)",
1363 "input": "url(\\a)",
1364 "output": [["URI", "\u000a"]]},
1365
1366 {"description": "url(\\a )",
1367 "input": "url(\\a )",
1368 "output": [["URI", "\u000a"]]},
1369
1370 {"description": "url(a\\a )",
1371 "input": "url(a\\a )",
1372 "output": [["URI", "a\u000a"]]},
1373
1374 {"description": "url(\\a b)",
1375 "input": "url(\\a b)",
1376 "output": [["URI", "\u000ab"]]},
1377
1378 {"description": "url(\\a b)",
1379 "input": "url(\\a b)",
1380 "output": [["URI_INVALID"]]},
1381
1382 {"description": "url(a\\a b)",
1383 "input": "url(a\\a b)",
1384 "output": [["URI_INVALID"]]},
1385
1386 {"description": "url(\\\u000d)",
1387 "input": "url(\\\u000d)",
1388 "output": [["URI_INVALID"]]},
1389
1390 {"description": "url(a\\\u000d)",
1391 "input": "url(a\\\u000d)",
1392 "output": [["URI_INVALID"]]},
1393
1394 {"description": "url(\\\u000a)",
1395 "input": "url(\\\u000a)",
1396 "output": [["URI_INVALID"]]},
1397
1398 {"description": "url(a\\\u000a)",
1399 "input": "url(a\\\u000a)",
1400 "output": [["URI_INVALID"]]},
1401
1402 {"description": "url(\\\u000d\u000a)",
1403 "input": "url(\\\u000d\u000a)",
1404 "output": [["URI_INVALID"]]},
1405
1406 {"description": "url(a\\\u000d\u000a)",
1407 "input": "url(a\\\u000d\u000a)",
1408 "output": [["URI_INVALID"]]},
1409
1410 {"description": "url(\\\u000c)",
1411 "input": "url(\\\u000c)",
1412 "output": [["URI_INVALID"]]},
1413
1414 {"description": "url(a\\\u000c)",
1415 "input": "url(a\\\u000c)",
1416 "output": [["URI_INVALID"]]},
1417
1418 {"description": "url(\\\u0001)",
1419 "input": "url(\\\u0001)",
1420 "output": [["URI", "\u0001"]]},
1421
1422 {"description": "url(a\\\u0001)",
1423 "input": "url(a\\\u0001)",
1424 "output": [["URI", "a\u0001"]]},
1425
1426 {"description": "url(\\4e00)",
1427 "input": "url(\\4e00)",
1428 "output": [["URI", "\u4e00"]]},
1429
1430 {"description": "url(a\\4e00)",
1431 "input": "url(a\\4e00)",
1432 "output": [["URI", "a\u4e00"]]},
1433
1434 {"description": "url(\\\u0028)",
1435 "input": "url(\\\u0028)",
1436 "output": [["URI", "("]]},
1437
1438 {"description": "url(a\\\u0028)",
1439 "input": "url(a\\\u0028)",
1440 "output": [["URI", "a("]]},
1441
1442 {"description": "url(\\\u0029)",
1443 "input": "url(\\\u0029)",
1444 "output": [["URI", ")"]]},
1445
1446 {"description": "url(a\\\u0029)",
1447 "input": "url(a\\\u0029)",
1448 "output": [["URI", "a)"]]},
1449
1450 {"description": "url(a\\(b\\)c)",
1451 "input": "url(a\\(b\\)c)",
1452 "output": [["URI", "a(b)c"]]},
1453
1454 {"description": "url(\\\\)",
1455 "input": "url(\\\\)",
1456 "output": [["URI", "\\"]]},
1457
1458 {"description": "url(a\\\\)",
1459 "input": "url(a\\\\)",
1460 "output": [["URI", "a\\"]]},
1461
1462 {"description": "url(a\\\\b)",
1463 "input": "url(a\\\\b)",
1464 "output": [["URI", "a\\b"]]},
1465
1466 {"description": "url(a b\\)c)",
1467 "input": "url(a b\\c)",
1468 "output": [["URI_INVALID"]]},
1469
1470 {"description": "url(a \"b)c\")",
1471 "input": "url(a \"b)c\")",
1472 "output": [["URI_INVALID"], ["IDENT", "c"], ["INVALID", ")"]]},
1473
1474 {"description": "url(\"",
1475 "input": "url(\"",
1476 "output": [["URI_INVALID"]]},
1477
1478 {"description": "url('",
1479 "input": "url('",
1480 "output": [["URI_INVALID"]]},
1481
1482 {"description": "url(\")",
1483 "input": "url(\")",
1484 "output": [["URI_INVALID"]]},
1485
1486 {"description": "url(')",
1487 "input": "url(')",
1488 "output": [["URI_INVALID"]]},
1489
1490 {"description": "url(\"\"",
1491 "input": "url(\"\"",
1492 "output": [["URI_INVALID"]]},
1493
1494 {"description": "url(\"'",
1495 "input": "url(\"'",
1496 "output": [["URI_INVALID"]]},
1497
1498 {"description": "url(''",
1499 "input": "url(''",
1500 "output": [["URI_INVALID"]]},
1501
1502 {"description": "url('\"",
1503 "input": "url('\"",
1504 "output": [["URI_INVALID"]]},
1505
1506 {"description": "url(\"\")",
1507 "input": "url(\"\")",
1508 "output": [["URI", ""]]},
1509
1510 {"description": "url(\"')",
1511 "input": "url(\"')",
1512 "output": [["URI_INVALID"]]},
1513
1514 {"description": "url('\")",
1515 "input": "url('\")",
1516 "output": [["URI_INVALID"]]},
1517
1518 {"description": "url('a')",
1519 "input": "url('a')",
1520 "output": [["URI", "a"]]},
1521
1522 {"description": "url(\"a\")",
1523 "input": "url(\"a\")",
1524 "output": [["URI", "a"]]},
1525
1526 {"description": "url('abcde')",
1527 "input": "url('abcde')",
1528 "output": [["URI", "abcde"]]},
1529
1530 {"description": "url(\"abcde\")",
1531 "input": "url(\"abcde\")",
1532 "output": [["URI", "abcde"]]},
1533
1534 {"description": "url( 'abcde')",
1535 "input": "url( 'abcde')",
1536 "output": [["URI", "abcde"]]},
1537
1538 {"description": "url( \"abcde\")",
1539 "input": "url( \"abcde\")",
1540 "output": [["URI", "abcde"]]},
1541
1542 {"description": "url('abcde' )",
1543 "input": "url('abcde' )",
1544 "output": [["URI", "abcde"]]},
1545
1546 {"description": "url(\"abcde\" )",
1547 "input": "url(\"abcde\" )",
1548 "output": [["URI", "abcde"]]},
1549
1550 {"description": "url( '\\'abcde')",
1551 "input": "url( '\\'abcde')",
1552 "output": [["URI", "'abcde"]]},
1553
1554 {"description": "url( \"\\'abcde\")",
1555 "input": "url( \"\\'abcde\")",
1556 "output": [["URI", "'abcde"]]},
1557
1558 {"description": "url( '\\\"abcde')",
1559 "input": "url( '\\\"abcde')",
1560 "output": [["URI", "\"abcde"]]},
1561
1562 {"description": "url( \"\\\"abcde\")",
1563 "input": "url( \"\\\"abcde\")",
1564 "output": [["URI", "\"abcde"]]},
1565
1566 {"description": "url( 'x\\'abcde')",
1567 "input": "url( 'x\\'abcde')",
1568 "output": [["URI", "x'abcde"]]},
1569
1570 {"description": "url( \"x\\'abcde\")",
1571 "input": "url( \"x\\'abcde\")",
1572 "output": [["URI", "x'abcde"]]},
1573
1574 {"description": "url( 'x\\\"abcde')",
1575 "input": "url( 'x\\\"abcde')",
1576 "output": [["URI", "x\"abcde"]]},
1577
1578 {"description": "url( \"x\\\"abcde\")",
1579 "input": "url( \"x\\\"abcde\")",
1580 "output": [["URI", "x\"abcde"]]},
1581
1582 {"description": "url( 'a(bcd)e')",
1583 "input": "url( 'a(bcd)e')",
1584 "output": [["URI", "a(bcd)e"]]},
1585
1586 {"description": "url( \"a(bcd)e\")",
1587 "input": "url( \"a(bcd)e\")",
1588 "output": [["URI", "a(bcd)e"]]},
1589
1590 {"description": "url( 'a(bcde')",
1591 "input": "url( 'a(bcde')",
1592 "output": [["URI", "a(bcde"]]},
1593
1594 {"description": "url( \"a(bcde\")",
1595 "input": "url( \"a(bcde\")",
1596 "output": [["URI", "a(bcde"]]},
1597
1598 {"description": "url( 'abcd)e')",
1599 "input": "url( 'abcd)e')",
1600 "output": [["URI", "abcd)e"]]},
1601
1602 {"description": "url( \"abcd)e\")",
1603 "input": "url( \"abcd)e\")",
1604 "output": [["URI", "abcd)e"]]},
1605
1606 {"description": "url( '\\a(bcd)e')",
1607 "input": "url( '\\a(bcd)e')",
1608 "output": [["URI", "\u000a(bcd)e"]]},
1609
1610 {"description": "url( \"\\a(bcd)e\")",
1611 "input": "url( \"\\a(bcd)e\")",
1612 "output": [["URI", "\u000a(bcd)e"]]},
1613
1614 {"description": "url( '\\a (bcd)e')",
1615 "input": "url( '\\a (bcd)e')",
1616 "output": [["URI", "\u000a(bcd)e"]]},
1617
1618 {"description": "url( \"\\a (bcd)e\")",
1619 "input": "url( \"\\a (bcd)e\")",
1620 "output": [["URI", "\u000a(bcd)e"]]},
1621
1622 {"description": "url( '\\Xa(bcd)e')",
1623 "input": "url( '\\Xa(bcd)e')",
1624 "output": [["URI", "Xa(bcd)e"]]},
1625
1626 {"description": "url( \"\\Xa(bcd)e\")",
1627 "input": "url( \"\\Xa(bcd)e\")",
1628 "output": [["URI", "Xa(bcd)e"]]},
1629
1630 {"description": "url( 'a b')",
1631 "input": "url( 'a b')",
1632 "output": [["URI", "a b"]]},
1633
1634 {"description": "url( \"a b\")",
1635 "input": "url( \"a b\")",
1636 "output": [["URI", "a b"]]},
1637
1638 {"description": "url( ' a b ')",
1639 "input": "url( ' a b ')",
1640 "output": [["URI", " a b "]]},
1641
1642 {"description": "url( \" a b \")",
1643 "input": "url( \" a b \")",
1644 "output": [["URI", " a b "]]},
1645
1646 {"description": "url( 'a b'c)",
1647 "input": "url( 'a b'c)",
1648 "output": [["URI_INVALID"]]},
1649
1650 {"description": "url( \"a b\"c)",
1651 "input": "url( \"a b\"c)",
1652 "output": [["URI_INVALID"]]},
1653
1654 {"description": "url( 'a b''c')",
1655 "input": "url( 'a b''c')",
1656 "output": [["URI_INVALID"]]},
1657
1658 {"description": "url( \"a b\"\"c\")",
1659 "input": "url( \"a b\"\"c\")",
1660 "output": [["URI_INVALID"]]},
1661
1662 {"description": "url( 'a b' c)",
1663 "input": "url( 'a b' c)",
1664 "output": [["URI_INVALID"]]},
1665
1666 {"description": "url( \"a b\" c)",
1667 "input": "url( \"a b\" c)",
1668 "output": [["URI_INVALID"]]},
1669
1670 {"description": "url( '\\",
1671 "input": "url( '\\",
1672 "output": [["URI_INVALID"], ["DELIM", "\\"]]},
1673
1674 {"description": "url( \"\\)",
1675 "input": "url( \"\\",
1676 "output": [["URI_INVALID"], ["DELIM", "\\"]]},
1677
1678 {"description": "url( 'x\\",
1679 "input": "url( 'x\\",
1680 "output": [["URI_INVALID"], ["DELIM", "\\"]]},
1681
1682 {"description": "url( \"x\\)",
1683 "input": "url( \"x\\",
1684 "output": [["URI_INVALID"], ["DELIM", "\\"]]},
1685
1686 {"description": "url('\u000a')",
1687 "input": "url('\u000a')",
1688 "output": [["URI_INVALID"], ["S"], ["INVALID", ")"]]},
1689
1690 {"description": "url(\"\u000a\")",
1691 "input": "url(\"\u000a\")",
1692 "output": [["URI_INVALID"], ["S"], ["INVALID", ")"]]},
1693
1694 {"description": "url('\u000d')",
1695 "input": "url('\u000d')",
1696 "output": [["URI_INVALID"], ["S"], ["INVALID", ")"]]},
1697
1698 {"description": "url(\"\u000d\")",
1699 "input": "url(\"\u000d\")",
1700 "output": [["URI_INVALID"], ["S"], ["INVALID", ")"]]},
1701
1702 {"description": "url('\u000d\u000a')",
1703 "input": "url('\u000d\u000a')",
1704 "output": [["URI_INVALID"], ["S"], ["INVALID", ")"]]},
1705
1706 {"description": "url(\"\u000d\u000a\")",
1707 "input": "url(\"\u000d\u000a\")",
1708 "output": [["URI_INVALID"], ["S"], ["INVALID", ")"]]},
1709
1710 {"description": "url('\u000c')",
1711 "input": "url('\u000c')",
1712 "output": [["URI_INVALID"], ["S"], ["INVALID", ")"]]},
1713
1714 {"description": "url(\"\u000c\")",
1715 "input": "url(\"\u000c\")",
1716 "output": [["URI_INVALID"], ["S"], ["INVALID", ")"]]},
1717
1718 {"description": "url-prefix()",
1719 "input": "url-prefix()",
1720 "output": [["URI_PREFIX", ""]]},
1721
1722 {"description": "url-prefix(\"\")",
1723 "input": "url-prefix(\"\")",
1724 "output": [["URI_PREFIX", ""]]},
1725
1726 {"description": "url-prefix('')",
1727 "input": "url-prefix('')",
1728 "output": [["URI_PREFIX", ""]]},
1729
1730 {"description": "url-prefix(aaa)",
1731 "input": "url-prefix(aaa)",
1732 "output": [["URI_PREFIX", "aaa"]]},
1733
1734 {"description": "url-prefix(\"abc\")",
1735 "input": "url-prefix(\"abc\")",
1736 "output": [["URI_PREFIX", "abc"]]},
1737
1738 {"description": "url-prefix('abc')",
1739 "input": "url-prefix('abc')",
1740 "output": [["URI_PREFIX", "abc"]]},
1741
1742 {"description": "url-prefix(\\4e00)",
1743 "input": "url-prefix(\\4e00)",
1744 "output": [["URI_PREFIX", "\u4e00"]]},
1745
1746 {"description": "url-prefix(aa\"bb)",
1747 "input": "url-prefix(aa\"bb)",
1748 "output": [["URI_PREFIX_INVALID"]]},
1749
1750 {"description": "url-prefix(aa'bb)",
1751 "input": "url-prefix(aa'bb)",
1752 "output": [["URI_PREFIX_INVALID"]]},
1753
1754 {"description": "url-prefix(\"aa)",
1755 "input": "url-prefix(\"aa)",
1756 "output": [["URI_PREFIX_INVALID"]]},
1757
1758 {"description": "url-prefix('aaa)",
1759 "input": "url-prefix('aaa)",
1760 "output": [["URI_PREFIX_INVALID"]]},
1761
1762 {"description": "url-prefi\\x( a )",
1763 "input": "url-prefi\\x( a )",
1764 "output": [["URI_PREFIX", "a"]]},
1765
1766 {"description": "u+",
1767 "input": "u+",
1768 "output": [["IDENT", "u"], ["PLUS"]]},
1769
1770 {"description": "U+",
1771 "input": "U+",
1772 "output": [["IDENT", "U"], ["PLUS"]]},
1773
1774 {"description": "u\\+",
1775 "input": "u\\+",
1776 "output": [["IDENT", "u+"]]},
1777
1778 {"description": "u+4",
1779 "input": "u+4",
1780 "output": [["UNICODE_RANGE", "4"]]},
1781
1782 {"description": "u+a",
1783 "input": "u+a",
1784 "output": [["UNICODE_RANGE", "a"]]},
1785
1786 {"description": "u+B",
1787 "input": "u+B",
1788 "output": [["UNICODE_RANGE", "B"]]},
1789
1790 {"description": "u+?",
1791 "input": "u+?",
1792 "output": [["UNICODE_RANGE", "?"]]},
1793
1794 {"description": "u+X",
1795 "input": "u+X",
1796 "output": [["IDENT", "u"], ["PLUS"], ["IDENT", "X"]]},
1797
1798 {"description": "u+/**/4",
1799 "input": "u+/**/4",
1800 "output": [["IDENT", "u"], ["PLUS"], ["NUMBER", "4"]]},
1801
1802 {"description": "u+\\34",
1803 "input": "u+\\34",
1804 "output": [["IDENT", "u"], ["PLUS"], ["IDENT", "4"]]},
1805
1806 {"description": "u+42",
1807 "input": "u+42",
1808 "output": [["UNICODE_RANGE", "42"]]},
1809
1810 {"description": "u+4E0",
1811 "input": "u+4E0",
1812 "output": [["UNICODE_RANGE", "4E0"]]},
1813
1814 {"description": "u+4e00",
1815 "input": "u+4e00",
1816 "output": [["UNICODE_RANGE", "4e00"]]},
1817
1818 {"description": "u+4?2?",
1819 "input": "u+4?2?",
1820 "output": [["UNICODE_RANGE", "4?2?"]]},
1821
1822 {"description": "u+4???",
1823 "input": "u+4???",
1824 "output": [["UNICODE_RANGE", "4???"]]},
1825
1826 {"description": "u+4???12",
1827 "input": "u+4???12",
1828 "output": [["UNICODE_RANGE", "4???12"]]},
1829
1830 {"description": "u+4123456",
1831 "input": "u+4123456",
1832 "output": [["UNICODE_RANGE", "412345"], ["NUMBER", "6"]]},
1833
1834 {"description": "u+4123456em",
1835 "input": "u+4123456em",
1836 "output": [["UNICODE_RANGE", "412345"], ["DIMENSION", "6", "em"]]},
1837
1838 {"description": "u+4-",
1839 "input": "u+4-",
1840 "output": [["UNICODE_RANGE", "4"], ["DELIM", "-"]]},
1841
1842 {"description": "u+4-?",
1843 "input": "u+4-?",
1844 "output": [["UNICODE_RANGE", "4"], ["DELIM", "-"], ["DELIM", "?"]]},
1845
1846 {"description": "u+4-1",
1847 "input": "u+4-1",
1848 "output": [["UNICODE_RANGE", "4-1"]]},
1849
1850 {"description": "u+4-x",
1851 "input": "u+4-x",
1852 "output": [["UNICODE_RANGE", "4"], ["IDENT", "-x"]]},
1853
1854 {"description": "u+4/**/-1",
1855 "input": "u+4/**/-1",
1856 "output": [["UNICODE_RANGE", "4"], ["DELIM", "-"], ["NUMBER", "1"]]},
1857
1858 {"description": "u+4-12",
1859 "input": "u+4-12",
1860 "output": [["UNICODE_RANGE", "4-12"]]},
1861
1862 {"description": "u+4-eef",
1863 "input": "u+4-eef",
1864 "output": [["UNICODE_RANGE", "4-eef"]]},
1865
1866 {"description": "u+4-ffff",
1867 "input": "u+4-ffff",
1868 "output": [["UNICODE_RANGE", "4-ffff"]]},
1869
1870 {"description": "u+4-10000",
1871 "input": "u+4-10000",
1872 "output": [["UNICODE_RANGE", "4-10000"]]},
1873
1874 {"description": "u+4-ffffff",
1875 "input": "u+4-ffffff",
1876 "output": [["UNICODE_RANGE", "4-ffffff"]]},
1877
1878 {"description": "u+4-1234567",
1879 "input": "u+4-1234567",
1880 "output": [["UNICODE_RANGE", "4-123456"], ["NUMBER", "7"]]},
1881
1882 {"description": "u+4-123?56",
1883 "input": "u+4-123?56",
1884 "output": [["UNICODE_RANGE", "4-123"], ["DELIM", "?"], ["NUMBER", "56"]]},
1885
1886 {"description": "u+4--",
1887 "input": "u+4--",
1888 "output": [["UNICODE_RANGE", "4"], ["DELIM", "-"], ["DELIM", "-"]]},
1889
1890 {"description": "u+4-->",
1891 "input": "u+4-->",
1892 "output": [["UNICODE_RANGE", "4"], ["CDC"]]},
1893
1894 {"description": "u+4-/**/->",
1895 "input": "u+4-/**/->",
1896 "output": [["UNICODE_RANGE", "4"], ["DELIM", "-"], ["DELIM", "-"],
1897 ["GREATER"]]},
1898
1899 {"description": "u+4--/**/>",
1900 "input": "u+4--/**/>",
1901 "output": [["UNICODE_RANGE", "4"], ["DELIM", "-"], ["DELIM", "-"],
1902 ["GREATER"]]},
1903
1904 {"description": "\\u+4",
1905 "input": "\\u+4",
1906 "output": [["IDENT", "u"], ["PLUS"], ["NUMBER", "4"]]},
1907
1908 {"description": "<",
1909 "input": "<",
1910 "output": [["DELIM", "<"]]},
1911
1912 {"description": "<!",
1913 "input": "<!",
1914 "output": [["DELIM", "<"], ["DELIM", "!"]]},
1915
1916 {"description": "<!-",
1917 "input": "<!-",
1918 "output": [["DELIM", "<"], ["DELIM", "!"], ["DELIM", "-"]]},
1919
1920 {"description": "<!--",
1921 "input": "<!--",
1922 "output": [["CDO"]]},
1923
1924 {"description": "\\<!--",
1925 "input": "\\<!--",
1926 "output": [["IDENT", "<"], ["DELIM", "!"], ["DELIM", "-"], ["DELIM", "-"]]},
1927
1928 {"description": "<!--a",
1929 "input": "<!--a",
1930 "output": [["CDO"], ["IDENT", "a"]]},
1931
1932 {"description": "<!-->",
1933 "input": "<!-->",
1934 "output": [["CDO"], ["GREATER"]]},
1935
1936 {"description": "<!--->",
1937 "input": "<!--->",
1938 "output": [["CDO"], ["DELIM", "-"], ["GREATER"]]},
1939
1940 {"description": "<!---->",
1941 "input": "<!---->",
1942 "output": [["CDO"], ["CDC"]]},
1943
1944 {"description": "<!>",
1945 "input": "<!>",
1946 "output": [["DELIM", "<"], ["DELIM", "!"], ["GREATER"]]},
1947
1948 {"description": "-",
1949 "input": "-",
1950 "output": [["DELIM", "-"]]},
1951
1952 {"description": "--",
1953 "input": "--",
1954 "output": [["DELIM", "-"], ["DELIM", "-"]]},
1955
1956 {"description": "-->",
1957 "input": "-->",
1958 "output": [["CDC"]]},
1959
1960 {"description": ";",
1961 "input": ";",
1962 "output": [["SEMICOLON"]]},
1963
1964 {"description": ";;",
1965 "input": ";;",
1966 "output": [["SEMICOLON"], ["SEMICOLON"]]},
1967
1968 {"description": "\\;",
1969 "input": "\\;",
1970 "output": [["IDENT", ";"]]},
1971
1972 {"description": "{",
1973 "input": "{",
1974 "output": [["LBRACE"]]},
1975
1976 {"description": "}",
1977 "input": "}",
1978 "output": [["RBRACE"]]},
1979
1980 {"description": "[",
1981 "input": "[",
1982 "output": [["LBRACKET"]]},
1983
1984 {"description": "]",
1985 "input": "]",
1986 "output": [["RBRACKET"]]},
1987
1988 {"description": "(",
1989 "input": "(",
1990 "output": [["LPAREN"]]},
1991
1992 {"description": ")",
1993 "input": ")",
1994 "output": [["RPAREN"]]},
1995
1996 {"description": "((",
1997 "input": "((",
1998 "output": [["LPAREN"], ["LPAREN"]]},
1999
2000 {"description": "()",
2001 "input": "()",
2002 "output": [["LPAREN"], ["RPAREN"]]},
2003
2004 {"description": "\u0000",
2005 "input": "\u0000",
2006 "output": [["DELIM", "\u0000"]]},
2007
2008 {"description": "\u0009",
2009 "input": "\u0009",
2010 "output": [["S"]]},
2011
2012 {"description": "\u0009\u0009",
2013 "input": "\u0009\u0009",
2014 "output": [["S"]]},
2015
2016 {"description": "\u0009 ",
2017 "input": "\u0009 ",
2018 "output": [["S"]]},
2019
2020 {"description": "\u000a",
2021 "input": "\u000a",
2022 "output": [["S"]]},
2023
2024 {"description": "\u000a\u000a",
2025 "input": "\u000a\u000a",
2026 "output": [["S"]]},
2027
2028 {"description": "\u000d",
2029 "input": "\u000d",
2030 "output": [["S"]]},
2031
2032 {"description": "\u000d\u000a",
2033 "input": "\u000d\u000a",
2034 "output": [["S"]]},
2035
2036 {"description": "\u0009\u000a",
2037 "input": "\u0009\u000a",
2038 "output": [["S"]]},
2039
2040 {"description": "\u000b",
2041 "input": "\u000b",
2042 "output": [["DELIM", "\u000b"]]},
2043
2044 {"description": "\u000c",
2045 "input": "\u000c",
2046 "output": [["S"]]},
2047
2048 {"description": "\u000f",
2049 "input": "\u000f",
2050 "output": [["DELIM", "\u000f"]]},
2051
2052 {"description": " ",
2053 "input": " ",
2054 "output": [["S"]]},
2055
2056 {"description": " ",
2057 "input": " ",
2058 "output": [["S"]]},
2059
2060 {"description": "\u0009 ",
2061 "input": "\u0009 ",
2062 "output": [["S"]]},
2063
2064 {"description": " \u0009",
2065 "input": " \u0009",
2066 "output": [["S"]]},
2067
2068 {"description": "X\u0009",
2069 "input": "X\u0009",
2070 "output": [["IDENT", "X"], ["S"]]},
2071
2072 {"description": "/",
2073 "input": "/",
2074 "output": [["DELIM", "/"]]},
2075
2076 {"description": "/*",
2077 "input": "/*",
2078 "output": [["COMMENT_INVALID"]]},
2079
2080 {"description": "/**",
2081 "input": "/**",
2082 "output": [["COMMENT_INVALID"]]},
2083
2084 {"description": "/***",
2085 "input": "/***",
2086 "output": [["COMMENT_INVALID"]]},
2087
2088 {"description": "/**/",
2089 "input": "/**/",
2090 "output": []},
2091
2092 {"description": "/***/",
2093 "input": "/***/",
2094 "output": []},
2095
2096 {"description": "/****/",
2097 "input": "/****/",
2098 "output": []},
2099
2100 {"description": "/* */",
2101 "input": "/* */",
2102 "output": []},
2103
2104 {"description": "/*\u000a*/",
2105 "input": "/*\u000a*/",
2106 "output": []},
2107
2108 {"description": "/**/ ",
2109 "input": "/**/ ",
2110 "output": [["S"]]},
2111
2112 {"description": " /**/ ",
2113 "input": " /**/ ",
2114 "output": [["S"], ["S"]]},
2115
2116 {"description": "/*/**/",
2117 "input": "/*/**/",
2118 "output": []},
2119
2120 {"description": "/*/**/*/",
2121 "input": "/*/**/*/",
2122 "output": [["DELIM", "*"], ["DELIM", "/"]]}
2123 ]}

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24