Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 907115 Details for
Bug 942400
dev-scheme/guile-commonmark-0.1.2_pre20240803 fails tests
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
1-test-suite.log
1-test-suite.log (text/plain), 258.14 KB, created by
Agostino Sarubbo
on 2024-10-28 11:44:26 UTC
(
hide
)
Description:
1-test-suite.log
Filename:
MIME Type:
Creator:
Agostino Sarubbo
Created:
2024-10-28 11:44:26 UTC
Size:
258.14 KB
patch
obsolete
>============================================ > guile-commonmark 0.2: ./test-suite.log >============================================ > ># TOTAL: 495 ># PASS: 475 ># SKIP: 0 ># XFAIL: 8 ># FAIL: 12 ># XPASS: 0 ># ERROR: 0 > >System information (uname -a): Linux 6.1.87-gentoo-dist #1 SMP PREEMPT_DYNAMIC Tue Apr 30 15:57:27 CEST 2024 x86_64 AMD EPYC 7513 32-Core Processor AuthenticAMD >Distribution information (/etc/os-release): >NAME=Gentoo >ID=gentoo >PRETTY_NAME="Gentoo Linux" >ANSI_COLOR="1;32" >HOME_URL="https://www.gentoo.org/" >SUPPORT_URL="https://www.gentoo.org/support/" >BUG_REPORT_URL="https://bugs.gentoo.org/" >VERSION_ID="2.15" > >.. contents:: :depth: 2 > >FAIL: tests/blocks/list-items >============================= > >test-name: parse-blocks, list item basic case >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:23 >source: >+ (test-assert >+ "parse-blocks, list item basic case" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('block-quote _ ('paragraph _ ('text _ "A block quote."))) >+ ('code-block _ "indented code") >+ ('paragraph _ ('text _ "A paragraph\nwith two lines."))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('block-quote _ ('paragraph _ ('text _ "A block quote."))) >+ ('code-block _ "indented code") >+ ('paragraph _ ('text _ "A paragraph\nwith two lines.")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item content must be indented enough to be part of the item >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:38 >source: >+ (test-assert >+ "parse-blocks, list item content must be indented enough to be part of the item" >+ (match result >+ (('document >+ _ >+ ('paragraph _ ('text _ "two")) >+ ('list _ ('item _ ('paragraph _ ('text _ "one"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('paragraph _ ('text _ "two")) >+ ('list _ ('item _ ('paragraph _ ('text _ "one")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item content must be indented enough to be part of the item >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:46 >source: >+ (test-assert >+ "parse-blocks, list item content must be indented enough to be part of the item" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('paragraph _ ('text _ "two")) >+ ('paragraph _ ('text _ "one"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('paragraph _ ('text _ "two")) >+ ('paragraph _ ('text _ "one")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item content must be indented enough to be part of the item >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:56 >source: >+ (test-assert >+ "parse-blocks, list item content must be indented enough to be part of the item" >+ (match result >+ (('document >+ _ >+ ('code-block _ " two") >+ ('list _ ('item _ ('paragraph _ ('text _ "one"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('code-block _ " two") >+ ('list _ ('item _ ('paragraph _ ('text _ "one")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item content must be indented enough to be part of the item >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:64 >source: >+ (test-assert >+ "parse-blocks, list item content must be indented enough to be part of the item" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('paragraph _ ('text _ "two")) >+ ('paragraph _ ('text _ "one"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('paragraph _ ('text _ "two")) >+ ('paragraph _ ('text _ "one")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item content must be indented enough to be part of the item >not column >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:74 >source: >+ (test-assert >+ "parse-blocks, list item content must be indented enough to be part of the item\nnot column" >+ (match result >+ (('document >+ _ >+ ('block-quote >+ _ >+ ('block-quote >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('paragraph _ ('text _ "two")) >+ ('paragraph _ ('text _ "one"))))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('block-quote >+ _ >+ ('block-quote >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('paragraph _ ('text _ "two")) >+ ('paragraph _ ('text _ "one")))))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item content must be indented enough to be part of the item >not column >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:87 >source: >+ (test-assert >+ "parse-blocks, list item content must be indented enough to be part of the item\nnot column" >+ (match result >+ (('document >+ _ >+ ('block-quote >+ _ >+ ('block-quote >+ _ >+ ('paragraph _ ('text _ "two")) >+ ('list _ ('item _ ('paragraph _ ('text _ "one"))))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('block-quote >+ _ >+ ('block-quote >+ _ >+ ('paragraph _ ('text _ "two")) >+ ('list _ ('item _ ('paragraph _ ('text _ "one")))))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item needs one space after the list marker >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:98 >source: >+ (test-assert >+ "parse-blocks, list item needs one space after the list marker" >+ (match result >+ (('document >+ _ >+ ('paragraph _ ('text _ "2.two")) >+ ('paragraph _ ('text _ "-one"))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('paragraph _ ('text _ "2.two")) >+ ('paragraph _ ('text _ "-one")))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item may contain blocks separated by more than one blank >line >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:106 >source: >+ (test-assert >+ "parse-blocks, list item may contain blocks separated by more than one blank\nline" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('paragraph _ ('text _ "bar")) >+ ('paragraph _ ('text _ "foo"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('paragraph _ ('text _ "bar")) >+ ('paragraph _ ('text _ "foo")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item may contain any kind of block >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:118 >source: >+ (test-assert >+ "parse-blocks, list item may contain any kind of block" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('block-quote _ ('paragraph _ ('text _ "bam"))) >+ ('paragraph _ ('text _ "baz")) >+ ('fenced-code _ "bar") >+ ('paragraph _ ('text _ "foo"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('block-quote _ ('paragraph _ ('text _ "bam"))) >+ ('paragraph _ ('text _ "baz")) >+ ('fenced-code _ "bar") >+ ('paragraph _ ('text _ "foo")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item contains indented code block preserve empty lines >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:137 >source: >+ (test-assert >+ "parse-blocks, list item contains indented code block preserve empty lines" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('code-block _ "bar\n\n\nbaz") >+ ('paragraph _ ('text _ "foo"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('code-block _ "bar\n\n\nbaz") >+ ('paragraph _ ('text _ "foo")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >*** Expected: ((quote document) _ ((quote list) _ ((quote item) _ ((quote code-block) _ "bar\n\n\nbaz") ((quote paragraph) _ ((quote text) _ "foo"))))) >*** Result: (document ((closed . #f)) (list ((tight . #f) (type . bullet) (tight . #t) (bullet . "-")) (item ((padding . 2)) (code-block ((closed . #f)) "bar\n\nbaz") (paragraph ((closed . #f)) (text ((closed . #t)) "Foo"))))) >actual-value: #f >result: FAIL > >test-name: parse-blocks, list item start numbers must be nine digits or less >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:150 >source: >+ (test-assert >+ "parse-blocks, list item start numbers must be nine digits or less" >+ (match result >+ (('document >+ _ >+ ('list list-data ('item _ ('paragraph _ ('text _ "ok"))))) >+ (test-asserts (list-start list-data) 123456789)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list list-data ('item _ ('paragraph _ ('text _ "ok")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item start numbers must be nine digits or less >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:157 >source: >+ (test-assert >+ "parse-blocks, list item start numbers must be nine digits or less" >+ (match result >+ (('document _ ('paragraph _ ('text _ "1234567890. not ok"))) #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document _ ('paragraph _ ('text _ "1234567890. not ok")))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item may begin with 0s >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:162 >source: >+ (test-assert >+ "parse-blocks, list item may begin with 0s" >+ (match result >+ (('document >+ _ >+ ('list list-data ('item _ ('paragraph _ ('text _ "ok"))))) >+ (test-asserts (list-start list-data) 0)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list list-data ('item _ ('paragraph _ ('text _ "ok")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item may begin with 0s >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:169 >source: >+ (test-assert >+ "parse-blocks, list item may begin with 0s" >+ (match result >+ (('document >+ _ >+ ('list list-data ('item _ ('paragraph _ ('text _ "ok"))))) >+ (test-asserts (list-start list-data) 3)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list list-data ('item _ ('paragraph _ ('text _ "ok")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item number may not be negative >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:176 >source: >+ (test-assert >+ "parse-blocks, list item number may not be negative" >+ (match result >+ (('document _ ('paragraph _ ('text _ "-1. not ok"))) #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document _ ('paragraph _ ('text _ "-1. not ok")))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item code block must be indented four spaces beyond the edge >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:180 >source: >+ (test-assert >+ "parse-blocks, list item code block must be indented four spaces beyond the edge" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item _ ('code-block _ "bar") ('paragraph _ ('text _ "foo"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('code-block _ "bar") >+ ('paragraph _ ('text _ "foo")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item code block must be indented four spaces beyond the edge >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:190 >source: >+ (test-assert >+ "parse-blocks, list item code block must be indented four spaces beyond the edge" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item _ ('code-block _ "bar") ('paragraph _ ('text _ "foo"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('code-block _ "bar") >+ ('paragraph _ ('text _ "foo")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item if code block is first block, contents must be indented >one space after >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:200 >source: >+ (test-assert >+ "parse-blocks, list item if code block is first block, contents must be indented\none space after" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('code-block _ "more code") >+ ('paragraph _ ('text _ "paragraph")) >+ ('code-block _ "indented code")))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('code-block _ "more code") >+ ('paragraph _ ('text _ "paragraph")) >+ ('code-block _ "indented code"))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item if code block is first block, additional space inside >code block >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:214 >source: >+ (test-assert >+ "parse-blocks, list item if code block is first block, additional space inside\ncode block" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('code-block _ "more code") >+ ('paragraph _ ('text _ "paragraph")) >+ ('code-block _ " indented code")))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('code-block _ "more code") >+ ('paragraph _ ('text _ "paragraph")) >+ ('code-block _ " indented code"))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item does not not apply with three-space indent >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:228 >source: >+ (test-assert >+ "parse-blocks, list item does not not apply with three-space indent" >+ (match result >+ (('document >+ _ >+ ('paragraph _ ('text _ "bar")) >+ ('list _ ('item _ ('paragraph _ ('text _ "foo"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('paragraph _ ('text _ "bar")) >+ ('list _ ('item _ ('paragraph _ ('text _ "foo")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item can start with a blank line >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:236 >source: >+ (test-assert >+ "parse-blocks, list item can start with a blank line" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item _ ('code-block _ "baz")) >+ ('item _ ('fenced-code _ "bar")) >+ ('item _ ('paragraph _ ('text _ "foo"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item _ ('code-block _ "baz")) >+ ('item _ ('fenced-code _ "bar")) >+ ('item _ ('paragraph _ ('text _ "foo")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item blank line, the number of spaces does not change >required indentation >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:252 >source: >+ (test-assert >+ "parse-blocks, list item blank line, the number of spaces does not change\nrequired indentation" >+ (match result >+ (('document _ ('list _ ('item _ ('paragraph _ ('text _ "foo"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list _ ('item _ ('paragraph _ ('text _ "foo")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >*** Expected: ((quote document) _ ((quote list) _ ((quote item) _ ((quote paragraph) _ ((quote text) _ "foo"))))) >*** Result: (document ((closed . #f)) (paragraph ((closed . #f)) (text ((closed . #t)) "foo")) (list ((closed . #t) (type . bullet) (tight . #t) (bullet . "-")) (item ((closed . #t) (padding . 4))))) >actual-value: #f >result: FAIL > >test-name: parse-blocks, list item can begin with at most one blank line >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:260 >source: >+ (test-assert >+ "parse-blocks, list item can begin with at most one blank line" >+ (match result >+ (('document _ ('paragraph _ ('text _ "foo")) ('list _ ('item _))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('paragraph _ ('text _ "foo")) >+ ('list _ ('item _)))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item empty bullet list item >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:268 >source: >+ (test-assert >+ "parse-blocks, list item empty bullet list item" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item _ ('paragraph _ ('text _ "bar"))) >+ ('item _) >+ ('item _ ('paragraph _ ('text _ "foo"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item _ ('paragraph _ ('text _ "bar"))) >+ ('item _) >+ ('item _ ('paragraph _ ('text _ "foo")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item empty bullet list item space does not matter after list marker >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:278 >source: >+ (test-assert >+ "parse-blocks, list item empty bullet list item space does not matter after list marker" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item _ ('paragraph _ ('text _ "bar"))) >+ ('item _) >+ ('item _ ('paragraph _ ('text _ "foo"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item _ ('paragraph _ ('text _ "bar"))) >+ ('item _) >+ ('item _ ('paragraph _ ('text _ "foo")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item empty ordered list item >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:288 >source: >+ (test-assert >+ "parse-blocks, list item empty ordered list item" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item _ ('paragraph _ ('text _ "bar"))) >+ ('item _) >+ ('item _ ('paragraph _ ('text _ "foo"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item _ ('paragraph _ ('text _ "bar"))) >+ ('item _) >+ ('item _ ('paragraph _ ('text _ "foo")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, a list may start or end with an empty list item >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:298 >source: >+ (test-assert >+ "parse-blocks, a list may start or end with an empty list item" >+ (match result >+ (('document _ ('list _ ('item _))) #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document _ ('list _ ('item _)))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, an empty list item cannot interrupt a paragraph >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:305 >source: >+ (test-assert >+ "parse-blocks, an empty list item cannot interrupt a paragraph" >+ (match result >+ (('document >+ _ >+ ('paragraph _ ('text "foo\n1.")) >+ ('paragraph _ ('text "foo\n*"))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('paragraph _ ('text "foo\n1.")) >+ ('paragraph _ ('text "foo\n*")))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >*** Expected: ((quote document) _ ((quote paragraph) _ ((quote text) "foo\n1.")) ((quote paragraph) _ ((quote text) "foo\n*"))) >*** Result: (document ((closed . #f)) (list ((type . ordered) (start . 1) (tight . #t) (delimiter . ".")) (item ((padding . 3)))) (paragraph ((closed . #f)) (text ((closed . #t)) "foo")) (list ((closed . #t) (type . bullet) (tight . #t) (bullet . "*")) (item ((closed . #t) (padding . 2)))) (paragraph ((closed . #f)) (text ((closed . #t)) "foo"))) >actual-value: #f >result: FAIL > >test-name: parse-blocks, list item indented one space >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:315 >source: >+ (test-assert >+ "parse-blocks, list item indented one space" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('block-quote _ ('paragraph _ ('text _ "A block quote."))) >+ ('code-block _ "indented code") >+ ('paragraph _ ('text _ "A paragraph\nwith two lines."))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('block-quote _ ('paragraph _ ('text _ "A block quote."))) >+ ('code-block _ "indented code") >+ ('paragraph _ ('text _ "A paragraph\nwith two lines.")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item indented two spaces >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:329 >source: >+ (test-assert >+ "parse-blocks, list item indented two spaces" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('block-quote _ ('paragraph _ ('text _ "A block quote."))) >+ ('code-block _ "indented code") >+ ('paragraph _ ('text _ "A paragraph\nwith two lines."))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('block-quote _ ('paragraph _ ('text _ "A block quote."))) >+ ('code-block _ "indented code") >+ ('paragraph _ ('text _ "A paragraph\nwith two lines.")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item indented three spaces >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:343 >source: >+ (test-assert >+ "parse-blocks, list item indented three spaces" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('block-quote _ ('paragraph _ ('text _ "A block quote."))) >+ ('code-block _ "indented code") >+ ('paragraph _ ('text _ "A paragraph\nwith two lines."))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('block-quote _ ('paragraph _ ('text _ "A block quote."))) >+ ('code-block _ "indented code") >+ ('paragraph _ ('text _ "A paragraph\nwith two lines.")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item indented four spaces gives a code block >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:357 >source: >+ (test-assert >+ "parse-blocks, list item indented four spaces gives a code block" >+ (match result >+ (('document >+ _ >+ ('code-block >+ _ >+ "1. A paragraph\n with two lines.\n\n indented code\n\n > A block quote.")) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('code-block >+ _ >+ "1. A paragraph\n with two lines.\n\n indented code\n\n > A block quote."))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item lazy continuation lines >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:372 >source: >+ (test-assert >+ "parse-blocks, list item lazy continuation lines" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('block-quote _ ('paragraph _ ('text _ "A block quote."))) >+ ('code-block _ "indented code") >+ ('paragraph _ ('text _ "A paragraph\nwith two lines."))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('block-quote _ ('paragraph _ ('text _ "A block quote."))) >+ ('code-block _ "indented code") >+ ('paragraph _ ('text _ "A paragraph\nwith two lines.")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item identation can be partially deleted >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:387 >source: >+ (test-assert >+ "parse-blocks, list item identation can be partially deleted" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('paragraph _ ('text _ "A paragraph\nwith two lines."))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('paragraph _ ('text _ "A paragraph\nwith two lines.")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item lazy continuation in nested structures >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:395 >source: >+ (test-assert >+ "parse-blocks, list item lazy continuation in nested structures" >+ (match result >+ (('document >+ _ >+ ('block-quote >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('block-quote >+ _ >+ ('paragraph _ ('text _ "Blockquote\ncontinued here."))))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('block-quote >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('block-quote >+ _ >+ ('paragraph _ ('text _ "Blockquote\ncontinued here.")))))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item lazy continuation in nested structures >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:403 >source: >+ (test-assert >+ "parse-blocks, list item lazy continuation in nested structures" >+ (match result >+ (('document >+ _ >+ ('block-quote >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('block-quote >+ _ >+ ('paragraph _ ('text _ "Blockquote\ncontinued here."))))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('block-quote >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('block-quote >+ _ >+ ('paragraph _ ('text _ "Blockquote\ncontinued here.")))))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item with sublists need to be indented >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:411 >source: >+ (test-assert >+ "parse-blocks, list item with sublists need to be indented" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('list _ ('item _ ('paragraph _ ('text _ "boo")))) >+ ('paragraph _ ('text _ "baz")))) >+ ('paragraph _ ('text _ "bar")))) >+ ('paragraph _ ('text _ "foo"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('list _ ('item _ ('paragraph _ ('text _ "boo")))) >+ ('paragraph _ ('text _ "baz")))) >+ ('paragraph _ ('text _ "bar")))) >+ ('paragraph _ ('text _ "foo")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item with sublists need to be indented, one is not enough >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:429 >source: >+ (test-assert >+ "parse-blocks, list item with sublists need to be indented, one is not enough" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item _ ('paragraph _ ('text _ "boo"))) >+ ('item _ ('paragraph _ ('text _ "baz"))) >+ ('item _ ('paragraph _ ('text _ "bar"))) >+ ('item _ ('paragraph _ ('text _ "foo"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item _ ('paragraph _ ('text _ "boo"))) >+ ('item _ ('paragraph _ ('text _ "baz"))) >+ ('item _ ('paragraph _ ('text _ "bar"))) >+ ('item _ ('paragraph _ ('text _ "foo")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item with sublists need to be indented, need four here >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:441 >source: >+ (test-assert >+ "parse-blocks, list item with sublists need to be indented, need four here" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('list _ ('item _ ('paragraph _ ('text _ "bar")))) >+ ('paragraph _ ('text _ "foo"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('list _ ('item _ ('paragraph _ ('text _ "bar")))) >+ ('paragraph _ ('text _ "foo")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item with sublists need to be indented, three not enough here >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:450 >source: >+ (test-assert >+ "parse-blocks, list item with sublists need to be indented, three not enough here" >+ (match result >+ (('document >+ _ >+ ('list _ ('item _ ('paragraph _ ('text _ "bar")))) >+ ('list _ ('item _ ('paragraph _ ('text _ "foo"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list _ ('item _ ('paragraph _ ('text _ "bar")))) >+ ('list _ ('item _ ('paragraph _ ('text _ "foo")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item may have a list as the first block >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:457 >source: >+ (test-assert >+ "parse-blocks, list item may have a list as the first block" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item _ ('list _ ('item _ ('paragraph _ ('text _ "foo"))))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item _ ('list _ ('item _ ('paragraph _ ('text _ "foo")))))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item may have a list as the first block >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:462 >source: >+ (test-assert >+ "parse-blocks, list item may have a list as the first block" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('list >+ _ >+ ('item _ ('list _ ('item _ ('paragraph _ ('text _ "foo"))))))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('list _ ('item _ ('paragraph _ ('text _ "foo")))))))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list item can contain a heading >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/list-items.scm:472 >source: >+ (test-assert >+ "parse-blocks, list item can contain a heading" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('paragraph _ ('text _ "baz")) >+ ('heading _ ('text _ "Bar"))) >+ ('item _ ('heading _ ('text _ "Foo"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('paragraph _ ('text _ "baz")) >+ ('heading _ ('text _ "Bar"))) >+ ('item _ ('heading _ ('text _ "Foo")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > > >FAIL: tests/blocks/lists >======================== > >test-name: parse-blocks, list changing bullet list delimiter starts a new list >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:23 >source: >+ (test-assert >+ "parse-blocks, list changing bullet list delimiter starts a new list" >+ (match result >+ (('document >+ _ >+ ('list _ ('item _ ('paragraph _ ('text _ "baz")))) >+ ('list >+ _ >+ ('item _ ('paragraph _ ('text _ "bar"))) >+ ('item _ ('paragraph _ ('text _ "foo"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list _ ('item _ ('paragraph _ ('text _ "baz")))) >+ ('list >+ _ >+ ('item _ ('paragraph _ ('text _ "bar"))) >+ ('item _ ('paragraph _ ('text _ "foo")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list changing ordered list delimiter starts a new list >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:33 >source: >+ (test-assert >+ "parse-blocks, list changing ordered list delimiter starts a new list" >+ (match result >+ (('document >+ _ >+ ('list list-data ('item _ ('paragraph _ ('text _ "baz")))) >+ ('list >+ _ >+ ('item _ ('paragraph _ ('text _ "bar"))) >+ ('item _ ('paragraph _ ('text _ "foo"))))) >+ (test-asserts (list-start list-data) 3)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list list-data ('item _ ('paragraph _ ('text _ "baz")))) >+ ('list >+ _ >+ ('item _ ('paragraph _ ('text _ "bar"))) >+ ('item _ ('paragraph _ ('text _ "foo")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list can interrupt a paragraph >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:44 >source: >+ (test-assert >+ "parse-blocks, list can interrupt a paragraph" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item _ ('paragraph _ ('text _ "baz"))) >+ ('item _ ('paragraph _ ('text _ "bar")))) >+ ('paragraph _ ('text _ "Foo"))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item _ ('paragraph _ ('text _ "baz"))) >+ ('item _ ('paragraph _ ('text _ "bar")))) >+ ('paragraph _ ('text _ "Foo")))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list must start with 1 to interrupt a paragraph >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:55 >source: >+ (test-assert >+ "parse-blocks, list must start with 1 to interrupt a paragraph" >+ (match result >+ (('document >+ _ >+ ('paragraph >+ _ >+ ('text >+ _ >+ "The number of windows in my house is\n14. The number of doors is 6."))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('paragraph >+ _ >+ ('text >+ _ >+ "The number of windows in my house is\n14. The number of doors is 6.")))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >*** Expected: ((quote document) _ ((quote paragraph) _ ((quote text) _ "The number of windows in my house is\n14. The number of doors is 6."))) >*** Result: (document ((closed . #f)) (list ((type . ordered) (start . 14) (tight . #t) (delimiter . ".")) (item ((padding . 5)) (paragraph ((closed . #f)) (text ((closed . #t)) "The number of doors is 6.")))) (paragraph ((closed . #f)) (text ((closed . #t)) "The number of windows in my house is"))) >actual-value: #f >result: FAIL > >test-name: parse-blocks, list must start with 1 to interrupt a paragraph >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:61 >source: >+ (test-assert >+ "parse-blocks, list must start with 1 to interrupt a paragraph" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item _ ('paragraph _ ('text _ "The number of doors is 6.")))) >+ ('paragraph _ ('text _ "The number of windows in my house is"))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('paragraph _ ('text _ "The number of doors is 6.")))) >+ ('paragraph >+ _ >+ ('text _ "The number of windows in my house is")))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list there can be any number of blank lines between items >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:69 >source: >+ (test-assert >+ "parse-blocks, list there can be any number of blank lines between items" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item _ ('paragraph _ ('text _ "baz"))) >+ ('item _ ('paragraph _ ('text _ "bar"))) >+ ('item _ ('paragraph _ ('text _ "foo"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item _ ('paragraph _ ('text _ "baz"))) >+ ('item _ ('paragraph _ ('text _ "bar"))) >+ ('item _ ('paragraph _ ('text _ "foo")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list there can be any number of blank lines between items >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:82 >source: >+ (test-assert >+ "parse-blocks, list there can be any number of blank lines between items" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('list >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('paragraph _ ('text _ "bim")) >+ ('paragraph _ ('text _ "baz")))) >+ ('paragraph _ ('text _ "bar"))) >+ ('paragraph _ ('text _ "foo")))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('list >+ _ >+ ('list >+ _ >+ ('item >+ _ >+ ('paragraph _ ('text _ "bim")) >+ ('paragraph _ ('text _ "baz")))) >+ ('paragraph _ ('text _ "bar"))) >+ ('paragraph _ ('text _ "foo"))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >*** Expected: ((quote document) _ ((quote list) _ ((quote list) _ ((quote list) _ ((quote item) _ ((quote paragraph) _ ((quote text) _ "bim")) ((quote paragraph) _ ((quote text) _ "baz")))) ((quote paragraph) _ ((quote text) _ "bar"))) ((quote paragraph) _ ((quote text) _ "foo")))) >*** Result: (document ((closed . #f)) (list ((type . bullet) (tight . #t) (bullet . "-")) (item ((padding . 2)) (list ((type . bullet) (tight . #t) (bullet . "-")) (item ((padding . 2)) (list ((tight . #f) (type . bullet) (tight . #t) (bullet . "-")) (item ((padding . 2)) (paragraph ((closed . #f)) (text ((closed . #t)) "bam")) (paragraph ((closed . #f)) (text ((closed . #t)) "baz")))) (paragraph ((closed . #f)) (text ((closed . #t)) "bar")))) (paragraph ((closed . #f)) (text ((closed . #t)) "foo"))))) >actual-value: #f >result: FAIL > >test-name: parse-blocks, separate consecutive lists of the same type with blank HTML comment >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:100 >source: >+ (test-assert >+ "parse-blocks, separate consecutive lists of the same type with blank HTML comment" >+ (match result >+ (('document _) #t) >+ (x (format #t "*** Expected: ~s\n" '('document _)) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >*** Expected: ((quote document) _) >*** Result: (document ((closed . #f)) (list ((type . bullet) (tight . #t) (bullet . "-")) (item ((padding . 2)) (paragraph ((closed . #f)) (text ((closed . #t)) "bim"))) (item ((closed . #t) (padding . 2)) (paragraph ((closed . #f)) (text ((closed . #t)) "baz")))) (paragraph ((closed . #f)) (text ((closed . #t)) "<!-- -->")) (list ((closed . #t) (type . bullet) (tight . #t) (bullet . "-")) (item ((closed . #t) (padding . 2)) (paragraph ((closed . #f)) (text ((closed . #t)) "bar"))) (item ((closed . #t) (padding . 2)) (paragraph ((closed . #f)) (text ((closed . #t)) "foo"))))) >actual-value: #f >result: FAIL > >test-name: parse-blocks, separate a list from indented code block with blank HTML comment >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:110 >source: >+ (test-assert >+ "parse-blocks, separate a list from indented code block with blank HTML comment" >+ (match result >+ (('document _) #t) >+ (x (format #t "*** Expected: ~s\n" '('document _)) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >*** Expected: ((quote document) _) >*** Result: (document ((closed . #f)) (code-block ((closed . #f)) "code") (paragraph ((closed . #f)) (text ((closed . #t)) "<!-- -->")) (list ((tight . #f) (closed . #t) (type . bullet) (tight . #t) (bullet . "-")) (item ((closed . #t) (padding . 4)) (paragraph ((closed . #f)) (text ((closed . #t)) "foo"))) (item ((closed . #t) (padding . 4)) (paragraph ((closed . #f)) (text ((closed . #t)) "notcode")) (paragraph ((closed . #f)) (text ((closed . #t)) "foo"))))) >actual-value: #f >result: FAIL > >test-name: parse-blocks, list need not be indented to the same level >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:124 >source: >+ (test-assert >+ "parse-blocks, list need not be indented to the same level" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item _ ('paragraph _ ('text _ "i"))) >+ ('item _ ('paragraph _ ('text _ "h"))) >+ ('item _ ('paragraph _ ('text _ "g"))) >+ ('item _ ('paragraph _ ('text _ "f"))) >+ ('item _ ('paragraph _ ('text _ "e"))) >+ ('item _ ('paragraph _ ('text _ "d"))) >+ ('item _ ('paragraph _ ('text _ "c"))) >+ ('item _ ('paragraph _ ('text _ "b"))) >+ ('item _ ('paragraph _ ('text _ "a"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item _ ('paragraph _ ('text _ "i"))) >+ ('item _ ('paragraph _ ('text _ "h"))) >+ ('item _ ('paragraph _ ('text _ "g"))) >+ ('item _ ('paragraph _ ('text _ "f"))) >+ ('item _ ('paragraph _ ('text _ "e"))) >+ ('item _ ('paragraph _ ('text _ "d"))) >+ ('item _ ('paragraph _ ('text _ "c"))) >+ ('item _ ('paragraph _ ('text _ "b"))) >+ ('item _ ('paragraph _ ('text _ "a")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >*** Expected: ((quote document) _ ((quote list) _ ((quote item) _ ((quote paragraph) _ ((quote text) _ "i"))) ((quote item) _ ((quote paragraph) _ ((quote text) _ "h"))) ((quote item) _ ((quote paragraph) _ ((quote text) _ "g"))) ((quote item) _ ((quote paragraph) _ ((quote text) _ "f"))) ((quote item) _ ((quote paragraph) _ ((quote text) _ "e"))) ((quote item) _ ((quote paragraph) _ ((quote text) _ "d"))) ((quote item) _ ((quote paragraph) _ ((quote text) _ "c"))) ((quote item) _ ((quote paragraph) _ ((quote text) _ "b"))) ((quote item) _ ((quote paragraph) _ ((quote text) _ "a"))))) >*** Result: (document ((closed . #f)) (list ((type . bullet) (tight . #t) (bullet . "-")) (item ((padding . 2)) (paragraph ((closed . #f)) (text ((closed . #t)) "i"))) (item ((closed . #t) (padding . 3)) (paragraph ((closed . #f)) (text ((closed . #t)) "h"))) (item ((closed . #t) (padding . 4)) (paragraph ((closed . #f)) (text ((closed . #t)) "g"))) (item ((closed . #t) (padding . 5)) (paragraph ((closed . #f)) (text ((closed . #t)) "f")))) (code-block ((closed . #t) (closed . #f)) "- e") (list ((closed . #t) (type . bullet) (tight . #t) (bullet . "-")) (item ((closed . #t) (padding . 5)) (paragraph ((closed . #f)) (text ((closed . #t)) "d"))) (item ((closed . #t) (padding . 4)) (paragraph ((closed . #f)) (text ((closed . #t)) "c"))) (item ((closed . #t) (padding . 3)) (paragraph ((closed . #f)) (text ((closed . #t)) "b"))) (item ((closed . #t) (padding . 2)) (paragraph ((closed . #f)) (text ((closed . #t)) "a"))))) >actual-value: #f >result: FAIL > >test-name: parse-blocks, list need not be indented to the same level >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:146 >source: >+ (test-assert >+ "parse-blocks, list need not be indented to the same level" >+ (match result >+ (('document >+ _ >+ ('list >+ _ >+ ('item _ ('paragraph _ ('text _ "c"))) >+ ('item _ ('paragraph _ ('text _ "b"))) >+ ('item _ ('paragraph _ ('text _ "a"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ _ >+ ('item _ ('paragraph _ ('text _ "c"))) >+ ('item _ ('paragraph _ ('text _ "b"))) >+ ('item _ ('paragraph _ ('text _ "a")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >*** Expected: ((quote document) _ ((quote list) _ ((quote item) _ ((quote paragraph) _ ((quote text) _ "c"))) ((quote item) _ ((quote paragraph) _ ((quote text) _ "b"))) ((quote item) _ ((quote paragraph) _ ((quote text) _ "a"))))) >*** Result: (document ((closed . #f)) (code-block ((closed . #f)) "3. c") (list ((tight . #f) (closed . #t) (type . ordered) (start . 1) (tight . #t) (delimiter . ".")) (item ((closed . #t) (padding . 5)) (paragraph ((closed . #f)) (text ((closed . #t)) "b"))) (item ((closed . #t) (padding . 3)) (paragraph ((closed . #f)) (text ((closed . #t)) "a"))))) >actual-value: #f >result: FAIL > >test-name: parse-blocks, list with a blank line between items is loose >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:158 >source: >+ (test-assert >+ "parse-blocks, list with a blank line between items is loose" >+ (match result >+ (('document >+ _ >+ ('list >+ list-data >+ ('item _ ('paragraph _ ('text _ "c"))) >+ ('item _ ('paragraph _ ('text _ "b"))) >+ ('item _ ('paragraph _ ('text _ "a"))))) >+ (test-asserts (list-tight? list-data) #f)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ list-data >+ ('item _ ('paragraph _ ('text _ "c"))) >+ ('item _ ('paragraph _ ('text _ "b"))) >+ ('item _ ('paragraph _ ('text _ "a")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list with a blank line between items is loose >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:170 >source: >+ (test-assert >+ "parse-blocks, list with a blank line between items is loose" >+ (match result >+ (('document >+ _ >+ ('list >+ list-data >+ ('item _ ('paragraph _ ('text _ "c"))) >+ ('item _) >+ ('item _ ('paragraph _ ('text _ "a"))))) >+ (test-asserts (list-tight? list-data) #f)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ list-data >+ ('item _ ('paragraph _ ('text _ "c"))) >+ ('item _) >+ ('item _ ('paragraph _ ('text _ "a")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list with a list item with two block level elements is loose >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:182 >source: >+ (test-assert >+ "parse-blocks, list with a list item with two block level elements is loose" >+ (match result >+ (('document >+ _ >+ ('list >+ list-data >+ ('item _ ('paragraph _ ('text _ "d"))) >+ ('item >+ _ >+ ('paragraph _ ('text _ "c")) >+ ('paragraph _ ('text _ "b"))) >+ ('item _ ('paragraph _ ('text _ "a"))))) >+ (test-asserts (list-tight? list-data) #f)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ list-data >+ ('item _ ('paragraph _ ('text _ "d"))) >+ ('item >+ _ >+ ('paragraph _ ('text _ "c")) >+ ('paragraph _ ('text _ "b"))) >+ ('item _ ('paragraph _ ('text _ "a")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list with a list item with two block level elements is loose >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:197 >source: >+ (test-assert >+ "parse-blocks, list with a list item with two block level elements is loose" >+ (match result >+ (('document >+ _ >+ ('list >+ list-data >+ ('item _ ('paragraph _ ('text _ "d"))) >+ ('item _ ('paragraph _ ('text _ "b"))) >+ ('item _ ('paragraph _ ('text _ "a"))))) >+ (test-asserts (list-tight? list-data) #f)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ list-data >+ ('item _ ('paragraph _ ('text _ "d"))) >+ ('item _ ('paragraph _ ('text _ "b"))) >+ ('item _ ('paragraph _ ('text _ "a")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list with blank lines in code block are tight >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:210 >source: >+ (test-assert >+ "parse-blocks, list with blank lines in code block are tight" >+ (match result >+ (('document >+ _ >+ ('list >+ list-data >+ ('item _ ('paragraph _ ('text _ "c"))) >+ ('item _ ('fenced-code _ "b\n\n")) >+ ('item _ ('paragraph _ ('text _ "a"))))) >+ (test-asserts (list-tight? list-data) #t)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ list-data >+ ('item _ ('paragraph _ ('text _ "c"))) >+ ('item _ ('fenced-code _ "b\n\n")) >+ ('item _ ('paragraph _ ('text _ "a")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list is tight even if a sublist is loose >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:225 >source: >+ (test-assert >+ "parse-blocks, list is tight even if a sublist is loose" >+ (match result >+ (('document >+ _ >+ ('list >+ tight-list >+ ('item _ ('paragraph _ ('text _ "d"))) >+ ('item >+ _ >+ ('list >+ loose-list >+ ('item >+ _ >+ ('paragraph _ ('text _ "c")) >+ ('paragraph _ ('text _ "b")))) >+ ('paragraph _ ('text _ "a"))))) >+ (test-asserts >+ (list-tight? tight-list) >+ #t >+ (list-tight? loose-list) >+ #f)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ tight-list >+ ('item _ ('paragraph _ ('text _ "d"))) >+ ('item >+ _ >+ ('list >+ loose-list >+ ('item >+ _ >+ ('paragraph _ ('text _ "c")) >+ ('paragraph _ ('text _ "b")))) >+ ('paragraph _ ('text _ "a")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list is tight because blank line is inside a block quote >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:243 >source: >+ (test-assert >+ "parse-blocks, list is tight because blank line is inside a block quote" >+ (match result >+ (('document >+ _ >+ ('list >+ list-data >+ ('item _ ('paragraph _ ('text _ "c"))) >+ ('item >+ _ >+ ('block-quote _ ('paragraph _ ('text _ "b"))) >+ ('paragraph _ ('text _ "a"))))) >+ (test-asserts (list-tight? list-data) #t)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ list-data >+ ('item _ ('paragraph _ ('text _ "c"))) >+ ('item >+ _ >+ ('block-quote _ ('paragraph _ ('text _ "b"))) >+ ('paragraph _ ('text _ "a")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list is tight because the consecutive block elements are not >separated by blank lines >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:256 >source: >+ (test-assert >+ "parse-blocks, list is tight because the consecutive block elements are not\nseparated by blank lines" >+ (match result >+ (('document >+ _ >+ ('list >+ list-data >+ ('item _ ('paragraph _ ('text _ "d"))) >+ ('item >+ _ >+ ('fenced-code _ "c") >+ ('block-quote _ ('paragraph _ ('text _ "b"))) >+ ('paragraph _ ('text _ "a"))))) >+ (test-asserts (list-tight? list-data) #t)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ list-data >+ ('item _ ('paragraph _ ('text _ "d"))) >+ ('item >+ _ >+ ('fenced-code _ "c") >+ ('block-quote _ ('paragraph _ ('text _ "b"))) >+ ('paragraph _ ('text _ "a")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list a single paragraph list is tight >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:273 >source: >+ (test-assert >+ "parse-blocks, list a single paragraph list is tight" >+ (match result >+ (('document >+ _ >+ ('list list-data ('item _ ('paragraph _ ('text _ "a"))))) >+ (test-asserts (list-tight? list-data) #t)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list list-data ('item _ ('paragraph _ ('text _ "a")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list a single paragraph is tight >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:280 >source: >+ (test-assert >+ "parse-blocks, list a single paragraph is tight" >+ (match result >+ (('document >+ _ >+ ('list >+ list-data1 >+ ('item >+ _ >+ ('list list-data2 ('item _ ('paragraph _ ('text _ "b")))) >+ ('paragraph _ ('text _ "a"))))) >+ (test-asserts >+ (list-tight? list-data1) >+ #t >+ (list-tight? list-data2) >+ #t)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ list-data1 >+ ('item >+ _ >+ ('list list-data2 ('item _ ('paragraph _ ('text _ "b")))) >+ ('paragraph _ ('text _ "a")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, list is loose because the blank line between two block elements >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:292 >source: >+ (test-assert >+ "parse-blocks, list is loose because the blank line between two block elements" >+ (match result >+ (('document >+ _ >+ ('list >+ list-data >+ ('item _ ('paragraph _ ('text _ "bar")) ('fenced-code _ "foo")))) >+ (test-asserts (list-tight? list-data) #f)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ list-data >+ ('item >+ _ >+ ('paragraph _ ('text _ "bar")) >+ ('fenced-code _ "foo"))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, outer list is loose and inner list tight >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:305 >source: >+ (test-assert >+ "parse-blocks, outer list is loose and inner list tight" >+ (match result >+ (('document >+ _ >+ ('list >+ outer-list >+ ('item >+ _ >+ ('paragraph _ ('text _ "baz")) >+ ('list inner-list ('item _ ('paragraph _ ('text _ "bar")))) >+ ('paragraph _ ('text _ "foo"))))) >+ (test-asserts >+ (list-tight? outer-list) >+ #f >+ (list-tight? inner-list) >+ #t)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ outer-list >+ ('item >+ _ >+ ('paragraph _ ('text _ "baz")) >+ ('list inner-list ('item _ ('paragraph _ ('text _ "bar")))) >+ ('paragraph _ ('text _ "foo")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, outer list is loose and inner list tight >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/lists.scm:322 >source: >+ (test-assert >+ "parse-blocks, outer list is loose and inner list tight" >+ (match result >+ (('document >+ _ >+ ('list >+ outer-list >+ ('item >+ _ >+ ('list >+ inner-list1 >+ ('item _ ('paragraph _ ('text _ "f"))) >+ ('item _ ('paragraph _ ('text _ "e")))) >+ ('paragraph _ ('text _ "d"))) >+ ('item >+ _ >+ ('list >+ inner-list2 >+ ('item _ ('paragraph _ ('text _ "c"))) >+ ('item _ ('paragraph _ ('text _ "b")))) >+ ('paragraph _ ('text _ "a"))))) >+ (test-asserts >+ (list-tight? outer-list) >+ #f >+ (list-tight? inner-list1) >+ #t >+ (list-tight? inner-list2) >+ #t)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('list >+ outer-list >+ ('item >+ _ >+ ('list >+ inner-list1 >+ ('item _ ('paragraph _ ('text _ "f"))) >+ ('item _ ('paragraph _ ('text _ "e")))) >+ ('paragraph _ ('text _ "d"))) >+ ('item >+ _ >+ ('list >+ inner-list2 >+ ('item _ ('paragraph _ ('text _ "c"))) >+ ('item _ ('paragraph _ ('text _ "b")))) >+ ('paragraph _ ('text _ "a")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >*** Computed: (list-tight? inner-list2) => #f >*** Expected: #t >actual-value: #f >result: FAIL > > >FAIL: tests/blocks/setext-headings >================================== > >test-name: parse-blocks, simple setext headings >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/setext-headings.scm:24 >source: >+ (test-assert >+ "parse-blocks, simple setext headings" >+ (match result >+ (('document >+ _ >+ ('heading heading-data1 ('text _ "Foo *bar*")) >+ ('heading heading-data2 ('text _ "Foo *bar*"))) >+ (test-asserts >+ (heading-level heading-data1) >+ 2 >+ (heading-level heading-data2) >+ 1)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('heading heading-data1 ('text _ "Foo *bar*")) >+ ('heading heading-data2 ('text _ "Foo *bar*")))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, setext headings may span more than one line >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/setext-headings.scm:37 >source: >+ (test-assert >+ "parse-blocks, setext headings may span more than one line" >+ (match result >+ (('document _ ('heading heading-data ('text _ "Foo *bar\nbaz*"))) >+ (test-asserts (heading-level heading-data) 1)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('heading heading-data ('text _ "Foo *bar\nbaz*")))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >*** Expected: ((quote document) _ ((quote heading) heading-data ((quote text) _ "Foo *bar\nbaz*"))) >*** Result: (document ((closed . #f)) (paragraph ((closed . #f)) (text ((closed . #t)) "Foo *bar\nbaz*\n===="))) >actual-value: #f >result: FAIL > >test-name: parse-blocks, setext heading underline can be any length >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/setext-headings.scm:45 >source: >+ (test-assert >+ "parse-blocks, setext heading underline can be any length" >+ (match result >+ (('document >+ _ >+ ('heading heading-data1 ('text _ "Foo")) >+ ('heading heading-data2 ('text _ "Foo"))) >+ (test-asserts >+ (heading-level heading-data1) >+ 1 >+ (heading-level heading-data2) >+ 2)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('heading heading-data1 ('text _ "Foo")) >+ ('heading heading-data2 ('text _ "Foo")))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, setext heading content can be indented up to three spaces >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/setext-headings.scm:57 >source: >+ (test-assert >+ "parse-blocks, setext heading content can be indented up to three spaces" >+ (match result >+ (('document >+ _ >+ ('heading heading-data1 ('text _ "Foo")) >+ ('heading heading-data2 ('text _ "Foo")) >+ ('heading heading-data3 ('text _ "Foo"))) >+ (test-asserts >+ (heading-level heading-data1) >+ 1 >+ (heading-level heading-data2) >+ 2 >+ (heading-level heading-data3) >+ 2)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('heading heading-data1 ('text _ "Foo")) >+ ('heading heading-data2 ('text _ "Foo")) >+ ('heading heading-data3 ('text _ "Foo")))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, setext heading four spaces indent is too much >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/setext-headings.scm:74 >source: >+ (test-assert >+ "parse-blocks, setext heading four spaces indent is too much" >+ (match result >+ (('document >+ _ >+ ('thematic-break _) >+ ('code-block _ "Foo\n---\n\nFoo")) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('thematic-break _) >+ ('code-block _ "Foo\n---\n\nFoo"))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, setext heading underline can be indented up to three spaces >and may have trailing spaces >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/setext-headings.scm:84 >source: >+ (test-assert >+ "parse-blocks, setext heading underline can be indented up to three spaces\nand may have trailing spaces" >+ (match result >+ (('document _ ('heading heading-data ('text _ "Foo"))) >+ (test-asserts (heading-level heading-data) 2)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document _ ('heading heading-data ('text _ "Foo")))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, setext heading underline four spaces it too much >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/setext-headings.scm:92 >source: >+ (test-assert >+ "parse-blocks, setext heading underline four spaces it too much" >+ (match result >+ (('document _ ('paragraph _ ('text _ "Foo\n---"))) #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document _ ('paragraph _ ('text _ "Foo\n---")))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, setext heading underline cannot contain internal spaces >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/setext-headings.scm:98 >source: >+ (test-assert >+ "parse-blocks, setext heading underline cannot contain internal spaces" >+ (match result >+ (('document >+ _ >+ ('thematic-break _) >+ ('paragraph _ ('text _ "Foo")) >+ ('paragraph _ ('text _ "Foo\n= ="))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('thematic-break _) >+ ('paragraph _ ('text _ "Foo")) >+ ('paragraph _ ('text _ "Foo\n= =")))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, setext heading underline cannot be a lazy continuation line >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/setext-headings.scm:109 >source: >+ (test-assert >+ "parse-blocks, setext heading underline cannot be a lazy continuation line" >+ (match result >+ (('document >+ _ >+ ('thematic-break _) >+ ('block-quote _ ('paragraph _ ('text _ "Foo")))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('thematic-break _) >+ ('block-quote _ ('paragraph _ ('text _ "Foo"))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, setext heading underline cannot be a lazy continuation line >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/setext-headings.scm:117 >source: >+ (test-assert >+ "parse-blocks, setext heading underline cannot be a lazy continuation line" >+ (match result >+ (('document >+ _ >+ ('block-quote _ ('paragraph _ ('text _ "foo\nbar\n===")))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('block-quote _ ('paragraph _ ('text _ "foo\nbar\n==="))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, setext heading underline cannot be a lazy continuation line >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/setext-headings.scm:124 >source: >+ (test-assert >+ "parse-blocks, setext heading underline cannot be a lazy continuation line" >+ (match result >+ (('document >+ _ >+ ('thematic-break _) >+ ('list _ ('item _ ('paragraph _ ('text _ "Foo"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('thematic-break _) >+ ('list _ ('item _ ('paragraph _ ('text _ "Foo")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, setext heading a blank line is needed between a paragraph >and a setext heading >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/setext-headings.scm:132 >source: >+ (test-assert >+ "parse-blocks, setext heading a blank line is needed between a paragraph\nand a setext heading" >+ (match result >+ (('document _ ('heading heading-data ('text _ "Foo\nBar"))) >+ (test-asserts (heading-level heading-data) 2)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document _ ('heading heading-data ('text _ "Foo\nBar")))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >*** Expected: ((quote document) _ ((quote heading) heading-data ((quote text) _ "Foo\nBar"))) >*** Result: (document ((closed . #f)) (thematic-break ((closed . #t))) (paragraph ((closed . #f)) (text ((closed . #t)) "Foo\nBar"))) >actual-value: #f >result: FAIL > >test-name: parse-blocks, setext heading a blank line is not required before or after >setext headings >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/setext-headings.scm:141 >source: >+ (test-assert >+ "parse-blocks, setext heading a blank line is not required before or after\nsetext headings" >+ (match result >+ (('document >+ _ >+ ('paragraph _ ('text _ "Baz")) >+ ('heading heading-data1 ('text _ "Bar")) >+ ('heading heading-data2 ('text _ "Foo")) >+ ('thematic-break _)) >+ (test-asserts >+ (heading-level heading-data1) >+ 2 >+ (heading-level heading-data2) >+ 2)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('paragraph _ ('text _ "Baz")) >+ ('heading heading-data1 ('text _ "Bar")) >+ ('heading heading-data2 ('text _ "Foo")) >+ ('thematic-break _))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, setext headings cannot be empty >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/setext-headings.scm:157 >source: >+ (test-assert >+ "parse-blocks, setext headings cannot be empty" >+ (match result >+ (('document _ ('paragraph _ ('text _ "===="))) #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document _ ('paragraph _ ('text _ "====")))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, setext heading text lines must not be interpretable as block >constructs other than paragraphs >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/setext-headings.scm:163 >source: >+ (test-assert >+ "parse-blocks, setext heading text lines must not be interpretable as block\nconstructs other than paragraphs" >+ (match result >+ (('document _ ('thematic-break _) ('thematic-break _)) #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document _ ('thematic-break _) ('thematic-break _))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, setext heading text lines must not be interpretable as block >constructs other than paragraphs >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/setext-headings.scm:171 >source: >+ (test-assert >+ "parse-blocks, setext heading text lines must not be interpretable as block\nconstructs other than paragraphs" >+ (match result >+ (('document >+ _ >+ ('thematic-break _) >+ ('list _ ('item _ ('paragraph _ ('text _ "foo"))))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('thematic-break _) >+ ('list _ ('item _ ('paragraph _ ('text _ "foo")))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, setext heading text lines must not be interpretable as block >constructs other than paragraphs >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/setext-headings.scm:179 >source: >+ (test-assert >+ "parse-blocks, setext heading text lines must not be interpretable as block\nconstructs other than paragraphs" >+ (match result >+ (('document _ ('thematic-break _) ('code-block _ "foo")) #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document _ ('thematic-break _) ('code-block _ "foo"))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, setext heading text lines must not be interpretable as block >constructs other than paragraphs >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/setext-headings.scm:187 >source: >+ (test-assert >+ "parse-blocks, setext heading text lines must not be interpretable as block\nconstructs other than paragraphs" >+ (match result >+ (('document >+ _ >+ ('thematic-break _) >+ ('block-quote _ ('paragraph _ ('text _ "foo")))) >+ #t) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document >+ _ >+ ('thematic-break _) >+ ('block-quote _ ('paragraph _ ('text _ "foo"))))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > >test-name: parse-blocks, setext heading use a backslash escape to allow > >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/blocks/setext-headings.scm:195 >source: >+ (test-assert >+ "parse-blocks, setext heading use a backslash escape to allow >" >+ (match result >+ (('document _ ('heading heading-data ('text _ "\\> foo"))) >+ (test-asserts (heading-level heading-data) 2)) >+ (x (format >+ #t >+ "*** Expected: ~s\n" >+ '('document _ ('heading heading-data ('text _ "\\> foo")))) >+ (format #t "*** Result: ~s\n" x) >+ #f))) >actual-value: #t >result: PASS > > >SKIP: tests/inlines/code-spans >============================== > >test-name: parse-inlines, simple code span >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/code-spans.scm:34 >source: >+ (test-assert >+ "parse-inlines, simple code span" >+ (match (parse-inlines (make-paragraph "`foo`")) >+ (('document >+ doc-data >+ ('paragraph para-data ('code-span code-data "foo"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, two backs ticks >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/code-spans.scm:43 >source: >+ (test-assert >+ "parse-inlines, two backs ticks" >+ (match (parse-inlines (make-paragraph "`` foo ` bar ``")) >+ (('document >+ doc-data >+ ('paragraph para-data ('code-span code-data "foo ` bar"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, code spans stripping leading and trailing spaces >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/code-spans.scm:52 >source: >+ (test-assert >+ "parse-inlines, code spans stripping leading and trailing spaces" >+ (match (parse-inlines (make-paragraph "` `` `")) >+ (('document >+ doc-data >+ ('paragraph para-data ('code-span code-data "``"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, code spans line endings are treated like spaces >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/code-spans.scm:61 >source: >+ (test-assert >+ "parse-inlines, code spans line endings are treated like spaces" >+ (match (parse-inlines (make-paragraph "``\nfoo\n``")) >+ (('document >+ doc-data >+ ('paragraph para-data ('code-span code-data "foo"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, code spans interior spaces and line endings are collasped into single spaces >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/code-spans.scm:70 >source: >+ (test-assert >+ "parse-inlines, code spans interior spaces and line endings are collasped into single spaces" >+ (match (parse-inlines (make-paragraph "`foo bar\n baz`")) >+ (('document >+ doc-data >+ ('paragraph para-data ('code-span code-data "foo bar baz"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, code spans with two ticks inside >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/code-spans.scm:79 >source: >+ (test-assert >+ "parse-inlines, code spans with two ticks inside" >+ (match (parse-inlines (make-paragraph "`foo `` bar`")) >+ (('document >+ doc-data >+ ('paragraph para-data ('code-span code-data "foo `` bar"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, backslash escapes do not work in code spans >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/code-spans.scm:89 >source: >+ (test-assert >+ "parse-inlines, backslash escapes do not work in code spans" >+ (match (parse-inlines (make-paragraph "`foo\\`bar`")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data2 "`") >+ ('text text-data "bar") >+ ('code-span code-data "foo\\"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, code spans backticks have higher precedence, emphasized text >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/code-spans.scm:102 >source: >+ (test-assert >+ "parse-inlines, code spans backticks have higher precedence, emphasized text" >+ (match (parse-inlines (make-paragraph "*foo`*`")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('code-span code-data "*") >+ ('text text-data "foo") >+ ('text text-data "*"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, code spans backticks have higher precedence, link >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/code-spans.scm:115 >source: >+ (test-assert >+ "parse-inlines, code spans backticks have higher precedence, link" >+ (match (parse-inlines (make-paragraph "[not a `link](/foo`)")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data2 ")") >+ ('code-span code-data "link](/foo") >+ ('text text-data "not a ") >+ ('text text-data "["))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, code spans have same precedence as HTML tags, code >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/code-spans.scm:129 >source: >+ (test-assert >+ "parse-inlines, code spans have same precedence as HTML tags, code" >+ (match (parse-inlines (make-paragraph "`<a href=\"`\">`")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "`") >+ ('text text-data2 "\">") >+ ('code-span code-data "<a href=\""))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, code spans have same precedence as HTML tags, HTML tag >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/code-spans.scm:144 >source: >+ (test-assert >+ "parse-inlines, code spans have same precedence as HTML tags, HTML tag" >+ (match (parse-inlines (make-paragraph "<a href=\"`\">`")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data2 "\">`") >+ ('code-span code-data "<a href=\""))) >+ #t) >+ (x (pk 'fail x #f)))) > >;;; (fail (document ((closed . #f)) (paragraph ((closed . #f)) (code-span ((closed . #f)) "\">") (text ((closed . #t)) "a href=\"") (text ((closed . #t)) "<"))) #f) >actual-value: #f >result: XFAIL > >test-name: parse-inlines, code spans have same precedence as autolink, code >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/code-spans.scm:155 >source: >+ (test-assert >+ "parse-inlines, code spans have same precedence as autolink, code" >+ (match (parse-inlines (make-paragraph "`<http://foo.bar.`baz>`")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "`") >+ ('text text-data2 "baz>") >+ ('code-span code-data "<http://foo.bar."))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, code spans have same precedence as autolink, autolink >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/code-spans.scm:168 >source: >+ (test-assert >+ "parse-inlines, code spans have same precedence as autolink, autolink" >+ (match (parse-inlines (make-paragraph "<http://foo.bar.`baz>`")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data2 "`") >+ ('link link-data ('text text-data "http://foo.bar.`baz")))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, backticks with no matching backtick are literal backticks >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/code-spans.scm:179 >source: >+ (test-assert >+ "parse-inlines, backticks with no matching backtick are literal backticks" >+ (match (parse-inlines (make-paragraph "```foo``")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data3 "``") >+ ('text text-data2 "foo") >+ ('text text-data1 "```"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, backticks with no matching backtick are literal backticks >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/code-spans.scm:192 >source: >+ (test-assert >+ "parse-inlines, backticks with no matching backtick are literal backticks" >+ (match (parse-inlines (make-paragraph "`foo")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data2 "foo") >+ ('text text-data1 "`"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > > >SKIP: tests/inlines/emphasis >============================ > >test-name: parse-inlines, simple emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:34 >source: >+ (test-assert >+ "parse-inlines, simple emphasis" >+ (match (parse-inlines (make-paragraph "*foo bar*")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data ('text text-data "foo bar")))) >+ (em? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, not emphasis because whitespace after * >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:43 >source: >+ (test-assert >+ "parse-inlines, not emphasis because whitespace after *" >+ (match (parse-inlines (make-paragraph "a * foo bar*")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "*") >+ ('text text-data2 " foo bar") >+ ('text text-data3 "*") >+ ('text text-data4 "a "))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, not emphasis because punctuation after alphanumeric before >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:54 >source: >+ (test-assert >+ "parse-inlines, not emphasis because punctuation after alphanumeric before" >+ (match (parse-inlines (make-paragraph "a*\"foo\"*")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "*") >+ ('text text-data2 "\"foo\"") >+ ('text text-data3 "*") >+ ('text text-data4 "a"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, not emphasis because unicode nonbreaking spaces count as whitespace >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:65 >source: >+ (test-assert >+ "parse-inlines, not emphasis because unicode nonbreaking spaces count as whitespace" >+ (match (parse-inlines (make-paragraph "*\xa0a\xa0*")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "*") >+ ('text text-data2 "\xa0a\xa0") >+ ('text text-data3 "*"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis with intraword emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:75 >source: >+ (test-assert >+ "parse-inlines, emphasis with intraword emphasis" >+ (match (parse-inlines (make-paragraph "foo*bar*")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data ('text text-data "bar")) >+ ('text text-data "foo"))) >+ (em? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis with intraword emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:86 >source: >+ (test-assert >+ "parse-inlines, emphasis with intraword emphasis" >+ (match (parse-inlines (make-paragraph "5*6*78")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data "78") >+ ('emphasis emphasis-data ('text text-data "6")) >+ ('text text-data "5"))) >+ (em? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, simple _ emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:97 >source: >+ (test-assert >+ "parse-inlines, simple _ emphasis" >+ (match (parse-inlines (make-paragraph "_foo bar_")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data ('text text-data "foo bar")))) >+ (em? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, not emphasis because punctuation after alphanumeric before >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:106 >source: >+ (test-assert >+ "parse-inlines, not emphasis because punctuation after alphanumeric before" >+ (match (parse-inlines (make-paragraph "a_\"foo\"_")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "_") >+ ('text text-data2 "\"foo\"") >+ ('text text-data3 "_") >+ ('text text-data4 "a"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis with _ is not allowed inside words >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:117 >source: >+ (test-assert >+ "parse-inlines, emphasis with _ is not allowed inside words" >+ (match (parse-inlines (make-paragraph "foo_bar_")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "_") >+ ('text text-data2 "bar") >+ ('text text-data3 "_") >+ ('text text-data4 "foo"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis with _ is not allowed inside words >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:128 >source: >+ (test-assert >+ "parse-inlines, emphasis with _ is not allowed inside words" >+ (match (parse-inlines (make-paragraph "5_6_78")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "78") >+ ('text text-data2 "_") >+ ('text text-data3 "6") >+ ('text text-data4 "_") >+ ('text text-data5 "5"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis with _ is not allowed inside words >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:140 >source: >+ (test-assert >+ "parse-inlines, emphasis with _ is not allowed inside words" >+ (match (parse-inlines (make-paragraph "пÑиÑÑанÑм_ÑÑÑемÑÑÑÑ_")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "_") >+ ('text text-data2 "ÑÑÑемÑÑÑÑ") >+ ('text text-data3 "_") >+ ('text text-data4 "пÑиÑÑанÑм"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis with _ is not allowed to have delimiters to be both flanking >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:151 >source: >+ (test-assert >+ "parse-inlines, emphasis with _ is not allowed to have delimiters to be both flanking" >+ (match (parse-inlines (make-paragraph "aa_\"bb\"_cc")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "cc") >+ ('text text-data2 "_") >+ ('text text-data3 "\"bb\"") >+ ('text text-data4 "_") >+ ('text text-data5 "aa"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis with _ is allowed when preceded by punctuation >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:163 >source: >+ (test-assert >+ "parse-inlines, emphasis with _ is allowed when preceded by punctuation" >+ (match (parse-inlines (make-paragraph "foo-_(bar)_")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data ('text text-data1 "(bar)")) >+ ('text text-data2 "foo-"))) >+ (em? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis delimiters must match >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:173 >source: >+ (test-assert >+ "parse-inlines, emphasis delimiters must match" >+ (match (parse-inlines (make-paragraph "_foo*")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "*") >+ ('text text-data2 "foo") >+ ('text text-data3 "_"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis closing delimiter must not be preceded by whitespace >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:183 >source: >+ (test-assert >+ "parse-inlines, emphasis closing delimiter must not be preceded by whitespace" >+ (match (parse-inlines (make-paragraph "*foo bar *")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "*") >+ ('text text-data2 "foo bar ") >+ ('text text-data3 "*"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, not emphasis because second * is not right-flanking delimiter run >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:193 >source: >+ (test-assert >+ "parse-inlines, not emphasis because second * is not right-flanking delimiter run" >+ (match (parse-inlines (make-paragraph "*(*foo)")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "foo)") >+ ('text text-data2 "*") >+ ('text text-data3 "(") >+ ('text text-data4 "*"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis example showing previous restriction benefits >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:204 >source: >+ (test-assert >+ "parse-inlines, emphasis example showing previous restriction benefits" >+ (match (parse-inlines (make-paragraph "*(*foo*)*")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('text text-data1 ")") >+ ('emphasis emphasis-data2 ('text text-data2 "foo")) >+ ('text text-data3 "(")))) >+ (and (em? emphasis-data1) (em? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis intraword emphasis with * is allowed >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:218 >source: >+ (test-assert >+ "parse-inlines, emphasis intraword emphasis with * is allowed" >+ (match (parse-inlines (make-paragraph "*foo*bar")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data2 "bar") >+ ('emphasis emphasis-data ('text text-data1 "foo")))) >+ (em? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, not emphasis because the closing _ is preceded by whitespace >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:228 >source: >+ (test-assert >+ "parse-inlines, not emphasis because the closing _ is preceded by whitespace" >+ (match (parse-inlines (make-paragraph "_foo bar _")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "_") >+ ('text text-data2 "foo bar ") >+ ('text text-data3 "_"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, not emphasis because the second _ is preceded by punctuation and >followed by an alphanumeric >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:238 >source: >+ (test-assert >+ "parse-inlines, not emphasis because the second _ is preceded by punctuation and\nfollowed by an alphanumeric" >+ (match (parse-inlines (make-paragraph "_(_foo)")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "foo)") >+ ('text text-data2 "_") >+ ('text text-data3 "(") >+ ('text text-data4 "_"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis within emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:250 >source: >+ (test-assert >+ "parse-inlines, emphasis within emphasis" >+ (match (parse-inlines (make-paragraph "_(_foo_)_")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('text text-data1 ")") >+ ('emphasis emphasis-data2 ('text text-data2 "foo")) >+ ('text text-data3 "(")))) >+ (and (em? emphasis-data1) (em? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, intraword emphasis is disallowed for _ >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:264 >source: >+ (test-assert >+ "parse-inlines, intraword emphasis is disallowed for _" >+ (match (parse-inlines (make-paragraph "_foo_bar")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "bar") >+ ('text text-data2 "_") >+ ('text text-data3 "foo") >+ ('text text-data4 "_"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, intraword emphasis is disallowed for _ >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:275 >source: >+ (test-assert >+ "parse-inlines, intraword emphasis is disallowed for _" >+ (match (parse-inlines (make-paragraph "_пÑиÑÑанÑм_ÑÑÑемÑÑÑÑ")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "ÑÑÑемÑÑÑÑ") >+ ('text text-data2 "_") >+ ('text text-data3 "пÑиÑÑанÑм") >+ ('text text-data4 "_"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, intraword emphasis is disallowed for _ >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:287 >source: >+ (test-assert >+ "parse-inlines, intraword emphasis is disallowed for _" >+ (match (parse-inlines (make-paragraph "_foo_bar_baz_")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data >+ ('text text-data1 "baz") >+ ('text text-data2 "_") >+ ('text text-data3 "bar") >+ ('text text-data4 "_") >+ ('text text-data5 "foo")))) >+ (em? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis closing delimiter is followed by punctuation >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:300 >source: >+ (test-assert >+ "parse-inlines, emphasis closing delimiter is followed by punctuation" >+ (match (parse-inlines (make-paragraph "_(bar)_.")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 ".") >+ ('emphasis emphasis-data ('text text-data2 "(bar)")))) >+ (em? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 5 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:314 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 5" >+ (match (parse-inlines (make-paragraph "**foo bar**")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data ('text text-data "foo bar")))) >+ (strong? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis not strong emphasis because opening delimiter >is followed by whitespace >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:323 >source: >+ (test-assert >+ "parse-inlines, emphasis not strong emphasis because opening delimiter\nis followed by whitespace" >+ (match (parse-inlines (make-paragraph "** foo bar**")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "**") >+ ('text text-data2 " foo bar") >+ ('text text-data3 "**"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis not strong emphasis because opening ** is preceded >by an alphanumeric and followed by punctuation >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:334 >source: >+ (test-assert >+ "parse-inlines, emphasis not strong emphasis because opening ** is preceded\nby an alphanumeric and followed by punctuation" >+ (match (parse-inlines (make-paragraph "a**\"foo\"**")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "**") >+ ('text text-data2 "\"foo\"") >+ ('text text-data3 "**") >+ ('text text-data4 "a"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis intraword strong emphasis with ** is permitted >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:346 >source: >+ (test-assert >+ "parse-inlines, emphasis intraword strong emphasis with ** is permitted" >+ (match (parse-inlines (make-paragraph "foo**bar**")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data ('text text-data1 "bar")) >+ ('text text-data2 "foo"))) >+ (strong? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 6 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:356 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 6" >+ (match (parse-inlines (make-paragraph "__foo bar__")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data ('text text-data "foo bar")))) >+ (strong? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis not strong emphasis because opening delimiter >is followed by whitespace >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:365 >source: >+ (test-assert >+ "parse-inlines, emphasis not strong emphasis because opening delimiter\nis followed by whitespace" >+ (match (parse-inlines (make-paragraph "__ foo bar__")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "__") >+ ('text text-data2 " foo bar") >+ ('text text-data3 "__"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis not strong emphasis because newline counts as whitespace >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:376 >source: >+ (test-assert >+ "parse-inlines, emphasis not strong emphasis because newline counts as whitespace" >+ (match (parse-inlines (make-paragraph "__\nfoo bar__")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "__") >+ ('text text-data2 "foo bar") >+ ('softbreak break-data) >+ ('text text-data3 "__"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis not strong emphasis because the opening __ is preceded >by an alphanumeric and followed by punctuation >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:387 >source: >+ (test-assert >+ "parse-inlines, emphasis not strong emphasis because the opening __ is preceded\nby an alphanumeric and followed by punctuation" >+ (match (parse-inlines (make-paragraph "a__\"foo\"__")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "__") >+ ('text text-data2 "\"foo\"") >+ ('text text-data3 "__") >+ ('text text-data4 "a"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis intraword strong emphasis is forbidden with __ >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:399 >source: >+ (test-assert >+ "parse-inlines, emphasis intraword strong emphasis is forbidden with __" >+ (match (parse-inlines (make-paragraph "foo__bar__")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "__") >+ ('text text-data2 "bar") >+ ('text text-data3 "__") >+ ('text text-data4 "foo"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis intraword strong emphasis is forbidden with __ >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:410 >source: >+ (test-assert >+ "parse-inlines, emphasis intraword strong emphasis is forbidden with __" >+ (match (parse-inlines (make-paragraph "5__6__78")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "78") >+ ('text text-data2 "__") >+ ('text text-data3 "6") >+ ('text text-data4 "__") >+ ('text text-data4 "5"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis intraword strong emphasis is forbidden with __ >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:422 >source: >+ (test-assert >+ "parse-inlines, emphasis intraword strong emphasis is forbidden with __" >+ (match (parse-inlines (make-paragraph "пÑиÑÑанÑм__ÑÑÑемÑÑÑÑ__")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "__") >+ ('text text-data2 "ÑÑÑемÑÑÑÑ") >+ ('text text-data3 "__") >+ ('text text-data4 "пÑиÑÑанÑм"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis intraword strong emphasis is forbidden with __ >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:433 >source: >+ (test-assert >+ "parse-inlines, emphasis intraword strong emphasis is forbidden with __" >+ (match (parse-inlines (make-paragraph "__foo, __bar__, baz__")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('text text-data1 ", baz") >+ ('emphasis emphasis-data2 ('text text-data2 "bar")) >+ ('text text-data3 "foo, ")))) >+ (and (strong? emphasis-data1) (strong? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis is strong emphais because it is preceded by punctuation >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:446 >source: >+ (test-assert >+ "parse-inlines, emphasis is strong emphais because it is preceded by punctuation" >+ (match (parse-inlines (make-paragraph "foo-__(bar)__")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data ('text text-data1 "(bar)")) >+ ('text text-data2 "foo-"))) >+ (strong? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis not strong emphasis because closing delimiter >is preceded by whitespace >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:456 >source: >+ (test-assert >+ "parse-inlines, emphasis not strong emphasis because closing delimiter\nis preceded by whitespace" >+ (match (parse-inlines (make-paragraph "**foo bar **")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "**") >+ ('text text-data2 "foo bar ") >+ ('text text-data3 "**"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis not strong emphasis because the second ** is preceded >by punctuation and followed by an alphanumeric >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:467 >source: >+ (test-assert >+ "parse-inlines, emphasis not strong emphasis because the second ** is preceded\nby punctuation and followed by an alphanumeric" >+ (match (parse-inlines (make-paragraph "**(**foo)")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "foo)") >+ ('text text-data2 "**") >+ ('text text-data3 "(") >+ ('text text-data3 "**"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis restriction is appreciated with these examples >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:479 >source: >+ (test-assert >+ "parse-inlines, emphasis restriction is appreciated with these examples" >+ (match (parse-inlines >+ (make-paragraph >+ "**Gomphocarpus (*Gomphocarpus physocarpus*, syn.\n*Asclepias physocarpa*)**")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('text text-data1 ")") >+ ('emphasis >+ emphasis-data2 >+ ('text text-data2 "Asclepias physocarpa")) >+ ('softbreak break-data) >+ ('text text-data3 ", syn.") >+ ('emphasis >+ emphasis-data3 >+ ('text text-data4 "Gomphocarpus physocarpus")) >+ ('text text-data5 "Gomphocarpus (")))) >+ (and (strong? emphasis-data1) >+ (em? emphasis-data2) >+ (em? emphasis-data3))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis restriction is appreciated with these examples >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:498 >source: >+ (test-assert >+ "parse-inlines, emphasis restriction is appreciated with these examples" >+ (match (parse-inlines (make-paragraph "**foo \"*bar*\" foo**")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('text text-data1 "\" foo") >+ ('emphasis emphasis-data2 ('text text-data2 "bar")) >+ ('text text-data3 "foo \"")))) >+ (and (strong? emphasis-data1) (em? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis intraword emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:511 >source: >+ (test-assert >+ "parse-inlines, emphasis intraword emphasis" >+ (match (parse-inlines (make-paragraph "**foo**bar")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data2 "bar") >+ ('emphasis emphasis-data1 ('text text-data1 "foo")))) >+ (strong? emphasis-data1)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, not strong emphasis because the closing delimiter is preceded >by whitespace >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:521 >source: >+ (test-assert >+ "parse-inlines, not strong emphasis because the closing delimiter is preceded\nby whitespace" >+ (match (parse-inlines (make-paragraph "__foo bar __")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "__") >+ ('text text-data2 "foo bar ") >+ ('text text-data3 "__"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, not strong emphasis because the second __ is preceded >by punctuation and followed by an alphanumeric >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:532 >source: >+ (test-assert >+ "parse-inlines, not strong emphasis because the second __ is preceded\nby punctuation and followed by an alphanumeric" >+ (match (parse-inlines (make-paragraph "__(__foo)")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "foo)") >+ ('text text-data2 "__") >+ ('text text-data3 "(") >+ ('text text-data3 "__"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis restriction is appreciated with this examples >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:544 >source: >+ (test-assert >+ "parse-inlines, emphasis restriction is appreciated with this examples" >+ (match (parse-inlines (make-paragraph "_(__foo__)_")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('text text-data1 ")") >+ ('emphasis emphasis-data2 ('text text-data2 "foo")) >+ ('text text-data3 "(")))) >+ (and (em? emphasis-data1) (strong? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis intraword strong emphasis is forbidden with __ >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:557 >source: >+ (test-assert >+ "parse-inlines, emphasis intraword strong emphasis is forbidden with __" >+ (match (parse-inlines (make-paragraph "__foo__bar")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "bar") >+ ('text text-data2 "__") >+ ('text text-data3 "foo") >+ ('text text-data4 "__"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis intraword strong emphasis is forbidden with __ >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:568 >source: >+ (test-assert >+ "parse-inlines, emphasis intraword strong emphasis is forbidden with __" >+ (match (parse-inlines (make-paragraph "__пÑиÑÑанÑм__ÑÑÑемÑÑÑÑ")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "ÑÑÑемÑÑÑÑ") >+ ('text text-data2 "__") >+ ('text text-data3 "пÑиÑÑанÑм") >+ ('text text-data4 "__"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis intraword strong emphasis is forbidden with __ >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:579 >source: >+ (test-assert >+ "parse-inlines, emphasis intraword strong emphasis is forbidden with __" >+ (match (parse-inlines (make-paragraph "__foo__bar__baz__")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data >+ ('text text-data1 "baz") >+ ('text text-data2 "__") >+ ('text text-data3 "bar") >+ ('text text-data4 "__") >+ ('text text-data5 "foo")))) >+ (strong? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, strong emphasis, even though the closing delimiter is both >left- and right-flanking, because it is followed by punctuation >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:592 >source: >+ (test-assert >+ "parse-inlines, strong emphasis, even though the closing delimiter is both\nleft- and right-flanking, because it is followed by punctuation" >+ (match (parse-inlines (make-paragraph "__(bar)__.")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 ".") >+ ('emphasis emphasis-data ('text text-data2 "(bar)")))) >+ (strong? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis any nonempty sequence of inline elements can >be the contents of an emphasized span. >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:606 >source: >+ (test-assert >+ "parse-inlines, emphasis any nonempty sequence of inline elements can\nbe the contents of an emphasized span." >+ (match (parse-inlines (make-paragraph "*foo [bar](/url)*")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data >+ ('link link-data ('text text-data "bar")) >+ ('text text-data2 "foo ")))) >+ (and (em? emphasis-data) (destination=? link-data "/url"))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis any nonempty sequence of inline elements can >be the contents of an emphasized span. >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:619 >source: >+ (test-assert >+ "parse-inlines, emphasis any nonempty sequence of inline elements can\nbe the contents of an emphasized span." >+ (match (parse-inlines (make-paragraph "*foo\nbar*")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data >+ ('text text-data "bar") >+ ('softbreak break-data) >+ ('text text-data "foo")))) >+ (em? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, in particular, emphasis and strong emphasis can be nested >inside emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:631 >source: >+ (test-assert >+ "parse-inlines, in particular, emphasis and strong emphasis can be nested\ninside emphasis" >+ (match (parse-inlines (make-paragraph "_foo __bar__ baz_")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('text text-data1 " baz") >+ ('emphasis emphasis-data2 ('text text-data3 "bar")) >+ ('text text-data2 "foo ")))) >+ (and (em? emphasis-data1) (strong? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, in particular, emphasis and strong emphasis can be nested >inside emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:645 >source: >+ (test-assert >+ "parse-inlines, in particular, emphasis and strong emphasis can be nested\ninside emphasis" >+ (match (parse-inlines (make-paragraph "_foo _bar_ baz_")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('text text-data1 " baz") >+ ('emphasis emphasis-data2 ('text text-data2 "bar")) >+ ('text text-data2 "foo ")))) >+ (and (em? emphasis-data1) (em? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, in particular, emphasis and strong emphasis can be nested >inside emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:659 >source: >+ (test-assert >+ "parse-inlines, in particular, emphasis and strong emphasis can be nested\ninside emphasis" >+ (match (parse-inlines (make-paragraph "__foo_ bar_")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('text text-data1 " bar") >+ ('emphasis emphasis-data2 ('text text-data2 "foo"))))) >+ (and (em? emphasis-data1) (em? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, in particular, emphasis and strong emphasis can be nested >inside emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:672 >source: >+ (test-assert >+ "parse-inlines, in particular, emphasis and strong emphasis can be nested\ninside emphasis" >+ (match (parse-inlines (make-paragraph "*foo *bar**")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('emphasis emphasis-data2 ('text text-data2 "bar")) >+ ('text text-data1 "foo ")))) >+ (and (em? emphasis-data1) (em? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, in particular, emphasis and strong emphasis can be nested >inside emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:685 >source: >+ (test-assert >+ "parse-inlines, in particular, emphasis and strong emphasis can be nested\ninside emphasis" >+ (match (parse-inlines (make-paragraph "*foo **bar** baz*")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('text text-data1 " baz") >+ ('emphasis emphasis-data2 ('text text-data2 "bar")) >+ ('text text-data3 "foo ")))) >+ (and (em? emphasis-data1) (strong? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, internal delimiters can close emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:699 >source: >+ (test-assert >+ "parse-inlines, internal delimiters can close emphasis" >+ (match (parse-inlines (make-paragraph "*foo**bar**baz*")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data1 ('text text-data1 "baz")) >+ ('emphasis emphasis-data2 ('text text-data2 "bar")) >+ ('emphasis emphasis-data3 ('text text-data3 "foo")))) >+ (and (em? emphasis-data1) >+ (em? emphasis-data2) >+ (em? emphasis-data3))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis in cases with spaces, they cannot >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:714 >source: >+ (test-assert >+ "parse-inlines, emphasis in cases with spaces, they cannot" >+ (match (parse-inlines (make-paragraph "***foo** bar*")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('text text-data1 " bar") >+ ('emphasis emphasis-data2 ('text text-data2 "foo"))))) >+ (and (em? emphasis-data1) (strong? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis in cases with spaces, they cannot >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:726 >source: >+ (test-assert >+ "parse-inlines, emphasis in cases with spaces, they cannot" >+ (match (parse-inlines (make-paragraph "*foo **bar***")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('emphasis emphasis-data2 ('text text-data2 "bar")) >+ ('text text-data1 "foo ")))) >+ (and (em? emphasis-data1) (strong? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis no strong emphasis because the opening >delimiter is closed by the first * before bar >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:738 >source: >+ (test-assert >+ "parse-inlines, emphasis no strong emphasis because the opening\ndelimiter is closed by the first * before bar" >+ (match (parse-inlines (make-paragraph "*foo**bar***")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data3 "**") >+ ('emphasis emphasis-data2 ('text text-data2 "bar")) >+ ('emphasis emphasis-data1 ('text text-data1 "foo")))) >+ (and (em? emphasis-data1) (em? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis indefinite levels of nesting are possible >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:752 >source: >+ (test-assert >+ "parse-inlines, emphasis indefinite levels of nesting are possible" >+ (match (parse-inlines (make-paragraph "*foo **bar *baz* bim** bop*")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('text text-data1 " bop") >+ ('emphasis >+ emphasis-data2 >+ ('text text-data2 " bim") >+ ('emphasis emphasis-data3 ('text text-data4 "baz")) >+ ('text text-data5 "bar ")) >+ ('text text-data6 "foo ")))) >+ (and (em? emphasis-data1) >+ (strong? emphasis-data2) >+ (em? emphasis-data3))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis indefinite levels of nesting are possible >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:769 >source: >+ (test-assert >+ "parse-inlines, emphasis indefinite levels of nesting are possible" >+ (match (parse-inlines (make-paragraph "*foo [*bar*](/url)*")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('link >+ link-data >+ ('emphasis emphasis-data2 ('text text-data5 "bar"))) >+ ('text text-data6 "foo ")))) >+ (and (em? emphasis-data1) >+ (em? emphasis-data2) >+ (destination=? link-data "/url"))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, there can be no empty emphasis or strong emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:784 >source: >+ (test-assert >+ "parse-inlines, there can be no empty emphasis or strong emphasis" >+ (match (parse-inlines (make-paragraph "** is not an empty emphasis")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 " is not an empty emphasis") >+ ('text text-data2 "**"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, there can be no empty emphasis or strong emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:793 >source: >+ (test-assert >+ "parse-inlines, there can be no empty emphasis or strong emphasis" >+ (match (parse-inlines >+ (make-paragraph "**** is not an empty strong emphasis")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 " is not an empty strong emphasis") >+ ('text text-data2 "****"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, any nonempty sequence of inline elements can be the >contents of a strongly emphasized span >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:802 >source: >+ (test-assert >+ "parse-inlines, any nonempty sequence of inline elements can be the\ncontents of a strongly emphasized span" >+ (match (parse-inlines (make-paragraph "**foo [bar](/url)**")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('link link-data ('text text-data "bar")) >+ ('text text-data "foo ")))) >+ (and (strong? emphasis-data1) (destination=? link-data "/url"))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, any nonempty sequence of inline elements can be the >contents of a strongly emphasized span >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:815 >source: >+ (test-assert >+ "parse-inlines, any nonempty sequence of inline elements can be the\ncontents of a strongly emphasized span" >+ (match (parse-inlines (make-paragraph "**foo\nbar**")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data >+ ('text text-data "bar") >+ ('softbreak break-data) >+ ('text text-data "foo")))) >+ (strong? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis and strong emphasis can be nested inside strong >emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:827 >source: >+ (test-assert >+ "parse-inlines, emphasis and strong emphasis can be nested inside strong\nemphasis" >+ (match (parse-inlines (make-paragraph "__foo _bar_ baz__")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('text text-data1 " baz") >+ ('emphasis emphasis-data2 ('text text-data2 "bar")) >+ ('text text-data3 "foo ")))) >+ (and (strong? emphasis-data1) (em? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis and strong emphasis can be nested inside strong >emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:841 >source: >+ (test-assert >+ "parse-inlines, emphasis and strong emphasis can be nested inside strong\nemphasis" >+ (match (parse-inlines (make-paragraph "__foo __bar__ baz__")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('text text-data1 " baz") >+ ('emphasis emphasis-data2 ('text text-data2 "bar")) >+ ('text text-data3 "foo ")))) >+ (and (strong? emphasis-data1) (strong? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis and strong emphasis can be nested inside strong >emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:855 >source: >+ (test-assert >+ "parse-inlines, emphasis and strong emphasis can be nested inside strong\nemphasis" >+ (match (parse-inlines (make-paragraph "____foo__ bar__")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('text text-data1 " bar") >+ ('emphasis emphasis-data2 ('text text-data2 "foo"))))) >+ (and (strong? emphasis-data1) (strong? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis and strong emphasis can be nested inside strong >emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:868 >source: >+ (test-assert >+ "parse-inlines, emphasis and strong emphasis can be nested inside strong\nemphasis" >+ (match (parse-inlines (make-paragraph "**foo **bar****")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('emphasis emphasis-data2 ('text text-data2 "bar")) >+ ('text text-data1 "foo ")))) >+ (and (strong? emphasis-data1) (strong? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis and strong emphasis can be nested inside strong >emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:881 >source: >+ (test-assert >+ "parse-inlines, emphasis and strong emphasis can be nested inside strong\nemphasis" >+ (match (parse-inlines (make-paragraph "**foo *bar* baz**")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('text text-data1 " baz") >+ ('emphasis emphasis-data2 ('text text-data2 "bar")) >+ ('text text-data3 "foo ")))) >+ (and (strong? emphasis-data1) (em? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, internal delimiters can close emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:895 >source: >+ (test-assert >+ "parse-inlines, internal delimiters can close emphasis" >+ (match (parse-inlines (make-paragraph "**foo*bar*baz**")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data "**") >+ ('text text-data1 "baz") >+ ('emphasis >+ emphasis-data1 >+ ('text text-data2 "bar") >+ ('emphasis emphasis-data2 ('text text-data3 "foo"))))) >+ (and (em? emphasis-data1) (em? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, delimiters with spaces cannot close emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:909 >source: >+ (test-assert >+ "parse-inlines, delimiters with spaces cannot close emphasis" >+ (match (parse-inlines (make-paragraph "***foo* bar**")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('text text-data1 " bar") >+ ('emphasis emphasis-data2 ('text text-data2 "foo"))))) >+ (and (strong? emphasis-data1) (em? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, delimiters with spaces cannot close emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:921 >source: >+ (test-assert >+ "parse-inlines, delimiters with spaces cannot close emphasis" >+ (match (parse-inlines (make-paragraph "**foo *bar***")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('emphasis emphasis-data2 ('text text-data1 "bar")) >+ ('text text-data2 "foo ")))) >+ (and (strong? emphasis-data1) (em? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis indefinite levels of nesting are possible >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:933 >source: >+ (test-assert >+ "parse-inlines, emphasis indefinite levels of nesting are possible" >+ (match (parse-inlines (make-paragraph "**foo *bar **baz**\nbim* bop**")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('text text-data5 " bop") >+ ('emphasis >+ emphasis-data2 >+ ('text text-data4 "bim") >+ ('softbreak break-data) >+ ('emphasis emphasis-data3 ('text text-data3 "baz")) >+ ('text text-data1 "bar ")) >+ ('text text-data2 "foo ")))) >+ (and (strong? emphasis-data1) >+ (em? emphasis-data2) >+ (strong? emphasis-data3))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis indefinite levels of nesting are possible >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:951 >source: >+ (test-assert >+ "parse-inlines, emphasis indefinite levels of nesting are possible" >+ (match (parse-inlines (make-paragraph "**foo [*bar*](/url)**")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('link >+ link-data >+ ('emphasis emphasis-data2 ('text text-data1 "bar"))) >+ ('text text-data2 "foo ")))) >+ (and (strong? emphasis-data1) >+ (em? emphasis-data2) >+ (destination=? link-data "/url"))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, there can be no empty emphasis or strong emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:965 >source: >+ (test-assert >+ "parse-inlines, there can be no empty emphasis or strong emphasis" >+ (match (parse-inlines (make-paragraph "__ is not an empty emphasis")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 " is not an empty emphasis") >+ ('text text-data2 "__"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, there can be no empty emphasis or strong emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:974 >source: >+ (test-assert >+ "parse-inlines, there can be no empty emphasis or strong emphasis" >+ (match (parse-inlines >+ (make-paragraph "____ is not an empty strong emphasis")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 " is not an empty strong emphasis") >+ ('text text-data2 "____"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 11 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:983 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 11" >+ (match (parse-inlines (make-paragraph "foo ***")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "***") >+ ('text text-data2 "foo "))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 11 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:992 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 11" >+ (match (parse-inlines (make-paragraph "foo *\\**")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data ('text text-data1 "*")) >+ ('text text-data2 "foo "))) >+ (em? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 11 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1002 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 11" >+ (match (parse-inlines (make-paragraph "foo *_*")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data ('text text-data1 "_")) >+ ('text text-data2 "foo "))) >+ (em? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 11 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1012 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 11" >+ (match (parse-inlines (make-paragraph "foo *****")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "*****") >+ ('text text-data2 "foo "))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 11 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1021 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 11" >+ (match (parse-inlines (make-paragraph "foo **\\***")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data ('text text-data1 "*")) >+ ('text text-data2 "foo "))) >+ (strong? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 11 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1031 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 11" >+ (match (parse-inlines (make-paragraph "foo **_**")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data ('text text-data1 "_")) >+ ('text text-data2 "foo "))) >+ (strong? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 11 excess literal * characters >will appear outside of the emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1041 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 11 excess literal * characters\nwill appear outside of the emphasis" >+ (match (parse-inlines (make-paragraph "**foo*")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data ('text text-data1 "foo")) >+ ('text text-data2 "*"))) >+ (em? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 11 excess literal * characters >will appear outside of the emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1052 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 11 excess literal * characters\nwill appear outside of the emphasis" >+ (match (parse-inlines (make-paragraph "*foo**")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data2 "*") >+ ('emphasis emphasis-data ('text text-data1 "foo")))) >+ (em? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 11 excess literal * characters >will appear outside of the emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1063 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 11 excess literal * characters\nwill appear outside of the emphasis" >+ (match (parse-inlines (make-paragraph "***foo**")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data ('text text-data1 "foo")) >+ ('text text-data2 "*"))) >+ (strong? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 11 excess literal * characters >will appear outside of the emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1074 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 11 excess literal * characters\nwill appear outside of the emphasis" >+ (match (parse-inlines (make-paragraph "****foo*")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data ('text text-data1 "foo")) >+ ('text text-data2 "***"))) >+ (em? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 11 excess literal * characters >will appear outside of the emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1085 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 11 excess literal * characters\nwill appear outside of the emphasis" >+ (match (parse-inlines (make-paragraph "**foo***")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data2 "*") >+ ('emphasis emphasis-data ('text text-data1 "foo")))) >+ (strong? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 11 excess literal * characters >will appear outside of the emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1096 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 11 excess literal * characters\nwill appear outside of the emphasis" >+ (match (parse-inlines (make-paragraph "*foo****")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data2 "***") >+ ('emphasis emphasis-data ('text text-data1 "foo")))) >+ (em? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 12 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1107 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 12" >+ (match (parse-inlines (make-paragraph "foo ___")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "___") >+ ('text text-data2 "foo "))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 12 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1116 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 12" >+ (match (parse-inlines (make-paragraph "foo _\\__")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data ('text text-data1 "_")) >+ ('text text-data2 "foo "))) >+ (em? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 12 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1126 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 12" >+ (match (parse-inlines (make-paragraph "foo _*_")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data ('text text-data1 "*")) >+ ('text text-data2 "foo "))) >+ (em? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 12 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1136 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 12" >+ (match (parse-inlines (make-paragraph "foo _____")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "_____") >+ ('text text-data2 "foo "))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 12 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1145 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 12" >+ (match (parse-inlines (make-paragraph "foo __\\___")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data ('text text-data1 "_")) >+ ('text text-data2 "foo "))) >+ (strong? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 12 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1155 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 12" >+ (match (parse-inlines (make-paragraph "foo __*__")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data ('text text-data1 "*")) >+ ('text text-data2 "foo "))) >+ (strong? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 12 excess literal _ characters >will appear outside of the emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1165 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 12 excess literal _ characters\nwill appear outside of the emphasis" >+ (match (parse-inlines (make-paragraph "__foo_")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data ('text text-data1 "foo")) >+ ('text text-data2 "_"))) >+ (em? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 12 excess literal _ characters >will appear outside of the emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1176 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 12 excess literal _ characters\nwill appear outside of the emphasis" >+ (match (parse-inlines (make-paragraph "_foo__")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data2 "_") >+ ('emphasis emphasis-data ('text text-data1 "foo")))) >+ (em? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 12 excess literal _ characters >will appear outside of the emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1187 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 12 excess literal _ characters\nwill appear outside of the emphasis" >+ (match (parse-inlines (make-paragraph "___foo__")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data ('text text-data1 "foo")) >+ ('text text-data2 "_"))) >+ (strong? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 12 excess literal _ characters >will appear outside of the emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1198 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 12 excess literal _ characters\nwill appear outside of the emphasis" >+ (match (parse-inlines (make-paragraph "____foo_")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data ('text text-data1 "foo")) >+ ('text text-data2 "___"))) >+ (em? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 12 excess literal _ characters >will appear outside of the emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1209 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 12 excess literal _ characters\nwill appear outside of the emphasis" >+ (match (parse-inlines (make-paragraph "__foo___")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data2 "_") >+ ('emphasis emphasis-data ('text text-data1 "foo")))) >+ (strong? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 12 excess literal _ characters >will appear outside of the emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1220 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 12 excess literal _ characters\nwill appear outside of the emphasis" >+ (match (parse-inlines (make-paragraph "_foo____")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data2 "___") >+ ('emphasis emphasis-data ('text text-data1 "foo")))) >+ (em? emphasis-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 13 can be applied to arbitrarily >long sequences of delimiters >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1231 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 13 can be applied to arbitrarily\nlong sequences of delimiters" >+ (match (parse-inlines (make-paragraph "******foo******")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('emphasis >+ emphasis-data2 >+ ('emphasis emphasis-data3 ('text text-data1 "foo")))))) >+ (and (strong? emphasis-data1) >+ (strong? emphasis-data2) >+ (strong? emphasis-data3))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 14 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1245 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 14" >+ (match (parse-inlines (make-paragraph "***foo***")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('emphasis emphasis-data2 ('text text-data1 "foo"))))) >+ (and (strong? emphasis-data1) (em? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 14 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1256 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 14" >+ (match (parse-inlines (make-paragraph "_____foo_____")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('emphasis >+ emphasis-data2 >+ ('emphasis emphasis-data3 ('text text-data1 "foo")))))) >+ (and (strong? emphasis-data1) >+ (strong? emphasis-data2) >+ (em? emphasis-data3))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 15 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1269 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 15" >+ (match (parse-inlines (make-paragraph "*foo _bar* baz_")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "_") >+ ('text text-data2 " baz") >+ ('emphasis >+ emphasis-data1 >+ ('text text-data3 "bar") >+ ('text text-data4 "_") >+ ('text text-data5 "foo ")))) >+ (em? emphasis-data1)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 15 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1282 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 15" >+ (match (parse-inlines (make-paragraph "**foo*bar**")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data1 "*") >+ ('emphasis >+ emphasis-data1 >+ ('text text-data2 "bar") >+ ('emphasis emphasis-data2 ('text text-data3 "foo"))))) >+ (and (em? emphasis-data1) (em? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 15 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1295 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 15" >+ (match (parse-inlines (make-paragraph "*foo __bar *baz bim__ bam*")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('text text-data1 " bam") >+ ('emphasis >+ emphasis-data2 >+ ('text text-data3 "baz bim") >+ ('text text-data4 "*") >+ ('text text-data5 "bar ")) >+ ('text text-data2 "foo ")))) >+ (and (em? emphasis-data1) (strong? emphasis-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 16 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1310 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 16" >+ (match (parse-inlines (make-paragraph "**foo **bar baz**")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data1 ('text text-data1 "bar baz")) >+ ('text text-data2 "foo ") >+ ('text text-data3 "**"))) >+ (strong? emphasis-data1)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 16 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1321 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 16" >+ (match (parse-inlines (make-paragraph "*foo *bar baz*")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data1 ('text text-data1 "bar baz")) >+ ('text text-data2 "foo ") >+ ('text text-data3 "*"))) >+ (em? emphasis-data1)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 17 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1332 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 17" >+ (match (parse-inlines (make-paragraph "*[bar*](/url)")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link link-data ('text text-data "*") ('text text-data2 "bar")) >+ ('text text-data "*"))) >+ (destination=? link-data "/url")) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 17 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1343 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 17" >+ (match (parse-inlines (make-paragraph "_foo [bar_](/url)")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link link-data ('text text-data "_") ('text text-data2 "bar")) >+ ('text text-data "foo ") >+ ('text text-data "_"))) >+ (destination=? link-data "/url")) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 17 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1356 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 17" >+ (match (parse-inlines (make-paragraph "*<img src=\"foo\" title=\"*\"/>")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data1 ('text text-data1 "bar baz")) >+ ('text text-data2 "foo ") >+ ('text text-data3 "*"))) >+ (em? emphasis-data1)) >+ (x (pk 'fail x #f)))) > >;;; (fail (document ((closed . #f)) (paragraph ((closed . #f)) (text ((closed . #t)) "\"/>") (emphasis ((type . em)) (text ((closed . #t)) "img src=\"foo\" title=\"") (text ((closed . #t)) "<")))) #f) >actual-value: #f >result: XFAIL > >test-name: parse-inlines, emphasis rule 17 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1367 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 17" >+ (match (parse-inlines (make-paragraph "**<a href=\"**\">")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data1 ('text text-data1 "bar baz")) >+ ('text text-data2 "foo ") >+ ('text text-data3 "*"))) >+ (em? emphasis-data1)) >+ (x (pk 'fail x #f)))) > >;;; (fail (document ((closed . #f)) (paragraph ((closed . #f)) (text ((closed . #t)) "\">") (emphasis ((type . strong)) (text ((closed . #t)) "a href=\"") (text ((closed . #t)) "<")))) #f) >actual-value: #f >result: XFAIL > >test-name: parse-inlines, emphasis rule 17 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1378 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 17" >+ (match (parse-inlines (make-paragraph "__<a href=\"__\">")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis emphasis-data1 ('text text-data1 "bar baz")) >+ ('text text-data2 "foo ") >+ ('text text-data3 "*"))) >+ (em? emphasis-data1)) >+ (x (pk 'fail x #f)))) > >;;; (fail (document ((closed . #f)) (paragraph ((closed . #f)) (text ((closed . #t)) "\">") (emphasis ((type . strong)) (text ((closed . #t)) "a href=\"") (text ((closed . #t)) "<")))) #f) >actual-value: #f >result: XFAIL > >test-name: parse-inlines, emphasis rule 17 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1389 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 17" >+ (match (parse-inlines (make-paragraph "*a `*`*")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('code-span code-data1 "*") >+ ('text text-data1 "a ")))) >+ (em? emphasis-data1)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 17 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1399 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 17" >+ (match (parse-inlines (make-paragraph "_a `_`_")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data1 >+ ('code-span code-data1 "_") >+ ('text text-data1 "a ")))) >+ (em? emphasis-data1)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 17 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1409 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 17" >+ (match (parse-inlines (make-paragraph "**a<http://foo.bar/?q**>")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link link-data ('text text-data1 "http://foo.bar/?q**")) >+ ('text text-data "a") >+ ('text text-data "**"))) >+ (destination=? link-data "http://foo.bar/?q**")) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, emphasis rule 17 >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/emphasis.scm:1420 >source: >+ (test-assert >+ "parse-inlines, emphasis rule 17" >+ (match (parse-inlines (make-paragraph "__a<http://foo.bar/?q=__>")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link link-data ('text text-data1 "http://foo.bar/?q=__")) >+ ('text text-data "a") >+ ('text text-data "__"))) >+ (destination=? link-data "http://foo.bar/?q=__")) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > > >SKIP: tests/inlines/hardbreak >============================= > >test-name: parse-inlines, A line break that is preceded by two or more spaces >and does not occur at the end of a block is parsed as a hard line break >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/hardbreak.scm:32 >source: >+ (test-assert >+ "parse-inlines, A line break that is preceded by two or more spaces\nand does not occur at the end of a block is parsed as a hard line break" >+ (match (parse-inlines (make-paragraph "foo \nbaz")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data "baz") >+ ('hardbreak break-data) >+ ('text text-data "foo"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, a backslash before the line ending may be used >instead of two spaces >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/hardbreak.scm:43 >source: >+ (test-assert >+ "parse-inlines, a backslash before the line ending may be used\ninstead of two spaces" >+ (match (parse-inlines (make-paragraph "foo\\\nbaz")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data "baz") >+ ('hardbreak break-data) >+ ('text text-data "foo"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, hardbreak more than two spaces can be used >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/hardbreak.scm:54 >source: >+ (test-assert >+ "parse-inlines, hardbreak more than two spaces can be used" >+ (match (parse-inlines (make-paragraph "foo \nbaz")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data "baz") >+ ('hardbreak break-data) >+ ('text text-data "foo"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, hardbreak leading spaces at the beginning of the next >are ignored >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/hardbreak.scm:64 >source: >+ (test-assert >+ "parse-inlines, hardbreak leading spaces at the beginning of the next\nare ignored" >+ (match (parse-inlines (make-paragraph "foo \n bar")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data "bar") >+ ('hardbreak break-data) >+ ('text text-data "foo"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, hardbreak leading spaces at the beginning of the next >are ignored >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/hardbreak.scm:75 >source: >+ (test-assert >+ "parse-inlines, hardbreak leading spaces at the beginning of the next\nare ignored" >+ (match (parse-inlines (make-paragraph "foo\\\n bar")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data "bar") >+ ('hardbreak break-data) >+ ('text text-data "foo"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, line breaks can occur inside emphasis, links, and other >constructs that allow inline content >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/hardbreak.scm:86 >source: >+ (test-assert >+ "parse-inlines, line breaks can occur inside emphasis, links, and other\nconstructs that allow inline content" >+ (match (parse-inlines (make-paragraph "*foo \nbar*")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data >+ ('text text-data "bar") >+ ('hardbreak break-data) >+ ('text text-data "foo")))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, line breaks can occur inside emphasis, links, and other >constructs that allow inline content >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/hardbreak.scm:98 >source: >+ (test-assert >+ "parse-inlines, line breaks can occur inside emphasis, links, and other\nconstructs that allow inline content" >+ (match (parse-inlines (make-paragraph "*foo\\\nbar*")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('emphasis >+ emphasis-data >+ ('text text-data "bar") >+ ('hardbreak break-data) >+ ('text text-data "foo")))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, line breaks do not occur inside code spans >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/hardbreak.scm:110 >source: >+ (test-assert >+ "parse-inlines, line breaks do not occur inside code spans" >+ (match (parse-inlines (make-paragraph "`code \nspan`")) >+ (('document >+ doc-data >+ ('paragraph para-data ('code-span code-data "code span"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, line breaks do not occur inside code spans >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/hardbreak.scm:118 >source: >+ (test-assert >+ "parse-inlines, line breaks do not occur inside code spans" >+ (match (parse-inlines (make-paragraph "`code\\\nspan`")) >+ (('document >+ doc-data >+ ('paragraph para-data ('code-span code-data "code\\ span"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, line breaks do not occur inside html tags >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/hardbreak.scm:127 >source: >+ (test-assert >+ "parse-inlines, line breaks do not occur inside html tags" >+ (match (parse-inlines (make-paragraph "<a href=\"foo \nbar\">")) >+ (('document >+ doc-data >+ ('paragraph para-data ('code-span code-data "code span"))) >+ #t) >+ (x (pk 'fail x #f)))) > >;;; (fail (document ((closed . #f)) (paragraph ((closed . #f)) (text ((closed . #t)) "bar\">") (hardbreak ((closed . #t))) (text ((closed . #t)) "a href=\"foo") (text ((closed . #t)) "<"))) #f) >actual-value: #f >result: XFAIL > >test-name: parse-inlines, line breaks do not occur inside html tags >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/hardbreak.scm:135 >source: >+ (test-assert >+ "parse-inlines, line breaks do not occur inside html tags" >+ (match (parse-inlines (make-paragraph "<a href=\"foo\\\nbar\">")) >+ (('document >+ doc-data >+ ('paragraph para-data ('code-span code-data "code\\ span"))) >+ #t) >+ (x (pk 'fail x #f)))) > >;;; (fail (document ((closed . #f)) (paragraph ((closed . #f)) (text ((closed . #t)) "bar\">") (hardbreak ((closed . #t))) (text ((closed . #t)) "a href=\"foo") (text ((closed . #t)) "<"))) #f) >actual-value: #f >result: XFAIL > >test-name: parse-inlines, hard line breaks do not work at the end of a paragraph or other >block element >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/hardbreak.scm:143 >source: >+ (test-assert >+ "parse-inlines, hard line breaks do not work at the end of a paragraph or other\nblock element" >+ (match (parse-inlines (make-paragraph "foo\\")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data "\\") >+ ('text text-data "foo"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, hard line breaks do not work at the end of a paragraph or other >block element >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/hardbreak.scm:153 >source: >+ (test-assert >+ "parse-inlines, hard line breaks do not work at the end of a paragraph or other\nblock element" >+ (match (parse-inlines (make-paragraph "foo ")) >+ (('document >+ doc-data >+ ('paragraph para-data ('text text-data "foo"))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > > >SKIP: tests/inlines/links >========================= > >test-name: parse-inlines, simple inline link >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:37 >source: >+ (test-assert >+ "parse-inlines, simple inline link" >+ (match (parse-inlines (make-paragraph "[link](/uri \"title\")")) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "link")))) >+ (and (destination=? link-data "/uri") (title=? link-data "title"))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link title may be omitted >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:47 >source: >+ (test-assert >+ "parse-inlines, link title may be omitted" >+ (match (parse-inlines (make-paragraph "[link](/uri)")) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "link")))) >+ (and (destination=? link-data "/uri") (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link both the title and the destination may be omitted >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:57 >source: >+ (test-assert >+ "parse-inlines, link both the title and the destination may be omitted" >+ (match (parse-inlines (make-paragraph "[link]()")) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "link")))) >+ (and (destination=? link-data "") (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link both the title and the destination may be omitted >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:67 >source: >+ (test-assert >+ "parse-inlines, link both the title and the destination may be omitted" >+ (match (parse-inlines (make-paragraph "[link](<>)")) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "link")))) >+ (and (destination=? link-data "") (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link the destination cannot contain spaces, even if enclosed in >pointy brackets >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:77 >source: >+ (test-assert >+ "parse-inlines, link the destination cannot contain spaces, even if enclosed in\npointy brackets" >+ (match (parse-inlines (make-paragraph "[link](/my uri)")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data "link](/my uri)") >+ ('text text-data "["))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link the destination cannot contain spaces, even if enclosed in >pointy brackets >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:87 >source: >+ (test-assert >+ "parse-inlines, link the destination cannot contain spaces, even if enclosed in\npointy brackets" >+ (match (parse-inlines (make-paragraph "[link](</my uri>)")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data "/my uri>)") >+ ('text text-data "<") >+ ('text text-data "link](") >+ ('text text-data "["))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link the destination cannot contain line breaks, even if enclosed in >pointy brackets >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:99 >source: >+ (test-assert >+ "parse-inlines, link the destination cannot contain line breaks, even if enclosed in\npointy brackets" >+ (match (parse-inlines (make-paragraph "[link](foo\nbar)")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data "bar)") >+ ('softbreak break-data) >+ ('text text-data "link](foo") >+ ('text text-data "["))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link the destination cannot contain line breaks, even if enclosed in >pointy brackets >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:111 >source: >+ (test-assert >+ "parse-inlines, link the destination cannot contain line breaks, even if enclosed in\npointy brackets" >+ (match (parse-inlines (make-paragraph "[link](<foo\nbar>)")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data "bar>)") >+ ('softbreak break-data) >+ ('text text-data "foo") >+ ('text text-data "<") >+ ('text text-data "link](") >+ ('text text-data "["))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link parentheses inside the link destination may be escaped >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:125 >source: >+ (test-assert >+ "parse-inlines, link parentheses inside the link destination may be escaped" >+ (match (parse-inlines (make-paragraph "[link](\\(foo\\))")) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "link")))) >+ (and (destination=? link-data "(foo)") (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link one level of balanced parentheses is allowed without escaping >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:135 >source: >+ (test-assert >+ "parse-inlines, link one level of balanced parentheses is allowed without escaping" >+ (match (parse-inlines (make-paragraph "[link]((foo)and(bar))")) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "link")))) >+ (and (destination=? link-data "(foo)and(bar)") >+ (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link if you have parentheses within parentheses, you need to >escape or use the <...> form >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:145 >source: >+ (test-assert >+ "parse-inlines, link if you have parentheses within parentheses, you need to\nescape or use the <...> form" >+ (match (parse-inlines (make-paragraph "[link](foo(and(bar)))")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data "link](foo(and(bar)))") >+ ('text text-data "["))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link if you have parentheses within parentheses, you need to >escape or use the <...> form >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:155 >source: >+ (test-assert >+ "parse-inlines, link if you have parentheses within parentheses, you need to\nescape or use the <...> form" >+ (match (parse-inlines (make-paragraph "[link](foo(and\\(bar\\)))")) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "link")))) >+ (and (destination=? link-data "foo(and(bar))") >+ (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link if you have parentheses within parentheses, you need to >escape or use the <...> form >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:166 >source: >+ (test-assert >+ "parse-inlines, link if you have parentheses within parentheses, you need to\nescape or use the <...> form" >+ (match (parse-inlines (make-paragraph "[link](<foo(and(bar))>)")) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "link")))) >+ (and (destination=? link-data "foo(and(bar))") >+ (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link parentheses and other symbols can also be escaped >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:177 >source: >+ (test-assert >+ "parse-inlines, link parentheses and other symbols can also be escaped" >+ (match (parse-inlines (make-paragraph "[link](foo\\)\\:)")) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "link")))) >+ (and (destination=? link-data "foo):") (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link can contain fragment identifiers and queries >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:187 >source: >+ (test-assert >+ "parse-inlines, link can contain fragment identifiers and queries" >+ (match (parse-inlines (make-paragraph "[link](#fragment)")) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "link")))) >+ (and (destination=? link-data "#fragment") (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link can contain fragment identifiers and queries >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:197 >source: >+ (test-assert >+ "parse-inlines, link can contain fragment identifiers and queries" >+ (match (parse-inlines >+ (make-paragraph "[link](http://example.com#fragment)")) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "link")))) >+ (and (destination=? link-data "http://example.com#fragment") >+ (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link can contain fragment identifiers and queries >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:207 >source: >+ (test-assert >+ "parse-inlines, link can contain fragment identifiers and queries" >+ (match (parse-inlines >+ (make-paragraph "[link](http://example.com?foo=3#frag)")) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "link")))) >+ (and (destination=? link-data "http://example.com?foo=3#frag") >+ (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link backslash before a non-escapable character is just >a backslash >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:217 >source: >+ (test-assert >+ "parse-inlines, link backslash before a non-escapable character is just\na backslash" >+ (match (parse-inlines (make-paragraph "[link](foo\\bar)")) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "link")))) >+ (and (destination=? link-data "foo\\bar") (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link url-escaping should be left alone and entity and >numerical character references in the destination will be parsed into the corresponding >Unicode code points >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:228 >source: >+ (test-assert >+ "parse-inlines, link url-escaping should be left alone and entity and\nnumerical character references in the destination will be parsed into the corresponding\nUnicode code points" >+ (match (parse-inlines (make-paragraph "[link](foo%20bä)")) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "link")))) >+ (and (destination=? link-data "foo%20bä") (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link titles can often be parsed as destinations, if you >try to omit the destination and keep the title, you'll get unexpected results >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:240 >source: >+ (test-assert >+ "parse-inlines, link titles can often be parsed as destinations, if you\ntry to omit the destination and keep the title, you'll get unexpected results" >+ (match (parse-inlines (make-paragraph "[link](\"title\")")) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "link")))) >+ (and (destination=? link-data "\"title\"") (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link titles may be in double quotes >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:251 >source: >+ (test-assert >+ "parse-inlines, link titles may be in double quotes" >+ (match (parse-inlines (make-paragraph "[link](/url \"title\")")) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "link")))) >+ (and (destination=? link-data "/url") (title=? link-data "title"))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link titles may be in single quotes >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:261 >source: >+ (test-assert >+ "parse-inlines, link titles may be in single quotes" >+ (match (parse-inlines (make-paragraph "[link](/url 'title')")) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "link")))) >+ (and (destination=? link-data "/url") (title=? link-data "title"))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link titles may be in parentheses >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:271 >source: >+ (test-assert >+ "parse-inlines, link titles may be in parentheses" >+ (match (parse-inlines (make-paragraph "[link](/url (title))")) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "link")))) >+ (and (destination=? link-data "/url") (title=? link-data "title"))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link backslash escapes and entity and numeric character >references may be used in titles >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:281 >source: >+ (test-assert >+ "parse-inlines, link backslash escapes and entity and numeric character\nreferences may be used in titles" >+ (match (parse-inlines >+ (make-paragraph "[link](/url \"title \\\""\")")) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "link")))) >+ (and (destination=? link-data "/url") >+ (title=? link-data "title \"\""))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link nested balanced quotes are not allowed without escaping >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:292 >source: >+ (test-assert >+ "parse-inlines, link nested balanced quotes are not allowed without escaping" >+ (match (parse-inlines >+ (make-paragraph "[link](/url \"title \"and\" title\")")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data "link](/url \"title \"and\" title\")") >+ ('text text-data "["))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link but it is easy to work around this by using a different quote type >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:301 >source: >+ (test-assert >+ "parse-inlines, link but it is easy to work around this by using a different quote type" >+ (match (parse-inlines >+ (make-paragraph "[link](/url 'title \"and\" title')")) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "link")))) >+ (and (destination=? link-data "/url") >+ (title=? link-data "title \"and\" title"))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link whitespace is allowed around the destination and title >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:311 >source: >+ (test-assert >+ "parse-inlines, link whitespace is allowed around the destination and title" >+ (match (parse-inlines (make-paragraph "[link]( /url\n \"title\" )")) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "link")))) >+ (and (destination=? link-data "/url") (title=? link-data "title"))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link but it is not allowed between the link text and >the following parenthesis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:321 >source: >+ (test-assert >+ "parse-inlines, link but it is not allowed between the link text and\nthe following parenthesis" >+ (match (parse-inlines (make-paragraph "[link] (/uri)")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data "link] (/uri)") >+ ('text text-data "["))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link text may contain balanced brackets, but not >unbalanced ones, unless they are escaped >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:331 >source: >+ (test-assert >+ "parse-inlines, link text may contain balanced brackets, but not\nunbalanced ones, unless they are escaped" >+ (match (parse-inlines (make-paragraph "[link [foo [bar]]](/uri)")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link >+ link-data >+ ('text text-data "bar]]") >+ ('text text-data "[") >+ ('text text-data "foo ") >+ ('text text-data "[") >+ ('text text-data "link ")))) >+ (and (destination=? link-data "/uri") (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link text may contain balanced brackets, but not >unbalanced ones, unless they are escaped >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:346 >source: >+ (test-assert >+ "parse-inlines, link text may contain balanced brackets, but not\nunbalanced ones, unless they are escaped" >+ (match (parse-inlines (make-paragraph "[link] bar](/uri)")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data "link] bar](/uri)") >+ ('text text-data "["))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link text may contain balanced brackets, but not >unbalanced ones, unless they are escaped >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:356 >source: >+ (test-assert >+ "parse-inlines, link text may contain balanced brackets, but not\nunbalanced ones, unless they are escaped" >+ (match (parse-inlines (make-paragraph "[link [bar](/uri)")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link link-data ('text text-data "bar")) >+ ('text text-data "link ") >+ ('text text-data "["))) >+ (and (destination=? link-data "/uri") (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link text may contain balanced brackets, but not >unbalanced ones, unless they are escaped >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:369 >source: >+ (test-assert >+ "parse-inlines, link text may contain balanced brackets, but not\nunbalanced ones, unless they are escaped" >+ (match (parse-inlines (make-paragraph "[link \\[bar](/uri)")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link >+ link-data >+ ('text text-data "bar") >+ ('text text-data "[") >+ ('text text-data "link ")))) >+ (and (destination=? link-data "/uri") (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link text may contain inline content >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:388 >source: >+ (test-assert >+ "parse-inlines, link text may contain inline content" >+ (match (parse-inlines (make-paragraph "[link *foo **bar** `#`*](/uri)")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link >+ link-data >+ ('emphasis >+ em-data1 >+ ('code-span code-data "#") >+ ('text text-data " ") >+ (emphasis em-data2 ('text text-data "bar")) >+ ('text text-data "foo ")) >+ ('text text-data "link ")))) >+ (and (destination=? link-data "/uri") >+ (title=? link-data #f) >+ (em? em-data1) >+ (strong? em-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link text may contain inline content >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:406 >source: >+ (test-assert >+ "parse-inlines, link text may contain inline content" >+ (match (parse-inlines (make-paragraph "[](/uri)")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link link-data ('image image-data ('text text-data "moon"))))) >+ (and (destination=? link-data "/uri") >+ (title=? link-data #f) >+ (destination=? image-data "moon.jpg") >+ (title=? image-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, links may not contain other links at any level of nesting >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:419 >source: >+ (test-assert >+ "parse-inlines, links may not contain other links at any level of nesting" >+ (match (parse-inlines (make-paragraph "[foo [bar](/uri)](/uri)")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data "](/uri)") >+ ('link link-data ('text text-data "bar")) >+ ('text text-data "foo ") >+ ('text text-data "["))) >+ (and (destination=? link-data "/uri") (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, links may not contain other links at any level of nesting >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:432 >source: >+ (test-assert >+ "parse-inlines, links may not contain other links at any level of nesting" >+ (match (parse-inlines >+ (make-paragraph "[foo *[bar [baz](/uri)](/uri)*](/uri)")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data "](/uri)") >+ ('emphasis >+ em-data >+ ('text text-data "](/uri)") >+ ('link link-data ('text text-data "baz")) >+ ('text text-data "bar ") >+ ('text text-data "[")) >+ ('text text-data "foo ") >+ ('text text-data "["))) >+ (and (destination=? link-data "/uri") >+ (title=? link-data #f) >+ (em? em-data))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, links may not contain other links at any level of nesting >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:450 >source: >+ (test-assert >+ "parse-inlines, links may not contain other links at any level of nesting" >+ (match (parse-inlines (make-paragraph "](uri2)](uri3)")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('image >+ image-data >+ ('text text-data "](uri2)") >+ ('link link-data ('text text-data "foo")) >+ ('text text-data "[")))) >+ (and (destination=? link-data "uri1") >+ (title=? link-data #f) >+ (destination=? image-data "uri3") >+ (title=? image-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link text have higher precedence over emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:465 >source: >+ (test-assert >+ "parse-inlines, link text have higher precedence over emphasis" >+ (match (parse-inlines (make-paragraph "*[foo*](/uri)")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link link-data ('text text-data "*") ('text text-data "foo")) >+ ('text text-data "*"))) >+ (and (destination=? link-data "/uri") (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link text have higher precedence over emphasis >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:477 >source: >+ (test-assert >+ "parse-inlines, link text have higher precedence over emphasis" >+ (match (parse-inlines (make-paragraph "[foo *bar](baz*)")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link >+ link-data >+ ('text text-data "bar") >+ ('text text-data "*") >+ ('text text-data "foo ")))) >+ (and (destination=? link-data "baz*") (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, brackets that aren't part of links do not take >precedence >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:489 >source: >+ (test-assert >+ "parse-inlines, brackets that aren't part of links do not take\nprecedence" >+ (match (parse-inlines (make-paragraph "*foo [bar* baz]")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data " baz]") >+ ('emphasis >+ em-data >+ ('text text-data "bar") >+ ('text text-data "[") >+ ('text text-data "foo ")))) >+ (em? em-data)) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link these cases illustrate the precedence of HTML, >tags, code spans, and autolinks over link grouping >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:504 >source: >+ (test-assert >+ "parse-inlines, link these cases illustrate the precedence of HTML,\ntags, code spans, and autolinks over link grouping" >+ (match (parse-inlines (make-paragraph "[foo <bar attr=\"](baz)\">")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data " baz]") >+ ('emphasis >+ em-data >+ ('text text-data "bar") >+ ('text text-data "[") >+ ('text text-data "foo ")))) >+ (em? em-data)) >+ (x (pk 'fail x #f)))) > >;;; (fail (document ((closed . #f)) (paragraph ((closed . #f)) (text ((closed . #t)) "\">") (link ((destination . "baz") (title . #f)) (text ((closed . #t)) "bar attr=\"") (text ((closed . #t)) "<") (text ((closed . #t)) "foo ")))) #f) >actual-value: #f >result: XFAIL > >test-name: parse-inlines, link these cases illustrate the precedence of HTML, >tags, code spans, and autolinks over link grouping >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:517 >source: >+ (test-assert >+ "parse-inlines, link these cases illustrate the precedence of HTML,\ntags, code spans, and autolinks over link grouping" >+ (match (parse-inlines (make-paragraph "[foo`](/uri)`")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('code-span code-data "](/uri)") >+ ('text text-data "foo") >+ ('text text-data "["))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, link these cases illustrate the precedence of HTML, >tags, code spans, and autolinks over link grouping >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:528 >source: >+ (test-assert >+ "parse-inlines, link these cases illustrate the precedence of HTML,\ntags, code spans, and autolinks over link grouping" >+ (match (parse-inlines >+ (make-paragraph "[foo<http://example.com/?search=](uri)>")) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link >+ link-data >+ ('text text-data "http://example.com/?search=](uri)")) >+ ('text text-data "foo") >+ ('text text-data "["))) >+ (destination=? link-data "http://example.com/?search=](uri)")) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, full reference link simple >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:549 >source: >+ (test-assert >+ "parse-inlines, full reference link simple" >+ (match (parse-inlines >+ (make-document "[foo][bar]" '(("bar" "/url" "\"title\"")))) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "foo")))) >+ (and (destination=? link-data "/url") (title=? link-data "title"))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, full reference link may contain balanced brackets, but not >unbalanced ones, unless they are escaped >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:560 >source: >+ (test-assert >+ "parse-inlines, full reference link may contain balanced brackets, but not\nunbalanced ones, unless they are escaped" >+ (match (parse-inlines >+ (make-document "[link [foo [bar]]][ref]" '(("ref" "/uri" #f)))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link >+ link-data >+ ('text text-data "bar]]") >+ ('text text-data "[") >+ ('text text-data "foo ") >+ ('text text-data "[") >+ ('text text-data "link ")))) >+ (destination=? link-data "/uri")) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, full reference link may contain balanced brackets, but not >unbalanced ones, unless they are escaped >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:575 >source: >+ (test-assert >+ "parse-inlines, full reference link may contain balanced brackets, but not\nunbalanced ones, unless they are escaped" >+ (match (parse-inlines >+ (make-document "[link \\[bar][ref]" '(("ref" "/uri" #f)))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link >+ link-data >+ ('text text-data "bar") >+ ('text text-data "[") >+ ('text text-data "link ")))) >+ (destination=? link-data "/uri")) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, full reference link text may contain inline content >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:588 >source: >+ (test-assert >+ "parse-inlines, full reference link text may contain inline content" >+ (match (parse-inlines >+ (make-document >+ "[link *foo **bar** `#`*][ref]" >+ '(("ref" "/uri" #f)))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link >+ link-data >+ ('emphasis >+ em-data1 >+ ('code-span code-data "#") >+ ('text text-data " ") >+ ('emphasis em-data2 ('text text-data "bar")) >+ ('text text-data "foo ")) >+ ('text text-data "link ")))) >+ (and (destination=? link-data "/uri") >+ (em? em-data1) >+ (strong? em-data2))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, full reference link text may contain inline content >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:606 >source: >+ (test-assert >+ "parse-inlines, full reference link text may contain inline content" >+ (match (parse-inlines >+ (make-document "[][ref]" '(("ref" "/uri" #f)))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link link-data ('image image-data ('text text-data "moon"))))) >+ (and (destination=? link-data "/uri") >+ (title=? link-data #f) >+ (destination=? image-data "moon.jpg") >+ (title=? image-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, full reference link text may not contain other links, >at any level of nesting >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:620 >source: >+ (test-assert >+ "parse-inlines, full reference link text may not contain other links,\nat any level of nesting" >+ (match (parse-inlines >+ (make-document "[foo [bar](/uri)][ref]" '(("ref" "/uri" #f)))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link link-data2 ('text text-data "ref")) >+ ('text text-data "]") >+ ('link link-data1 ('text text-data "bar")) >+ ('text text-data "foo ") >+ ('text text-data "["))) >+ (and (destination=? link-data1 "/uri") >+ (destination=? link-data2 "/uri"))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, full reference link text may not contain other links, >at any level of nesting >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:637 >source: >+ (test-assert >+ "parse-inlines, full reference link text may not contain other links,\nat any level of nesting" >+ (match (parse-inlines >+ (make-document "[foo *bar [baz][ref]*][ref]" '(("ref" "/uri" #f)))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link link-data2 ('text text-data "ref")) >+ ('text text-data "]") >+ ('emphasis >+ em-data >+ ('link link-data ('text text-data "baz")) >+ ('text text-data "bar ")) >+ ('text text-data "foo ") >+ ('text text-data "["))) >+ (and (destination=? link-data "/uri") (em? em-data))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, full reference link text precedence over emphasis grouping >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:656 >source: >+ (test-assert >+ "parse-inlines, full reference link text precedence over emphasis grouping" >+ (match (parse-inlines (make-document "*[foo*][ref]" '(("ref" "/uri" #f)))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link link-data ('text text-data "*") ('text text-data "foo")) >+ ('text text-data "*"))) >+ (destination=? link-data "/uri")) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, full reference link text precedence over emphasis grouping >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:668 >source: >+ (test-assert >+ "parse-inlines, full reference link text precedence over emphasis grouping" >+ (match (parse-inlines >+ (make-document "[foo *bar][ref]" '(("ref" "/uri" #f)))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link >+ link-data >+ ('text text-data "bar") >+ ('text text-data "*") >+ ('text text-data "foo ")))) >+ (destination=? link-data "/uri")) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, full reference link text precedence lower than HTML tags, >code spans, and autolinks >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:681 >source: >+ (test-assert >+ "parse-inlines, full reference link text precedence lower than HTML tags,\ncode spans, and autolinks" >+ (match (parse-inlines >+ (make-document "[foo <bar attr=\"][ref]\">" '(("ref" "/uri" #f)))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link >+ link-data >+ ('text text-data "bar") >+ ('text text-data "*") >+ ('text text-data "foo ")))) >+ (destination=? link-data "/uri")) >+ (x (pk 'fail x #f)))) > >;;; (fail (document ((link-references ("ref" "/uri" #f))) (paragraph ((closed . #f)) (text ((closed . #t)) "\">") (link ((destination . "/uri") (title . #f)) (text ((closed . #t)) "bar attr=\"") (text ((closed . #t)) "<") (text ((closed . #t)) "foo ")))) #f) >actual-value: #f >result: XFAIL > >test-name: parse-inlines, full reference link text precedence lower than HTML tags, >code spans, and autolinks >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:694 >source: >+ (test-assert >+ "parse-inlines, full reference link text precedence lower than HTML tags,\ncode spans, and autolinks" >+ (match (parse-inlines (make-document "[foo`][ref]`" '(("ref" "/uri" #f)))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('code-span code-data "][ref]") >+ ('text text-data "foo") >+ ('text text-data "["))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, full reference link text precedence lower than HTML tags, >code spans, and autolinks >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:706 >source: >+ (test-assert >+ "parse-inlines, full reference link text precedence lower than HTML tags,\ncode spans, and autolinks" >+ (match (parse-inlines >+ (make-document >+ "[foo<http://example.com/?search=][ref]>" >+ '(("ref" "/uri" #f)))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link >+ link-data >+ ('text text-data "http://example.com/?search=][ref]")) >+ ('text text-data "foo") >+ ('text text-data "["))) >+ (and (destination=? link-data "http://example.com/?search=][ref]"))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, full reference link matching is case-insensitive >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:719 >source: >+ (test-assert >+ "parse-inlines, full reference link matching is case-insensitive" >+ (match (parse-inlines (make-document "[foo][BaR]" '(("bar" "/uri" #f)))) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "foo")))) >+ (destination=? link-data "/uri")) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, full reference link unicode case fold is used >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:730 >source: >+ (test-assert >+ "parse-inlines, full reference link unicode case fold is used" >+ (match (parse-inlines >+ (make-document >+ "[Толпой][ТÐÐÐÐÐ] is a Russian word." >+ '(("Ñолпой" "/url" #f)))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data " is a Russian word.") >+ ('link link-data ('text text-data "Толпой")))) >+ (destination=? link-data "/url")) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, full reference link no whitespace is allowed between the link text >and the link label >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:741 >source: >+ (test-assert >+ "parse-inlines, full reference link no whitespace is allowed between the link text\nand the link label" >+ (match (parse-inlines >+ (make-document "[foo] [bar]" '(("bar" "/url" "\"title\"")))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link link-data ('text text-data "bar")) >+ ('text text-data "foo] ") >+ ('text text-data "["))) >+ (and (destination=? link-data "/url") (title=? link-data "title"))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, full reference link no whitespace is allowed between the link text >and the link label >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:755 >source: >+ (test-assert >+ "parse-inlines, full reference link no whitespace is allowed between the link text\nand the link label" >+ (match (parse-inlines >+ (make-document "[foo]\n[bar]" '(("bar" "/url" "\"title\"")))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link link-data ('text text-data "bar")) >+ ('softbreak break-data) >+ ('text text-data "foo]") >+ ('text text-data "["))) >+ (and (destination=? link-data "/url") (title=? link-data "title"))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, full reference link when there are multiple matching link >reference definitions, the first is used >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:770 >source: >+ (test-assert >+ "parse-inlines, full reference link when there are multiple matching link\nreference definitions, the first is used" >+ (match (parse-inlines >+ (make-document >+ "[bar][foo]" >+ '(("foo" "/url1" #f) ("foo" "/url2" #f)))) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "bar")))) >+ (destination=? link-data "/url1")) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, full reference link matching is performed on normalized strings, >not parsed inline content >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:782 >source: >+ (test-assert >+ "parse-inlines, full reference link matching is performed on normalized strings,\nnot parsed inline content" >+ (match (parse-inlines >+ (make-document "[bar][foo\\!]" '(("foo!" "/url" #f)))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data "]") >+ ('text text-data "!") >+ ('text text-data "foo") >+ ('text text-data "[") >+ ('text text-data "bar]") >+ ('text text-data "["))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, full reference link labels cannot contain brackets, unless >they are backslash-escaped >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:797 >source: >+ (test-assert >+ "parse-inlines, full reference link labels cannot contain brackets, unless\nthey are backslash-escaped" >+ (match (parse-inlines >+ (make-document "[foo][ref\\[]" '(("ref\\[" "/uri" #f)))) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "foo")))) >+ (destination=? link-data "/uri")) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, simple collapsed reference link >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:810 >source: >+ (test-assert >+ "parse-inlines, simple collapsed reference link" >+ (match (parse-inlines >+ (make-document "[foo][]" '(("foo" "/url" "\"title\"")))) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "foo")))) >+ (and (destination=? link-data "/url") (title=? link-data "title"))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, simple collapsed reference link >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:821 >source: >+ (test-assert >+ "parse-inlines, simple collapsed reference link" >+ (match (parse-inlines >+ (make-document >+ "[*foo* bar][]" >+ '(("*foo* bar" "/url" "\"title\"")))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link >+ link-data >+ ('text text-data " bar") >+ ('emphasis em-data ('text text-data "foo"))))) >+ (and (destination=? link-data "/url") >+ (title=? link-data "title") >+ (em? em-data))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, collapsed reference link labels are case-insensitive >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:835 >source: >+ (test-assert >+ "parse-inlines, collapsed reference link labels are case-insensitive" >+ (match (parse-inlines >+ (make-document "[Foo][]" '(("foo" "/url" "\"title\"")))) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "Foo")))) >+ (and (destination=? link-data "/url") (title=? link-data "title"))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, collapsed reference link, whitespace is not allowed between >the two sets of brackets >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:846 >source: >+ (test-assert >+ "parse-inlines, collapsed reference link, whitespace is not allowed between\nthe two sets of brackets" >+ (match (parse-inlines >+ (make-document "[foo] \n[]" '(("foo" "/url" "\"title\"")))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data "]") >+ ('text text-data "[") >+ ('softbreak break-data) >+ ('link link-data ('text text-data "foo")))) >+ (and (destination=? link-data "/url") (title=? link-data "title"))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, shortcut reference link simple >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:863 >source: >+ (test-assert >+ "parse-inlines, shortcut reference link simple" >+ (match (parse-inlines >+ (make-document "[foo]" '(("foo" "/url" "\"title\"")))) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "foo")))) >+ (and (destination=? link-data "/url") (title=? link-data "title"))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, shortcut reference link simple >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:874 >source: >+ (test-assert >+ "parse-inlines, shortcut reference link simple" >+ (match (parse-inlines >+ (make-document "[*foo* bar]" '(("*foo* bar" "/url" "\"title\"")))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link >+ link-data >+ ('text text-data " bar") >+ ('emphasis em-data ('text text-data "foo"))))) >+ (and (destination=? link-data "/url") >+ (title=? link-data "title") >+ (em? em-data))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, shortcut reference link simple >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:888 >source: >+ (test-assert >+ "parse-inlines, shortcut reference link simple" >+ (match (parse-inlines >+ (make-document >+ "[[*foo* bar]]" >+ '(("*foo* bar" "/url" "\"title\"")))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data "]") >+ ('link >+ link-data >+ ('text text-data " bar") >+ ('emphasis em-data ('text text-data "foo"))) >+ ('text text-data "["))) >+ (and (destination=? link-data "/url") >+ (title=? link-data "title") >+ (em? em-data))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, shortcut reference link simple >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:904 >source: >+ (test-assert >+ "parse-inlines, shortcut reference link simple" >+ (match (parse-inlines >+ (make-document "[[bar [foo]" '(("foo" "/url" "\"title\"")))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link link-data ('text text-data "foo")) >+ ('text text-data "bar ") >+ ('text text-data "[") >+ ('text text-data "["))) >+ (and (destination=? link-data "/url") (title=? link-data "title"))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, shortcut reference link labels are case-insensitive >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:918 >source: >+ (test-assert >+ "parse-inlines, shortcut reference link labels are case-insensitive" >+ (match (parse-inlines >+ (make-document "[Foo]" '(("foo" "/url" "\"title\"")))) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "Foo")))) >+ (and (destination=? link-data "/url") (title=? link-data "title"))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, shortcut reference link a space after the link text should >be preserved >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:929 >source: >+ (test-assert >+ "parse-inlines, shortcut reference link a space after the link text should\nbe preserved" >+ (match (parse-inlines >+ (make-document "[foo] bar" '(("foo" "/url" "\"title\"")))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data " bar") >+ ('link link-data ('text text-data "foo")))) >+ (and (destination=? link-data "/url") (title=? link-data "title"))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, shortcut reference link backslash-escape the opening bracket >to avoid links >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:942 >source: >+ (test-assert >+ "parse-inlines, shortcut reference link backslash-escape the opening bracket\nto avoid links" >+ (match (parse-inlines >+ (make-document "\\[foo]" '(("foo" "/url" "\"title\"")))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('text text-data "foo]") >+ ('text text-data "["))) >+ #t) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, shortcut reference link note that this is a link, >because a link label ends with the first following closing bracket >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:953 >source: >+ (test-assert >+ "parse-inlines, shortcut reference link note that this is a link,\nbecause a link label ends with the first following closing bracket" >+ (match (parse-inlines (make-document "*[foo*]" '(("foo*" "/url" #f)))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link link-data ('text text-data "*") ('text text-data "foo")) >+ ('text text-data "*"))) >+ (and (destination=? link-data "/url") (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, shortcut reference link, full references take precedence >over shortcut references >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:967 >source: >+ (test-assert >+ "parse-inlines, shortcut reference link, full references take precedence\nover shortcut references" >+ (match (parse-inlines >+ (make-document >+ "[foo][bar]" >+ '(("foo" "/url1" #f) ("bar" "/url2" #f)))) >+ (('document >+ doc-data >+ ('paragraph para-data ('link link-data ('text text-data "foo")))) >+ (and (destination=? link-data "/url2") (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, shortcut reference link, in the following case [bar][baz] >is parsed as a reference, [foo] as normal text >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:980 >source: >+ (test-assert >+ "parse-inlines, shortcut reference link, in the following case [bar][baz]\nis parsed as a reference, [foo] as normal text" >+ (match (parse-inlines >+ (make-document "[foo][bar][baz]" '(("baz" "/url" #f)))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link link-data ('text text-data "bar")) >+ ('text text-data "foo]") >+ ('text text-data "["))) >+ (and (destination=? link-data "/url") (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, shortcut reference link, here [foo][bar] is parsed as a reference >since [bar] is defined >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:994 >source: >+ (test-assert >+ "parse-inlines, shortcut reference link, here [foo][bar] is parsed as a reference\nsince [bar] is defined" >+ (match (parse-inlines >+ (make-document >+ "[foo][bar][baz]" >+ '(("baz" "/url1" #f) ("bar" "/url2" #f)))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link link-data2 ('text text-data "baz")) >+ ('link link-data1 ('text text-data "foo")))) >+ (and (destination=? link-data1 "/url2") >+ (title=? link-data1 #f) >+ (destination=? link-data2 "/url1") >+ (title=? link-data2 #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >test-name: parse-inlines, shortcut reference link, here [foo] is not parsed as a shortcut >reference, because it is followed by a link label (even though [bar] is not defined) >location: /var/tmp/portage/dev-scheme/guile-commonmark-0.1.2_pre20240803/work/guile-commonmark-538ffea25ca69d9f3ee17033534ba03cc27ba468/tests/inlines/links.scm:1011 >source: >+ (test-assert >+ "parse-inlines, shortcut reference link, here [foo] is not parsed as a shortcut\nreference, because it is followed by a link label (even though [bar] is not defined)" >+ (match (parse-inlines >+ (make-document >+ "[foo][bar][baz]" >+ '(("baz" "/url1" #f) ("foo" "/url2" #f)))) >+ (('document >+ doc-data >+ ('paragraph >+ para-data >+ ('link link-data ('text text-data "bar")) >+ ('text text-data "foo]") >+ ('text text-data "["))) >+ (and (destination=? link-data "/url1") (title=? link-data #f))) >+ (x (pk 'fail x #f)))) >actual-value: #t >result: PASS > >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 942400
:
907114
| 907115