@@ -93,6 +93,10 @@ lheading 2
93
93
----------
94
94
` ,
95
95
tokens : [
96
+ {
97
+ type : 'space' ,
98
+ raw : '\n'
99
+ } ,
96
100
{
97
101
type : 'heading' ,
98
102
raw : '# heading 1\n\n' ,
@@ -175,6 +179,9 @@ lheading 2
175
179
| 1 | 2 |
176
180
` ,
177
181
tokens : [ {
182
+ type : 'space' ,
183
+ raw : '\n'
184
+ } , {
178
185
type : 'table' ,
179
186
align : [ null , null ] ,
180
187
raw : '| a | b |\n|---|---|\n| 1 | 2 |\n' ,
@@ -212,40 +219,42 @@ paragraph 1
212
219
|---|---|
213
220
| 1 | 2 |
214
221
` ,
215
- tokens : [
216
- {
217
- type : 'paragraph' ,
218
- raw : 'paragraph 1' ,
219
- text : 'paragraph 1' ,
220
- tokens : [ { type : 'text' , raw : 'paragraph 1' , text : 'paragraph 1' } ]
221
- } ,
222
- {
223
- type : 'table' ,
224
- align : [ null , null ] ,
225
- raw : '| a | b |\n|---|---|\n| 1 | 2 |\n' ,
226
- header : [
222
+ tokens : [ {
223
+ type : 'space' ,
224
+ raw : '\n'
225
+ } , {
226
+ type : 'paragraph' ,
227
+ raw : 'paragraph 1\n' ,
228
+ text : 'paragraph 1' ,
229
+ tokens : [ { type : 'text' , raw : 'paragraph 1' , text : 'paragraph 1' } ]
230
+ } ,
231
+ {
232
+ type : 'table' ,
233
+ align : [ null , null ] ,
234
+ raw : '| a | b |\n|---|---|\n| 1 | 2 |\n' ,
235
+ header : [
236
+ {
237
+ text : 'a' ,
238
+ tokens : [ { type : 'text' , raw : 'a' , text : 'a' } ]
239
+ } ,
240
+ {
241
+ text : 'b' ,
242
+ tokens : [ { type : 'text' , raw : 'b' , text : 'b' } ]
243
+ }
244
+ ] ,
245
+ rows : [
246
+ [
227
247
{
228
- text : 'a ' ,
229
- tokens : [ { type : 'text' , raw : 'a ' , text : 'a ' } ]
248
+ text : '1 ' ,
249
+ tokens : [ { type : 'text' , raw : '1 ' , text : '1 ' } ]
230
250
} ,
231
251
{
232
- text : 'b ' ,
233
- tokens : [ { type : 'text' , raw : 'b ' , text : 'b ' } ]
252
+ text : '2 ' ,
253
+ tokens : [ { type : 'text' , raw : '2 ' , text : '2 ' } ]
234
254
}
235
- ] ,
236
- rows : [
237
- [
238
- {
239
- text : '1' ,
240
- tokens : [ { type : 'text' , raw : '1' , text : '1' } ]
241
- } ,
242
- {
243
- text : '2' ,
244
- tokens : [ { type : 'text' , raw : '2' , text : '2' } ]
245
- }
246
- ]
247
255
]
248
- }
256
+ ]
257
+ }
249
258
]
250
259
} ) ;
251
260
} ) ;
@@ -258,6 +267,9 @@ paragraph 1
258
267
| 1 | 2 | 3 |
259
268
` ,
260
269
tokens : [ {
270
+ type : 'space' ,
271
+ raw : '\n'
272
+ } , {
261
273
type : 'table' ,
262
274
align : [ 'left' , 'center' , 'right' ] ,
263
275
raw : '| a | b | c |\n|:--|:-:|--:|\n| 1 | 2 | 3 |\n' ,
@@ -302,33 +314,37 @@ a | b
302
314
--|--
303
315
1 | 2
304
316
` ,
305
- tokens : [ {
306
- type : 'table' ,
307
- align : [ null , null ] ,
308
- raw : 'a | b\n--|--\n1 | 2\n' ,
309
- header : [
310
- {
311
- text : 'a' ,
312
- tokens : [ { type : 'text' , raw : 'a' , text : 'a' } ]
313
- } ,
314
- {
315
- text : 'b' ,
316
- tokens : [ { type : 'text' , raw : 'b' , text : 'b' } ]
317
- }
318
- ] ,
319
- rows : [
320
- [
317
+ tokens : [
318
+ {
319
+ type : 'space' ,
320
+ raw : '\n'
321
+ } , {
322
+ type : 'table' ,
323
+ align : [ null , null ] ,
324
+ raw : 'a | b\n--|--\n1 | 2\n' ,
325
+ header : [
321
326
{
322
- text : '1 ' ,
323
- tokens : [ { type : 'text' , raw : '1 ' , text : '1 ' } ]
327
+ text : 'a ' ,
328
+ tokens : [ { type : 'text' , raw : 'a ' , text : 'a ' } ]
324
329
} ,
325
330
{
326
- text : '2 ' ,
327
- tokens : [ { type : 'text' , raw : '2 ' , text : '2 ' } ]
331
+ text : 'b ' ,
332
+ tokens : [ { type : 'text' , raw : 'b ' , text : 'b ' } ]
328
333
}
334
+ ] ,
335
+ rows : [
336
+ [
337
+ {
338
+ text : '1' ,
339
+ tokens : [ { type : 'text' , raw : '1' , text : '1' } ]
340
+ } ,
341
+ {
342
+ text : '2' ,
343
+ tokens : [ { type : 'text' , raw : '2' , text : '2' } ]
344
+ }
345
+ ]
329
346
]
330
- ]
331
- } ]
347
+ } ]
332
348
} ) ;
333
349
} ) ;
334
350
} ) ;
@@ -342,6 +358,19 @@ a | b
342
358
]
343
359
} ) ;
344
360
} ) ;
361
+
362
+ it ( 'after line break does not consume raw \n' , ( ) => {
363
+ expectTokens ( {
364
+ md : 'T\nh\n---' ,
365
+ tokens :
366
+ jasmine . arrayContaining ( [
367
+ jasmine . objectContaining ( {
368
+ raw : 'T\nh\n'
369
+ } ) ,
370
+ { type : 'hr' , raw : '---' }
371
+ ] )
372
+ } ) ;
373
+ } ) ;
345
374
} ) ;
346
375
347
376
describe ( 'blockquote' , ( ) => {
@@ -376,8 +405,11 @@ a | b
376
405
` ,
377
406
tokens : [
378
407
{
408
+ type : 'space' ,
409
+ raw : '\n'
410
+ } , {
379
411
type : 'list' ,
380
- raw : '- item 1\n- item 2' ,
412
+ raw : '- item 1\n- item 2\n ' ,
381
413
ordered : false ,
382
414
start : '' ,
383
415
loose : false ,
@@ -423,9 +455,13 @@ a | b
423
455
2. item 2
424
456
` ,
425
457
tokens : jasmine . arrayContaining ( [
458
+ jasmine . objectContaining ( {
459
+ type : 'space' ,
460
+ raw : '\n'
461
+ } ) ,
426
462
jasmine . objectContaining ( {
427
463
type : 'list' ,
428
- raw : '1. item 1\n2. item 2' ,
464
+ raw : '1. item 1\n2. item 2\n ' ,
429
465
ordered : true ,
430
466
start : 1 ,
431
467
items : [
@@ -448,9 +484,13 @@ a | b
448
484
2) item 2
449
485
` ,
450
486
tokens : jasmine . arrayContaining ( [
487
+ jasmine . objectContaining ( {
488
+ type : 'space' ,
489
+ raw : '\n'
490
+ } ) ,
451
491
jasmine . objectContaining ( {
452
492
type : 'list' ,
453
- raw : '1) item 1\n2) item 2' ,
493
+ raw : '1) item 1\n2) item 2\n ' ,
454
494
ordered : true ,
455
495
start : 1 ,
456
496
items : [
@@ -475,6 +515,10 @@ a | b
475
515
paragraph
476
516
` ,
477
517
tokens : [
518
+ {
519
+ type : 'space' ,
520
+ raw : '\n'
521
+ } ,
478
522
{
479
523
type : 'list' ,
480
524
raw : '- item 1\n- item 2' ,
@@ -515,7 +559,7 @@ paragraph
515
559
{ type : 'space' , raw : '\n\n' } ,
516
560
{
517
561
type : 'paragraph' ,
518
- raw : 'paragraph' ,
562
+ raw : 'paragraph\n ' ,
519
563
text : 'paragraph' ,
520
564
tokens : [ {
521
565
type : 'text' ,
@@ -534,9 +578,13 @@ paragraph
534
578
3. item 2
535
579
` ,
536
580
tokens : jasmine . arrayContaining ( [
581
+ jasmine . objectContaining ( {
582
+ type : 'space' ,
583
+ raw : '\n'
584
+ } ) ,
537
585
jasmine . objectContaining ( {
538
586
type : 'list' ,
539
- raw : '2. item 1\n3. item 2' ,
587
+ raw : '2. item 1\n3. item 2\n ' ,
540
588
ordered : true ,
541
589
start : 2 ,
542
590
items : [
@@ -560,9 +608,13 @@ paragraph
560
608
- item 2
561
609
` ,
562
610
tokens : jasmine . arrayContaining ( [
611
+ jasmine . objectContaining ( {
612
+ type : 'space' ,
613
+ raw : '\n'
614
+ } ) ,
563
615
jasmine . objectContaining ( {
564
616
type : 'list' ,
565
- raw : '- item 1\n\n- item 2' ,
617
+ raw : '- item 1\n\n- item 2\n ' ,
566
618
loose : true ,
567
619
items : [
568
620
jasmine . objectContaining ( {
@@ -577,16 +629,54 @@ paragraph
577
629
} ) ;
578
630
} ) ;
579
631
632
+ it ( 'not loose with spaces' , ( ) => {
633
+ expectTokens ( {
634
+ md : `
635
+ - item 1
636
+ - item 2
637
+ ` ,
638
+ tokens : jasmine . arrayContaining ( [
639
+ jasmine . objectContaining ( {
640
+ type : 'space' ,
641
+ raw : '\n'
642
+ } ) ,
643
+ jasmine . objectContaining ( {
644
+ type : 'list' ,
645
+ raw : '- item 1\n - item 2\n' ,
646
+ loose : false ,
647
+ items : [
648
+ jasmine . objectContaining ( {
649
+ raw : '- item 1\n - item 2' ,
650
+ tokens : jasmine . arrayContaining ( [
651
+ jasmine . objectContaining ( {
652
+ raw : 'item 1\n'
653
+ } ) ,
654
+ jasmine . objectContaining ( {
655
+ type : 'list' ,
656
+ raw : '- item 2'
657
+ } )
658
+ ] )
659
+ } )
660
+ ]
661
+ } )
662
+ ] )
663
+ } ) ;
664
+ } ) ;
665
+
580
666
it ( 'task' , ( ) => {
581
667
expectTokens ( {
582
668
md : `
583
669
- [ ] item 1
584
670
- [x] item 2
585
671
` ,
586
672
tokens : jasmine . arrayContaining ( [
673
+ jasmine . objectContaining ( {
674
+ type : 'space' ,
675
+ raw : '\n'
676
+ } ) ,
587
677
jasmine . objectContaining ( {
588
678
type : 'list' ,
589
- raw : '- [ ] item 1\n- [x] item 2' ,
679
+ raw : '- [ ] item 1\n- [x] item 2\n ' ,
590
680
items : [
591
681
jasmine . objectContaining ( {
592
682
raw : '- [ ] item 1\n' ,
0 commit comments