//! `CommonMark` test suite. // > 👉 **Important**: this module is generated by `build.rs`. // > It is generate from the latest CommonMark website. extern crate micromark; use micromark::{micromark_with_options, CompileOptions, Options}; use pretty_assertions::assert_eq; #[rustfmt::skip] #[test] fn commonmark() -> Result<(), String> { let danger = Options { compile: CompileOptions { allow_dangerous_html: true, allow_dangerous_protocol: true, ..CompileOptions::default() }, ..Options::default() }; assert_eq!( micromark_with_options( r###" foo baz bim "###, &danger )?, r###"
foo	baz		bim
"###, r###"Tabs (1)"### ); assert_eq!( micromark_with_options( r###" foo baz bim "###, &danger )?, r###"
foo	baz		bim
"###, r###"Tabs (2)"### ); assert_eq!( micromark_with_options( r###" a a ὐ a "###, &danger )?, r###"
a	a
ὐ	a
"###, r###"Tabs (3)"### ); assert_eq!( micromark_with_options( r###" - foo bar "###, &danger )?, r###" "###, r###"Tabs (4)"### ); assert_eq!( micromark_with_options( r###"- foo bar "###, &danger )?, r###" "###, r###"Tabs (5)"### ); assert_eq!( micromark_with_options( r###"> foo "###, &danger )?, r###"
  foo
"###, r###"Tabs (6)"### ); assert_eq!( micromark_with_options( r###"- foo "###, &danger )?, r###" "###, r###"Tabs (7)"### ); assert_eq!( micromark_with_options( r###" foo bar "###, &danger )?, r###"
foo
bar
"###, r###"Tabs (8)"### ); assert_eq!( micromark_with_options( r###" - foo - bar - baz "###, &danger )?, r###" "###, r###"Tabs (9)"### ); assert_eq!( micromark_with_options( r###"# Foo "###, &danger )?, r###"

Foo

"###, r###"Tabs (10)"### ); assert_eq!( micromark_with_options( r###"* * * "###, &danger )?, r###"
"###, r###"Tabs (11)"### ); assert_eq!( micromark_with_options( r###"\!\"\#\$\%\&\'\(\)\*\+\,\-\.\/\:\;\<\=\>\?\@\[\\\]\^\_\`\{\|\}\~ "###, &danger )?, r###"

!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~

"###, r###"Backslash escapes (12)"### ); assert_eq!( micromark_with_options( r###"\ \A\a\ \3\φ\« "###, &danger )?, r###"

\ \A\a\ \3\φ\«

"###, r###"Backslash escapes (13)"### ); assert_eq!( micromark_with_options( r###"\*not emphasized* \
not a tag \[not a link](/foo) \`not code` 1\. not a list \* not a list \# not a heading \[foo]: /url "not a reference" \ö not a character entity "###, &danger )?, r###"

*not emphasized* <br/> not a tag [not a link](/foo) `not code` 1. not a list * not a list # not a heading [foo]: /url "not a reference" &ouml; not a character entity

"###, r###"Backslash escapes (14)"### ); assert_eq!( micromark_with_options( r###"\\*emphasis* "###, &danger )?, r###"

\emphasis

"###, r###"Backslash escapes (15)"### ); assert_eq!( micromark_with_options( r###"foo\ bar "###, &danger )?, r###"

foo
bar

"###, r###"Backslash escapes (16)"### ); assert_eq!( micromark_with_options( r###"`` \[\` `` "###, &danger )?, r###"

\[\`

"###, r###"Backslash escapes (17)"### ); assert_eq!( micromark_with_options( r###" \[\] "###, &danger )?, r###"
\[\]
"###, r###"Backslash escapes (18)"### ); assert_eq!( micromark_with_options( r###"~~~ \[\] ~~~ "###, &danger )?, r###"
\[\]
"###, r###"Backslash escapes (19)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"

http://example.com?find=\*

"###, r###"Backslash escapes (20)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###" "###, r###"Backslash escapes (21)"### ); assert_eq!( micromark_with_options( r###"[foo](/bar\* "ti\*tle") "###, &danger )?, r###"

foo

"###, r###"Backslash escapes (22)"### ); assert_eq!( micromark_with_options( r###"[foo] [foo]: /bar\* "ti\*tle" "###, &danger )?, r###"

foo

"###, r###"Backslash escapes (23)"### ); assert_eq!( micromark_with_options( r###"``` foo\+bar foo ``` "###, &danger )?, r###"
foo
"###, r###"Backslash escapes (24)"### ); assert_eq!( micromark_with_options( r###"  & © Æ Ď ¾ ℋ ⅆ ∲ ≧̸ "###, &danger )?, r###"

  & © Æ Ď ¾ ℋ ⅆ ∲ ≧̸

"###, r###"Entity and numeric character references (25)"### ); assert_eq!( micromark_with_options( r###"# Ӓ Ϡ � "###, &danger )?, r###"

# Ӓ Ϡ �

"###, r###"Entity and numeric character references (26)"### ); assert_eq!( micromark_with_options( r###"" ആ ಫ "###, &danger )?, r###"

" ആ ಫ

"###, r###"Entity and numeric character references (27)"### ); assert_eq!( micromark_with_options( r###"  &x; &#; &#x; � &#abcdef0; &ThisIsNotDefined; &hi?; "###, &danger )?, r###"

&nbsp &x; &#; &#x; &#87654321; &#abcdef0; &ThisIsNotDefined; &hi?;

"###, r###"Entity and numeric character references (28)"### ); assert_eq!( micromark_with_options( r###"© "###, &danger )?, r###"

&copy

"###, r###"Entity and numeric character references (29)"### ); assert_eq!( micromark_with_options( r###"&MadeUpEntity; "###, &danger )?, r###"

&MadeUpEntity;

"###, r###"Entity and numeric character references (30)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###" "###, r###"Entity and numeric character references (31)"### ); assert_eq!( micromark_with_options( r###"[foo](/föö "föö") "###, &danger )?, r###"

foo

"###, r###"Entity and numeric character references (32)"### ); assert_eq!( micromark_with_options( r###"[foo] [foo]: /föö "föö" "###, &danger )?, r###"

foo

"###, r###"Entity and numeric character references (33)"### ); assert_eq!( micromark_with_options( r###"``` föö foo ``` "###, &danger )?, r###"
foo
"###, r###"Entity and numeric character references (34)"### ); assert_eq!( micromark_with_options( r###"`föö` "###, &danger )?, r###"

f&ouml;&ouml;

"###, r###"Entity and numeric character references (35)"### ); assert_eq!( micromark_with_options( r###" föfö "###, &danger )?, r###"
f&ouml;f&ouml;
"###, r###"Entity and numeric character references (36)"### ); assert_eq!( micromark_with_options( r###"*foo* *foo* "###, &danger )?, r###"

*foo* foo

"###, r###"Entity and numeric character references (37)"### ); assert_eq!( micromark_with_options( r###"* foo * foo "###, &danger )?, r###"

* foo

"###, r###"Entity and numeric character references (38)"### ); assert_eq!( micromark_with_options( r###"foo bar "###, &danger )?, r###"

foo bar

"###, r###"Entity and numeric character references (39)"### ); assert_eq!( micromark_with_options( r###" foo "###, &danger )?, r###"

foo

"###, r###"Entity and numeric character references (40)"### ); assert_eq!( micromark_with_options( r###"[a](url "tit") "###, &danger )?, r###"

[a](url "tit")

"###, r###"Entity and numeric character references (41)"### ); assert_eq!( micromark_with_options( r###"- `one - two` "###, &danger )?, r###" "###, r###"Precedence (42)"### ); assert_eq!( micromark_with_options( r###"*** --- ___ "###, &danger )?, r###"


"###, r###"Thematic breaks (43)"### ); assert_eq!( micromark_with_options( r###"+++ "###, &danger )?, r###"

+++

"###, r###"Thematic breaks (44)"### ); assert_eq!( micromark_with_options( r###"=== "###, &danger )?, r###"

===

"###, r###"Thematic breaks (45)"### ); assert_eq!( micromark_with_options( r###"-- ** __ "###, &danger )?, r###"

-- ** __

"###, r###"Thematic breaks (46)"### ); assert_eq!( micromark_with_options( r###" *** *** *** "###, &danger )?, r###"


"###, r###"Thematic breaks (47)"### ); assert_eq!( micromark_with_options( r###" *** "###, &danger )?, r###"
***
"###, r###"Thematic breaks (48)"### ); assert_eq!( micromark_with_options( r###"Foo *** "###, &danger )?, r###"

Foo ***

"###, r###"Thematic breaks (49)"### ); assert_eq!( micromark_with_options( r###"_____________________________________ "###, &danger )?, r###"
"###, r###"Thematic breaks (50)"### ); assert_eq!( micromark_with_options( r###" - - - "###, &danger )?, r###"
"###, r###"Thematic breaks (51)"### ); assert_eq!( micromark_with_options( r###" ** * ** * ** * ** "###, &danger )?, r###"
"###, r###"Thematic breaks (52)"### ); assert_eq!( micromark_with_options( r###"- - - - "###, &danger )?, r###"
"###, r###"Thematic breaks (53)"### ); assert_eq!( micromark_with_options( r###"- - - - "###, &danger )?, r###"
"###, r###"Thematic breaks (54)"### ); assert_eq!( micromark_with_options( r###"_ _ _ _ a a------ ---a--- "###, &danger )?, r###"

_ _ _ _ a

a------

---a---

"###, r###"Thematic breaks (55)"### ); assert_eq!( micromark_with_options( r###" *-* "###, &danger )?, r###"

-

"###, r###"Thematic breaks (56)"### ); assert_eq!( micromark_with_options( r###"- foo *** - bar "###, &danger )?, r###"
"###, r###"Thematic breaks (57)"### ); assert_eq!( micromark_with_options( r###"Foo *** bar "###, &danger )?, r###"

Foo


bar

"###, r###"Thematic breaks (58)"### ); assert_eq!( micromark_with_options( r###"Foo --- bar "###, &danger )?, r###"

Foo

bar

"###, r###"Thematic breaks (59)"### ); assert_eq!( micromark_with_options( r###"* Foo * * * * Bar "###, &danger )?, r###"
"###, r###"Thematic breaks (60)"### ); assert_eq!( micromark_with_options( r###"- Foo - * * * "###, &danger )?, r###" "###, r###"Thematic breaks (61)"### ); assert_eq!( micromark_with_options( r###"# foo ## foo ### foo #### foo ##### foo ###### foo "###, &danger )?, r###"

foo

foo

foo

foo

foo
foo
"###, r###"ATX headings (62)"### ); assert_eq!( micromark_with_options( r###"####### foo "###, &danger )?, r###"

####### foo

"###, r###"ATX headings (63)"### ); assert_eq!( micromark_with_options( r###"#5 bolt #hashtag "###, &danger )?, r###"

#5 bolt

#hashtag

"###, r###"ATX headings (64)"### ); assert_eq!( micromark_with_options( r###"\## foo "###, &danger )?, r###"

## foo

"###, r###"ATX headings (65)"### ); assert_eq!( micromark_with_options( r###"# foo *bar* \*baz\* "###, &danger )?, r###"

foo bar *baz*

"###, r###"ATX headings (66)"### ); assert_eq!( micromark_with_options( r###"# foo "###, &danger )?, r###"

foo

"###, r###"ATX headings (67)"### ); assert_eq!( micromark_with_options( r###" ### foo ## foo # foo "###, &danger )?, r###"

foo

foo

foo

"###, r###"ATX headings (68)"### ); assert_eq!( micromark_with_options( r###" # foo "###, &danger )?, r###"
# foo
"###, r###"ATX headings (69)"### ); assert_eq!( micromark_with_options( r###"foo # bar "###, &danger )?, r###"

foo # bar

"###, r###"ATX headings (70)"### ); assert_eq!( micromark_with_options( r###"## foo ## ### bar ### "###, &danger )?, r###"

foo

bar

"###, r###"ATX headings (71)"### ); assert_eq!( micromark_with_options( r###"# foo ################################## ##### foo ## "###, &danger )?, r###"

foo

foo
"###, r###"ATX headings (72)"### ); assert_eq!( micromark_with_options( r###"### foo ### "###, &danger )?, r###"

foo

"###, r###"ATX headings (73)"### ); assert_eq!( micromark_with_options( r###"### foo ### b "###, &danger )?, r###"

foo ### b

"###, r###"ATX headings (74)"### ); assert_eq!( micromark_with_options( r###"# foo# "###, &danger )?, r###"

foo#

"###, r###"ATX headings (75)"### ); assert_eq!( micromark_with_options( r###"### foo \### ## foo #\## # foo \# "###, &danger )?, r###"

foo ###

foo ###

foo #

"###, r###"ATX headings (76)"### ); assert_eq!( micromark_with_options( r###"**** ## foo **** "###, &danger )?, r###"

foo


"###, r###"ATX headings (77)"### ); assert_eq!( micromark_with_options( r###"Foo bar # baz Bar foo "###, &danger )?, r###"

Foo bar

baz

Bar foo

"###, r###"ATX headings (78)"### ); assert_eq!( micromark_with_options( r###"## # ### ### "###, &danger )?, r###"

"###, r###"ATX headings (79)"### ); assert_eq!( micromark_with_options( r###"Foo *bar* ========= Foo *bar* --------- "###, &danger )?, r###"

Foo bar

Foo bar

"###, r###"Setext headings (80)"### ); assert_eq!( micromark_with_options( r###"Foo *bar baz* ==== "###, &danger )?, r###"

Foo bar baz

"###, r###"Setext headings (81)"### ); assert_eq!( micromark_with_options( r###" Foo *bar baz* ==== "###, &danger )?, r###"

Foo bar baz

"###, r###"Setext headings (82)"### ); assert_eq!( micromark_with_options( r###"Foo ------------------------- Foo = "###, &danger )?, r###"

Foo

Foo

"###, r###"Setext headings (83)"### ); assert_eq!( micromark_with_options( r###" Foo --- Foo ----- Foo === "###, &danger )?, r###"

Foo

Foo

Foo

"###, r###"Setext headings (84)"### ); assert_eq!( micromark_with_options( r###" Foo --- Foo --- "###, &danger )?, r###"
Foo
---

Foo

"###, r###"Setext headings (85)"### ); assert_eq!( micromark_with_options( r###"Foo ---- "###, &danger )?, r###"

Foo

"###, r###"Setext headings (86)"### ); assert_eq!( micromark_with_options( r###"Foo --- "###, &danger )?, r###"

Foo ---

"###, r###"Setext headings (87)"### ); assert_eq!( micromark_with_options( r###"Foo = = Foo --- - "###, &danger )?, r###"

Foo = =

Foo


"###, r###"Setext headings (88)"### ); assert_eq!( micromark_with_options( r###"Foo ----- "###, &danger )?, r###"

Foo

"###, r###"Setext headings (89)"### ); assert_eq!( micromark_with_options( r###"Foo\ ---- "###, &danger )?, r###"

Foo\

"###, r###"Setext headings (90)"### ); assert_eq!( micromark_with_options( r###"`Foo ---- ` "###, &danger )?, r###"

`Foo

`

<a title="a lot

of dashes"/>

"###, r###"Setext headings (91)"### ); assert_eq!( micromark_with_options( r###"> Foo --- "###, &danger )?, r###"

Foo


"###, r###"Setext headings (92)"### ); assert_eq!( micromark_with_options( r###"> foo bar === "###, &danger )?, r###"

foo bar ===

"###, r###"Setext headings (93)"### ); assert_eq!( micromark_with_options( r###"- Foo --- "###, &danger )?, r###"
"###, r###"Setext headings (94)"### ); assert_eq!( micromark_with_options( r###"Foo Bar --- "###, &danger )?, r###"

Foo Bar

"###, r###"Setext headings (95)"### ); assert_eq!( micromark_with_options( r###"--- Foo --- Bar --- Baz "###, &danger )?, r###"

Foo

Bar

Baz

"###, r###"Setext headings (96)"### ); assert_eq!( micromark_with_options( r###" ==== "###, &danger )?, r###"

====

"###, r###"Setext headings (97)"### ); assert_eq!( micromark_with_options( r###"--- --- "###, &danger )?, r###"

"###, r###"Setext headings (98)"### ); assert_eq!( micromark_with_options( r###"- foo ----- "###, &danger )?, r###"
"###, r###"Setext headings (99)"### ); assert_eq!( micromark_with_options( r###" foo --- "###, &danger )?, r###"
foo

"###, r###"Setext headings (100)"### ); assert_eq!( micromark_with_options( r###"> foo ----- "###, &danger )?, r###"

foo


"###, r###"Setext headings (101)"### ); assert_eq!( micromark_with_options( r###"\> foo ------ "###, &danger )?, r###"

> foo

"###, r###"Setext headings (102)"### ); assert_eq!( micromark_with_options( r###"Foo bar --- baz "###, &danger )?, r###"

Foo

bar

baz

"###, r###"Setext headings (103)"### ); assert_eq!( micromark_with_options( r###"Foo bar --- baz "###, &danger )?, r###"

Foo bar


baz

"###, r###"Setext headings (104)"### ); assert_eq!( micromark_with_options( r###"Foo bar * * * baz "###, &danger )?, r###"

Foo bar


baz

"###, r###"Setext headings (105)"### ); assert_eq!( micromark_with_options( r###"Foo bar \--- baz "###, &danger )?, r###"

Foo bar --- baz

"###, r###"Setext headings (106)"### ); assert_eq!( micromark_with_options( r###" a simple indented code block "###, &danger )?, r###"
a simple
  indented code block
"###, r###"Indented code blocks (107)"### ); assert_eq!( micromark_with_options( r###" - foo bar "###, &danger )?, r###" "###, r###"Indented code blocks (108)"### ); assert_eq!( micromark_with_options( r###"1. foo - bar "###, &danger )?, r###"
  1. foo

    • bar
"###, r###"Indented code blocks (109)"### ); assert_eq!( micromark_with_options( r###"
*hi* - one "###, &danger )?, r###"
<a/>
*hi*

- one
"###, r###"Indented code blocks (110)"### ); assert_eq!( micromark_with_options( r###" chunk1 chunk2 chunk3 "###, &danger )?, r###"
chunk1

chunk2



chunk3
"###, r###"Indented code blocks (111)"### ); assert_eq!( micromark_with_options( r###" chunk1 chunk2 "###, &danger )?, r###"
chunk1
  
  chunk2
"###, r###"Indented code blocks (112)"### ); assert_eq!( micromark_with_options( r###"Foo bar "###, &danger )?, r###"

Foo bar

"###, r###"Indented code blocks (113)"### ); assert_eq!( micromark_with_options( r###" foo bar "###, &danger )?, r###"
foo

bar

"###, r###"Indented code blocks (114)"### ); assert_eq!( micromark_with_options( r###"# Heading foo Heading ------ foo ---- "###, &danger )?, r###"

Heading

foo

Heading

foo

"###, r###"Indented code blocks (115)"### ); assert_eq!( micromark_with_options( r###" foo bar "###, &danger )?, r###"
    foo
bar
"###, r###"Indented code blocks (116)"### ); assert_eq!( micromark_with_options( r###" foo "###, &danger )?, r###"
foo
"###, r###"Indented code blocks (117)"### ); assert_eq!( micromark_with_options( r###" foo "###, &danger )?, r###"
foo  
"###, r###"Indented code blocks (118)"### ); assert_eq!( micromark_with_options( r###"``` < > ``` "###, &danger )?, r###"
<
 >
"###, r###"Fenced code blocks (119)"### ); assert_eq!( micromark_with_options( r###"~~~ < > ~~~ "###, &danger )?, r###"
<
 >
"###, r###"Fenced code blocks (120)"### ); assert_eq!( micromark_with_options( r###"`` foo `` "###, &danger )?, r###"

foo

"###, r###"Fenced code blocks (121)"### ); assert_eq!( micromark_with_options( r###"``` aaa ~~~ ``` "###, &danger )?, r###"
aaa
~~~
"###, r###"Fenced code blocks (122)"### ); assert_eq!( micromark_with_options( r###"~~~ aaa ``` ~~~ "###, &danger )?, r###"
aaa
```
"###, r###"Fenced code blocks (123)"### ); assert_eq!( micromark_with_options( r###"```` aaa ``` `````` "###, &danger )?, r###"
aaa
```
"###, r###"Fenced code blocks (124)"### ); assert_eq!( micromark_with_options( r###"~~~~ aaa ~~~ ~~~~ "###, &danger )?, r###"
aaa
~~~
"###, r###"Fenced code blocks (125)"### ); assert_eq!( micromark_with_options( r###"``` "###, &danger )?, r###"
"###, r###"Fenced code blocks (126)"### ); assert_eq!( micromark_with_options( r###"````` ``` aaa "###, &danger )?, r###"

```
aaa
"###, r###"Fenced code blocks (127)"### ); assert_eq!( micromark_with_options( r###"> ``` > aaa bbb "###, &danger )?, r###"
aaa

bbb

"###, r###"Fenced code blocks (128)"### ); assert_eq!( micromark_with_options( r###"``` ``` "###, &danger )?, r###"

  
"###, r###"Fenced code blocks (129)"### ); assert_eq!( micromark_with_options( r###"``` ``` "###, &danger )?, r###"
"###, r###"Fenced code blocks (130)"### ); assert_eq!( micromark_with_options( r###" ``` aaa aaa ``` "###, &danger )?, r###"
aaa
aaa
"###, r###"Fenced code blocks (131)"### ); assert_eq!( micromark_with_options( r###" ``` aaa aaa aaa ``` "###, &danger )?, r###"
aaa
aaa
aaa
"###, r###"Fenced code blocks (132)"### ); assert_eq!( micromark_with_options( r###" ``` aaa aaa aaa ``` "###, &danger )?, r###"
aaa
 aaa
aaa
"###, r###"Fenced code blocks (133)"### ); assert_eq!( micromark_with_options( r###" ``` aaa ``` "###, &danger )?, r###"
```
aaa
```
"###, r###"Fenced code blocks (134)"### ); assert_eq!( micromark_with_options( r###"``` aaa ``` "###, &danger )?, r###"
aaa
"###, r###"Fenced code blocks (135)"### ); assert_eq!( micromark_with_options( r###" ``` aaa ``` "###, &danger )?, r###"
aaa
"###, r###"Fenced code blocks (136)"### ); assert_eq!( micromark_with_options( r###"``` aaa ``` "###, &danger )?, r###"
aaa
    ```
"###, r###"Fenced code blocks (137)"### ); assert_eq!( micromark_with_options( r###"``` ``` aaa "###, &danger )?, r###"

aaa

"###, r###"Fenced code blocks (138)"### ); assert_eq!( micromark_with_options( r###"~~~~~~ aaa ~~~ ~~ "###, &danger )?, r###"
aaa
~~~ ~~
"###, r###"Fenced code blocks (139)"### ); assert_eq!( micromark_with_options( r###"foo ``` bar ``` baz "###, &danger )?, r###"

foo

bar

baz

"###, r###"Fenced code blocks (140)"### ); assert_eq!( micromark_with_options( r###"foo --- ~~~ bar ~~~ # baz "###, &danger )?, r###"

foo

bar

baz

"###, r###"Fenced code blocks (141)"### ); assert_eq!( micromark_with_options( r###"```ruby def foo(x) return 3 end ``` "###, &danger )?, r###"
def foo(x)
  return 3
end
"###, r###"Fenced code blocks (142)"### ); assert_eq!( micromark_with_options( r###"~~~~ ruby startline=3 $%@#$ def foo(x) return 3 end ~~~~~~~ "###, &danger )?, r###"
def foo(x)
  return 3
end
"###, r###"Fenced code blocks (143)"### ); assert_eq!( micromark_with_options( r###"````; ```` "###, &danger )?, r###"
"###, r###"Fenced code blocks (144)"### ); assert_eq!( micromark_with_options( r###"``` aa ``` foo "###, &danger )?, r###"

aa foo

"###, r###"Fenced code blocks (145)"### ); assert_eq!( micromark_with_options( r###"~~~ aa ``` ~~~ foo ~~~ "###, &danger )?, r###"
foo
"###, r###"Fenced code blocks (146)"### ); assert_eq!( micromark_with_options( r###"``` ``` aaa ``` "###, &danger )?, r###"
``` aaa
"###, r###"Fenced code blocks (147)"### ); assert_eq!( micromark_with_options( r###"
**Hello**,

_world_.
"###, &danger )?, r###"
**Hello**,

world.

"###, r###"HTML blocks (148)"### ); assert_eq!( micromark_with_options( r###"
hi
okay. "###, &danger )?, r###"
hi

okay.

"###, r###"HTML blocks (149)"### ); assert_eq!( micromark_with_options( r###"
*hello* "###, &danger )?, r###"
*hello* "###, r###"HTML blocks (150)"### ); assert_eq!( micromark_with_options( r###"
*foo* "###, &danger )?, r###"
*foo* "###, r###"HTML blocks (151)"### ); assert_eq!( micromark_with_options( r###"
*Markdown*
"###, &danger )?, r###"

Markdown

"###, r###"HTML blocks (152)"### ); assert_eq!( micromark_with_options( r###"
"###, &danger )?, r###"
"###, r###"HTML blocks (153)"### ); assert_eq!( micromark_with_options( r###"
"###, &danger )?, r###"
"###, r###"HTML blocks (154)"### ); assert_eq!( micromark_with_options( r###"
*foo* *bar* "###, &danger )?, r###"
*foo*

bar

"###, r###"HTML blocks (155)"### ); assert_eq!( micromark_with_options( r###"
"###, &danger )?, r###"
*foo*
"###, r###"HTML blocks (159)"### ); assert_eq!( micromark_with_options( r###"
foo
"###, &danger )?, r###"
foo
"###, r###"HTML blocks (160)"### ); assert_eq!( micromark_with_options( r###"
``` c int x = 33; ``` "###, &danger )?, r###"
``` c int x = 33; ``` "###, r###"HTML blocks (161)"### ); assert_eq!( micromark_with_options( r###" *bar* "###, &danger )?, r###" *bar* "###, r###"HTML blocks (162)"### ); assert_eq!( micromark_with_options( r###" *bar* "###, &danger )?, r###" *bar* "###, r###"HTML blocks (163)"### ); assert_eq!( micromark_with_options( r###" *bar* "###, &danger )?, r###" *bar* "###, r###"HTML blocks (164)"### ); assert_eq!( micromark_with_options( r###" *bar* "###, &danger )?, r###" *bar* "###, r###"HTML blocks (165)"### ); assert_eq!( micromark_with_options( r###" *foo* "###, &danger )?, r###" *foo* "###, r###"HTML blocks (166)"### ); assert_eq!( micromark_with_options( r###" *foo* "###, &danger )?, r###"

foo

"###, r###"HTML blocks (167)"### ); assert_eq!( micromark_with_options( r###"*foo* "###, &danger )?, r###"

foo

"###, r###"HTML blocks (168)"### ); assert_eq!( micromark_with_options( r###"

import Text.HTML.TagSoup

main :: IO ()
main = print $ parseTags tags
okay "###, &danger )?, r###"

import Text.HTML.TagSoup

main :: IO ()
main = print $ parseTags tags

okay

"###, r###"HTML blocks (169)"### ); assert_eq!( micromark_with_options( r###" okay "###, &danger )?, r###"

okay

"###, r###"HTML blocks (170)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###" "###, r###"HTML blocks (171)"### ); assert_eq!( micromark_with_options( r###" okay "###, &danger )?, r###"

okay

"###, r###"HTML blocks (172)"### ); assert_eq!( micromark_with_options( r###" *foo* "###, &danger )?, r###"

foo

"###, r###"HTML blocks (176)"### ); assert_eq!( micromark_with_options( r###"*bar* *baz* "###, &danger )?, r###"*bar*

baz

"###, r###"HTML blocks (177)"### ); assert_eq!( micromark_with_options( r###"1. *bar* "###, &danger )?, r###"1. *bar* "###, r###"HTML blocks (178)"### ); assert_eq!( micromark_with_options( r###" okay "###, &danger )?, r###"

okay

"###, r###"HTML blocks (179)"### ); assert_eq!( micromark_with_options( r###"'; ?> okay "###, &danger )?, r###"'; ?>

okay

"###, r###"HTML blocks (180)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###" "###, r###"HTML blocks (181)"### ); assert_eq!( micromark_with_options( r###" okay "###, &danger )?, r###"

okay

"###, r###"HTML blocks (182)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"
<!-- foo -->
"###, r###"HTML blocks (183)"### ); assert_eq!( micromark_with_options( r###"
"###, &danger )?, r###"
<div>
"###, r###"HTML blocks (184)"### ); assert_eq!( micromark_with_options( r###"Foo
bar
"###, &danger )?, r###"

Foo

bar
"###, r###"HTML blocks (185)"### ); assert_eq!( micromark_with_options( r###"
bar
*foo* "###, &danger )?, r###"
bar
*foo* "###, r###"HTML blocks (186)"### ); assert_eq!( micromark_with_options( r###"Foo baz "###, &danger )?, r###"

Foo baz

"###, r###"HTML blocks (187)"### ); assert_eq!( micromark_with_options( r###"
*Emphasized* text.
"###, &danger )?, r###"

Emphasized text.

"###, r###"HTML blocks (188)"### ); assert_eq!( micromark_with_options( r###"
*Emphasized* text.
"###, &danger )?, r###"
*Emphasized* text.
"###, r###"HTML blocks (189)"### ); assert_eq!( micromark_with_options( r###"
Hi
"###, &danger )?, r###"
Hi
"###, r###"HTML blocks (190)"### ); assert_eq!( micromark_with_options( r###"
Hi
"###, &danger )?, r###"
<td>
  Hi
</td>
"###, r###"HTML blocks (191)"### ); assert_eq!( micromark_with_options( r###"[foo]: /url "title" [foo] "###, &danger )?, r###"

foo

"###, r###"Link reference definitions (192)"### ); assert_eq!( micromark_with_options( r###" [foo]: /url 'the title' [foo] "###, &danger )?, r###"

foo

"###, r###"Link reference definitions (193)"### ); assert_eq!( micromark_with_options( r###"[Foo*bar\]]:my_(url) 'title (with parens)' [Foo*bar\]] "###, &danger )?, r###"

Foo*bar]

"###, r###"Link reference definitions (194)"### ); assert_eq!( micromark_with_options( r###"[Foo bar]: 'title' [Foo bar] "###, &danger )?, r###"

Foo bar

"###, r###"Link reference definitions (195)"### ); assert_eq!( micromark_with_options( r###"[foo]: /url ' title line1 line2 ' [foo] "###, &danger )?, r###"

foo

"###, r###"Link reference definitions (196)"### ); assert_eq!( micromark_with_options( r###"[foo]: /url 'title with blank line' [foo] "###, &danger )?, r###"

[foo]: /url 'title

with blank line'

[foo]

"###, r###"Link reference definitions (197)"### ); assert_eq!( micromark_with_options( r###"[foo]: /url [foo] "###, &danger )?, r###"

foo

"###, r###"Link reference definitions (198)"### ); assert_eq!( micromark_with_options( r###"[foo]: [foo] "###, &danger )?, r###"

[foo]:

[foo]

"###, r###"Link reference definitions (199)"### ); assert_eq!( micromark_with_options( r###"[foo]: <> [foo] "###, &danger )?, r###"

foo

"###, r###"Link reference definitions (200)"### ); assert_eq!( micromark_with_options( r###"[foo]: (baz) [foo] "###, &danger )?, r###"

[foo]: (baz)

[foo]

"###, r###"Link reference definitions (201)"### ); assert_eq!( micromark_with_options( r###"[foo]: /url\bar\*baz "foo\"bar\baz" [foo] "###, &danger )?, r###"

foo

"###, r###"Link reference definitions (202)"### ); assert_eq!( micromark_with_options( r###"[foo] [foo]: url "###, &danger )?, r###"

foo

"###, r###"Link reference definitions (203)"### ); assert_eq!( micromark_with_options( r###"[foo] [foo]: first [foo]: second "###, &danger )?, r###"

foo

"###, r###"Link reference definitions (204)"### ); assert_eq!( micromark_with_options( r###"[FOO]: /url [Foo] "###, &danger )?, r###"

Foo

"###, r###"Link reference definitions (205)"### ); assert_eq!( micromark_with_options( r###"[ΑΓΩ]: /φου [αγω] "###, &danger )?, r###"

αγω

"###, r###"Link reference definitions (206)"### ); assert_eq!( micromark_with_options( r###"[foo]: /url "###, &danger )?, r###""###, r###"Link reference definitions (207)"### ); assert_eq!( micromark_with_options( r###"[ foo ]: /url bar "###, &danger )?, r###"

bar

"###, r###"Link reference definitions (208)"### ); assert_eq!( micromark_with_options( r###"[foo]: /url "title" ok "###, &danger )?, r###"

[foo]: /url "title" ok

"###, r###"Link reference definitions (209)"### ); assert_eq!( micromark_with_options( r###"[foo]: /url "title" ok "###, &danger )?, r###"

"title" ok

"###, r###"Link reference definitions (210)"### ); assert_eq!( micromark_with_options( r###" [foo]: /url "title" [foo] "###, &danger )?, r###"
[foo]: /url "title"

[foo]

"###, r###"Link reference definitions (211)"### ); assert_eq!( micromark_with_options( r###"``` [foo]: /url ``` [foo] "###, &danger )?, r###"
[foo]: /url

[foo]

"###, r###"Link reference definitions (212)"### ); assert_eq!( micromark_with_options( r###"Foo [bar]: /baz [bar] "###, &danger )?, r###"

Foo [bar]: /baz

[bar]

"###, r###"Link reference definitions (213)"### ); assert_eq!( micromark_with_options( r###"# [Foo] [foo]: /url > bar "###, &danger )?, r###"

Foo

bar

"###, r###"Link reference definitions (214)"### ); assert_eq!( micromark_with_options( r###"[foo]: /url bar === [foo] "###, &danger )?, r###"

bar

foo

"###, r###"Link reference definitions (215)"### ); assert_eq!( micromark_with_options( r###"[foo]: /url === [foo] "###, &danger )?, r###"

=== foo

"###, r###"Link reference definitions (216)"### ); assert_eq!( micromark_with_options( r###"[foo]: /foo-url "foo" [bar]: /bar-url "bar" [baz]: /baz-url [foo], [bar], [baz] "###, &danger )?, r###"

foo, bar, baz

"###, r###"Link reference definitions (217)"### ); assert_eq!( micromark_with_options( r###"[foo] > [foo]: /url "###, &danger )?, r###"

foo

"###, r###"Link reference definitions (218)"### ); assert_eq!( micromark_with_options( r###"aaa bbb "###, &danger )?, r###"

aaa

bbb

"###, r###"Paragraphs (219)"### ); assert_eq!( micromark_with_options( r###"aaa bbb ccc ddd "###, &danger )?, r###"

aaa bbb

ccc ddd

"###, r###"Paragraphs (220)"### ); assert_eq!( micromark_with_options( r###"aaa bbb "###, &danger )?, r###"

aaa

bbb

"###, r###"Paragraphs (221)"### ); assert_eq!( micromark_with_options( r###" aaa bbb "###, &danger )?, r###"

aaa bbb

"###, r###"Paragraphs (222)"### ); assert_eq!( micromark_with_options( r###"aaa bbb ccc "###, &danger )?, r###"

aaa bbb ccc

"###, r###"Paragraphs (223)"### ); assert_eq!( micromark_with_options( r###" aaa bbb "###, &danger )?, r###"

aaa bbb

"###, r###"Paragraphs (224)"### ); assert_eq!( micromark_with_options( r###" aaa bbb "###, &danger )?, r###"
aaa

bbb

"###, r###"Paragraphs (225)"### ); assert_eq!( micromark_with_options( r###"aaa bbb "###, &danger )?, r###"

aaa
bbb

"###, r###"Paragraphs (226)"### ); assert_eq!( micromark_with_options( r###" aaa # aaa "###, &danger )?, r###"

aaa

aaa

"###, r###"Blank lines (227)"### ); assert_eq!( micromark_with_options( r###"> # Foo > bar > baz "###, &danger )?, r###"

Foo

bar baz

"###, r###"Block quotes (228)"### ); assert_eq!( micromark_with_options( r###"># Foo >bar > baz "###, &danger )?, r###"

Foo

bar baz

"###, r###"Block quotes (229)"### ); assert_eq!( micromark_with_options( r###" > # Foo > bar > baz "###, &danger )?, r###"

Foo

bar baz

"###, r###"Block quotes (230)"### ); assert_eq!( micromark_with_options( r###" > # Foo > bar > baz "###, &danger )?, r###"
> # Foo
> bar
> baz
"###, r###"Block quotes (231)"### ); assert_eq!( micromark_with_options( r###"> # Foo > bar baz "###, &danger )?, r###"

Foo

bar baz

"###, r###"Block quotes (232)"### ); assert_eq!( micromark_with_options( r###"> bar baz > foo "###, &danger )?, r###"

bar baz foo

"###, r###"Block quotes (233)"### ); assert_eq!( micromark_with_options( r###"> foo --- "###, &danger )?, r###"

foo


"###, r###"Block quotes (234)"### ); assert_eq!( micromark_with_options( r###"> - foo - bar "###, &danger )?, r###"
  • foo
  • bar
"###, r###"Block quotes (235)"### ); assert_eq!( micromark_with_options( r###"> foo bar "###, &danger )?, r###"
foo
bar
"###, r###"Block quotes (236)"### ); assert_eq!( micromark_with_options( r###"> ``` foo ``` "###, &danger )?, r###"

foo

"###, r###"Block quotes (237)"### ); assert_eq!( micromark_with_options( r###"> foo - bar "###, &danger )?, r###"

foo - bar

"###, r###"Block quotes (238)"### ); assert_eq!( micromark_with_options( r###"> "###, &danger )?, r###"
"###, r###"Block quotes (239)"### ); assert_eq!( micromark_with_options( r###"> > > "###, &danger )?, r###"
"###, r###"Block quotes (240)"### ); assert_eq!( micromark_with_options( r###"> > foo > "###, &danger )?, r###"

foo

"###, r###"Block quotes (241)"### ); assert_eq!( micromark_with_options( r###"> foo > bar "###, &danger )?, r###"

foo

bar

"###, r###"Block quotes (242)"### ); assert_eq!( micromark_with_options( r###"> foo > bar "###, &danger )?, r###"

foo bar

"###, r###"Block quotes (243)"### ); assert_eq!( micromark_with_options( r###"> foo > > bar "###, &danger )?, r###"

foo

bar

"###, r###"Block quotes (244)"### ); assert_eq!( micromark_with_options( r###"foo > bar "###, &danger )?, r###"

foo

bar

"###, r###"Block quotes (245)"### ); assert_eq!( micromark_with_options( r###"> aaa *** > bbb "###, &danger )?, r###"

aaa


bbb

"###, r###"Block quotes (246)"### ); assert_eq!( micromark_with_options( r###"> bar baz "###, &danger )?, r###"

bar baz

"###, r###"Block quotes (247)"### ); assert_eq!( micromark_with_options( r###"> bar baz "###, &danger )?, r###"

bar

baz

"###, r###"Block quotes (248)"### ); assert_eq!( micromark_with_options( r###"> bar > baz "###, &danger )?, r###"

bar

baz

"###, r###"Block quotes (249)"### ); assert_eq!( micromark_with_options( r###"> > > foo bar "###, &danger )?, r###"

foo bar

"###, r###"Block quotes (250)"### ); assert_eq!( micromark_with_options( r###">>> foo > bar >>baz "###, &danger )?, r###"

foo bar baz

"###, r###"Block quotes (251)"### ); assert_eq!( micromark_with_options( r###"> code > not code "###, &danger )?, r###"
code

not code

"###, r###"Block quotes (252)"### ); assert_eq!( micromark_with_options( r###"A paragraph with two lines. indented code > A block quote. "###, &danger )?, r###"

A paragraph with two lines.

indented code

A block quote.

"###, r###"List items (253)"### ); assert_eq!( micromark_with_options( r###"1. A paragraph with two lines. indented code > A block quote. "###, &danger )?, r###"
  1. A paragraph with two lines.

    indented code
    

    A block quote.

"###, r###"List items (254)"### ); assert_eq!( micromark_with_options( r###"- one two "###, &danger )?, r###"
  • one

two

"###, r###"List items (255)"### ); assert_eq!( micromark_with_options( r###"- one two "###, &danger )?, r###"
  • one

    two

"###, r###"List items (256)"### ); assert_eq!( micromark_with_options( r###" - one two "###, &danger )?, r###"
  • one
 two
"###, r###"List items (257)"### ); assert_eq!( micromark_with_options( r###" - one two "###, &danger )?, r###"
  • one

    two

"###, r###"List items (258)"### ); assert_eq!( micromark_with_options( r###" > > 1. one >> >> two "###, &danger )?, r###"
  1. one

    two

"###, r###"List items (259)"### ); assert_eq!( micromark_with_options( r###">>- one >> > > two "###, &danger )?, r###"
  • one

two

"###, r###"List items (260)"### ); assert_eq!( micromark_with_options( r###"-one 2.two "###, &danger )?, r###"

-one

2.two

"###, r###"List items (261)"### ); assert_eq!( micromark_with_options( r###"- foo bar "###, &danger )?, r###"
  • foo

    bar

"###, r###"List items (262)"### ); assert_eq!( micromark_with_options( r###"1. foo ``` bar ``` baz > bam "###, &danger )?, r###"
  1. foo

    bar
    

    baz

    bam

"###, r###"List items (263)"### ); assert_eq!( micromark_with_options( r###"- Foo bar baz "###, &danger )?, r###"
  • Foo

    bar
    
    
    baz
    
"###, r###"List items (264)"### ); assert_eq!( micromark_with_options( r###"123456789. ok "###, &danger )?, r###"
  1. ok
"###, r###"List items (265)"### ); assert_eq!( micromark_with_options( r###"1234567890. not ok "###, &danger )?, r###"

1234567890. not ok

"###, r###"List items (266)"### ); assert_eq!( micromark_with_options( r###"0. ok "###, &danger )?, r###"
  1. ok
"###, r###"List items (267)"### ); assert_eq!( micromark_with_options( r###"003. ok "###, &danger )?, r###"
  1. ok
"###, r###"List items (268)"### ); assert_eq!( micromark_with_options( r###"-1. not ok "###, &danger )?, r###"

-1. not ok

"###, r###"List items (269)"### ); assert_eq!( micromark_with_options( r###"- foo bar "###, &danger )?, r###"
  • foo

    bar
    
"###, r###"List items (270)"### ); assert_eq!( micromark_with_options( r###" 10. foo bar "###, &danger )?, r###"
  1. foo

    bar
    
"###, r###"List items (271)"### ); assert_eq!( micromark_with_options( r###" indented code paragraph more code "###, &danger )?, r###"
indented code

paragraph

more code
"###, r###"List items (272)"### ); assert_eq!( micromark_with_options( r###"1. indented code paragraph more code "###, &danger )?, r###"
  1. indented code
    

    paragraph

    more code
    
"###, r###"List items (273)"### ); assert_eq!( micromark_with_options( r###"1. indented code paragraph more code "###, &danger )?, r###"
  1.  indented code
    

    paragraph

    more code
    
"###, r###"List items (274)"### ); assert_eq!( micromark_with_options( r###" foo bar "###, &danger )?, r###"

foo

bar

"###, r###"List items (275)"### ); assert_eq!( micromark_with_options( r###"- foo bar "###, &danger )?, r###"
  • foo

bar

"###, r###"List items (276)"### ); assert_eq!( micromark_with_options( r###"- foo bar "###, &danger )?, r###"
  • foo

    bar

"###, r###"List items (277)"### ); assert_eq!( micromark_with_options( r###"- foo - ``` bar ``` - baz "###, &danger )?, r###"
  • foo
  • bar
    
  • baz
    
"###, r###"List items (278)"### ); assert_eq!( micromark_with_options( r###"- foo "###, &danger )?, r###"
  • foo
"###, r###"List items (279)"### ); assert_eq!( micromark_with_options( r###"- foo "###, &danger )?, r###"

foo

"###, r###"List items (280)"### ); assert_eq!( micromark_with_options( r###"- foo - - bar "###, &danger )?, r###"
  • foo
  • bar
"###, r###"List items (281)"### ); assert_eq!( micromark_with_options( r###"- foo - - bar "###, &danger )?, r###"
  • foo
  • bar
"###, r###"List items (282)"### ); assert_eq!( micromark_with_options( r###"1. foo 2. 3. bar "###, &danger )?, r###"
  1. foo
  2. bar
"###, r###"List items (283)"### ); assert_eq!( micromark_with_options( r###"* "###, &danger )?, r###"
"###, r###"List items (284)"### ); assert_eq!( micromark_with_options( r###"foo * foo 1. "###, &danger )?, r###"

foo *

foo 1.

"###, r###"List items (285)"### ); assert_eq!( micromark_with_options( r###" 1. A paragraph with two lines. indented code > A block quote. "###, &danger )?, r###"
  1. A paragraph with two lines.

    indented code
    

    A block quote.

"###, r###"List items (286)"### ); assert_eq!( micromark_with_options( r###" 1. A paragraph with two lines. indented code > A block quote. "###, &danger )?, r###"
  1. A paragraph with two lines.

    indented code
    

    A block quote.

"###, r###"List items (287)"### ); assert_eq!( micromark_with_options( r###" 1. A paragraph with two lines. indented code > A block quote. "###, &danger )?, r###"
  1. A paragraph with two lines.

    indented code
    

    A block quote.

"###, r###"List items (288)"### ); assert_eq!( micromark_with_options( r###" 1. A paragraph with two lines. indented code > A block quote. "###, &danger )?, r###"
1.  A paragraph
    with two lines.

        indented code

    > A block quote.
"###, r###"List items (289)"### ); assert_eq!( micromark_with_options( r###" 1. A paragraph with two lines. indented code > A block quote. "###, &danger )?, r###"
  1. A paragraph with two lines.

    indented code
    

    A block quote.

"###, r###"List items (290)"### ); assert_eq!( micromark_with_options( r###" 1. A paragraph with two lines. "###, &danger )?, r###"
  1. A paragraph with two lines.
"###, r###"List items (291)"### ); assert_eq!( micromark_with_options( r###"> 1. > Blockquote continued here. "###, &danger )?, r###"
  1. Blockquote continued here.

"###, r###"List items (292)"### ); assert_eq!( micromark_with_options( r###"> 1. > Blockquote > continued here. "###, &danger )?, r###"
  1. Blockquote continued here.

"###, r###"List items (293)"### ); assert_eq!( micromark_with_options( r###"- foo - bar - baz - boo "###, &danger )?, r###"
  • foo
    • bar
      • baz
        • boo
"###, r###"List items (294)"### ); assert_eq!( micromark_with_options( r###"- foo - bar - baz - boo "###, &danger )?, r###"
  • foo
  • bar
  • baz
  • boo
"###, r###"List items (295)"### ); assert_eq!( micromark_with_options( r###"10) foo - bar "###, &danger )?, r###"
  1. foo
    • bar
"###, r###"List items (296)"### ); assert_eq!( micromark_with_options( r###"10) foo - bar "###, &danger )?, r###"
  1. foo
  • bar
"###, r###"List items (297)"### ); assert_eq!( micromark_with_options( r###"- - foo "###, &danger )?, r###"
    • foo
"###, r###"List items (298)"### ); assert_eq!( micromark_with_options( r###"1. - 2. foo "###, &danger )?, r###"
      1. foo
"###, r###"List items (299)"### ); assert_eq!( micromark_with_options( r###"- # Foo - Bar --- baz "###, &danger )?, r###"
  • Foo

  • Bar

    baz
"###, r###"List items (300)"### ); assert_eq!( micromark_with_options( r###"- foo - bar + baz "###, &danger )?, r###"
  • foo
  • bar
  • baz
"###, r###"Lists (301)"### ); assert_eq!( micromark_with_options( r###"1. foo 2. bar 3) baz "###, &danger )?, r###"
  1. foo
  2. bar
  1. baz
"###, r###"Lists (302)"### ); assert_eq!( micromark_with_options( r###"Foo - bar - baz "###, &danger )?, r###"

Foo

  • bar
  • baz
"###, r###"Lists (303)"### ); assert_eq!( micromark_with_options( r###"The number of windows in my house is 14. The number of doors is 6. "###, &danger )?, r###"

The number of windows in my house is 14. The number of doors is 6.

"###, r###"Lists (304)"### ); assert_eq!( micromark_with_options( r###"The number of windows in my house is 1. The number of doors is 6. "###, &danger )?, r###"

The number of windows in my house is

  1. The number of doors is 6.
"###, r###"Lists (305)"### ); assert_eq!( micromark_with_options( r###"- foo - bar - baz "###, &danger )?, r###"
  • foo

  • bar

  • baz

"###, r###"Lists (306)"### ); assert_eq!( micromark_with_options( r###"- foo - bar - baz bim "###, &danger )?, r###"
  • foo
    • bar
      • baz

        bim

"###, r###"Lists (307)"### ); assert_eq!( micromark_with_options( r###"- foo - bar - baz - bim "###, &danger )?, r###"
  • foo
  • bar
  • baz
  • bim
"###, r###"Lists (308)"### ); assert_eq!( micromark_with_options( r###"- foo notcode - foo code "###, &danger )?, r###"
  • foo

    notcode

  • foo

code
"###, r###"Lists (309)"### ); assert_eq!( micromark_with_options( r###"- a - b - c - d - e - f - g "###, &danger )?, r###"
  • a
  • b
  • c
  • d
  • e
  • f
  • g
"###, r###"Lists (310)"### ); assert_eq!( micromark_with_options( r###"1. a 2. b 3. c "###, &danger )?, r###"
  1. a

  2. b

  3. c

"###, r###"Lists (311)"### ); assert_eq!( micromark_with_options( r###"- a - b - c - d - e "###, &danger )?, r###"
  • a
  • b
  • c
  • d - e
"###, r###"Lists (312)"### ); assert_eq!( micromark_with_options( r###"1. a 2. b 3. c "###, &danger )?, r###"
  1. a

  2. b

3. c
"###, r###"Lists (313)"### ); assert_eq!( micromark_with_options( r###"- a - b - c "###, &danger )?, r###"
  • a

  • b

  • c

"###, r###"Lists (314)"### ); assert_eq!( micromark_with_options( r###"* a * * c "###, &danger )?, r###"
  • a

  • c

"###, r###"Lists (315)"### ); assert_eq!( micromark_with_options( r###"- a - b c - d "###, &danger )?, r###"
  • a

  • b

    c

  • d

"###, r###"Lists (316)"### ); assert_eq!( micromark_with_options( r###"- a - b [ref]: /url - d "###, &danger )?, r###"
  • a

  • b

  • d

"###, r###"Lists (317)"### ); assert_eq!( micromark_with_options( r###"- a - ``` b ``` - c "###, &danger )?, r###"
  • a
  • b
    
    
    
  • c
"###, r###"Lists (318)"### ); assert_eq!( micromark_with_options( r###"- a - b c - d "###, &danger )?, r###"
  • a
    • b

      c

  • d
"###, r###"Lists (319)"### ); assert_eq!( micromark_with_options( r###"* a > b > * c "###, &danger )?, r###"
  • a

    b

  • c
"###, r###"Lists (320)"### ); assert_eq!( micromark_with_options( r###"- a > b ``` c ``` - d "###, &danger )?, r###"
  • a

    b

    c
    
  • d
"###, r###"Lists (321)"### ); assert_eq!( micromark_with_options( r###"- a "###, &danger )?, r###"
  • a
"###, r###"Lists (322)"### ); assert_eq!( micromark_with_options( r###"- a - b "###, &danger )?, r###"
  • a
    • b
"###, r###"Lists (323)"### ); assert_eq!( micromark_with_options( r###"1. ``` foo ``` bar "###, &danger )?, r###"
  1. foo
    

    bar

"###, r###"Lists (324)"### ); assert_eq!( micromark_with_options( r###"* foo * bar baz "###, &danger )?, r###"
  • foo

    • bar

    baz

"###, r###"Lists (325)"### ); assert_eq!( micromark_with_options( r###"- a - b - c - d - e - f "###, &danger )?, r###"
  • a

    • b
    • c
  • d

    • e
    • f
"###, r###"Lists (326)"### ); assert_eq!( micromark_with_options( r###"`hi`lo` "###, &danger )?, r###"

hilo`

"###, r###"Inlines (327)"### ); assert_eq!( micromark_with_options( r###"`foo` "###, &danger )?, r###"

foo

"###, r###"Code spans (328)"### ); assert_eq!( micromark_with_options( r###"`` foo ` bar `` "###, &danger )?, r###"

foo ` bar

"###, r###"Code spans (329)"### ); assert_eq!( micromark_with_options( r###"` `` ` "###, &danger )?, r###"

``

"###, r###"Code spans (330)"### ); assert_eq!( micromark_with_options( r###"` `` ` "###, &danger )?, r###"

``

"###, r###"Code spans (331)"### ); assert_eq!( micromark_with_options( r###"` a` "###, &danger )?, r###"

a

"###, r###"Code spans (332)"### ); assert_eq!( micromark_with_options( r###"` b ` "###, &danger )?, r###"

 b 

"###, r###"Code spans (333)"### ); assert_eq!( micromark_with_options( r###"` ` ` ` "###, &danger )?, r###"

 

"###, r###"Code spans (334)"### ); assert_eq!( micromark_with_options( r###"`` foo bar baz `` "###, &danger )?, r###"

foo bar baz

"###, r###"Code spans (335)"### ); assert_eq!( micromark_with_options( r###"`` foo `` "###, &danger )?, r###"

foo

"###, r###"Code spans (336)"### ); assert_eq!( micromark_with_options( r###"`foo bar baz` "###, &danger )?, r###"

foo bar baz

"###, r###"Code spans (337)"### ); assert_eq!( micromark_with_options( r###"`foo\`bar` "###, &danger )?, r###"

foo\bar`

"###, r###"Code spans (338)"### ); assert_eq!( micromark_with_options( r###"``foo`bar`` "###, &danger )?, r###"

foo`bar

"###, r###"Code spans (339)"### ); assert_eq!( micromark_with_options( r###"` foo `` bar ` "###, &danger )?, r###"

foo `` bar

"###, r###"Code spans (340)"### ); assert_eq!( micromark_with_options( r###"*foo`*` "###, &danger )?, r###"

*foo*

"###, r###"Code spans (341)"### ); assert_eq!( micromark_with_options( r###"[not a `link](/foo`) "###, &danger )?, r###"

[not a link](/foo)

"###, r###"Code spans (342)"### ); assert_eq!( micromark_with_options( r###"`` "###, &danger )?, r###"

<a href="">`

"###, r###"Code spans (343)"### ); assert_eq!( micromark_with_options( r###"
` "###, &danger )?, r###"

`

"###, r###"Code spans (344)"### ); assert_eq!( micromark_with_options( r###"`` "###, &danger )?, r###"

<http://foo.bar.baz>`

"###, r###"Code spans (345)"### ); assert_eq!( micromark_with_options( r###"` "###, &danger )?, r###"

http://foo.bar.`baz`

"###, r###"Code spans (346)"### ); assert_eq!( micromark_with_options( r###"```foo`` "###, &danger )?, r###"

```foo``

"###, r###"Code spans (347)"### ); assert_eq!( micromark_with_options( r###"`foo "###, &danger )?, r###"

`foo

"###, r###"Code spans (348)"### ); assert_eq!( micromark_with_options( r###"`foo``bar`` "###, &danger )?, r###"

`foobar

"###, r###"Code spans (349)"### ); assert_eq!( micromark_with_options( r###"*foo bar* "###, &danger )?, r###"

foo bar

"###, r###"Emphasis and strong emphasis (350)"### ); assert_eq!( micromark_with_options( r###"a * foo bar* "###, &danger )?, r###"

a * foo bar*

"###, r###"Emphasis and strong emphasis (351)"### ); assert_eq!( micromark_with_options( r###"a*"foo"* "###, &danger )?, r###"

a*"foo"*

"###, r###"Emphasis and strong emphasis (352)"### ); assert_eq!( micromark_with_options( r###"* a * "###, &danger )?, r###"

* a *

"###, r###"Emphasis and strong emphasis (353)"### ); assert_eq!( micromark_with_options( r###"foo*bar* "###, &danger )?, r###"

foobar

"###, r###"Emphasis and strong emphasis (354)"### ); assert_eq!( micromark_with_options( r###"5*6*78 "###, &danger )?, r###"

5678

"###, r###"Emphasis and strong emphasis (355)"### ); assert_eq!( micromark_with_options( r###"_foo bar_ "###, &danger )?, r###"

foo bar

"###, r###"Emphasis and strong emphasis (356)"### ); assert_eq!( micromark_with_options( r###"_ foo bar_ "###, &danger )?, r###"

_ foo bar_

"###, r###"Emphasis and strong emphasis (357)"### ); assert_eq!( micromark_with_options( r###"a_"foo"_ "###, &danger )?, r###"

a_"foo"_

"###, r###"Emphasis and strong emphasis (358)"### ); assert_eq!( micromark_with_options( r###"foo_bar_ "###, &danger )?, r###"

foo_bar_

"###, r###"Emphasis and strong emphasis (359)"### ); assert_eq!( micromark_with_options( r###"5_6_78 "###, &danger )?, r###"

5_6_78

"###, r###"Emphasis and strong emphasis (360)"### ); assert_eq!( micromark_with_options( r###"пристаням_стремятся_ "###, &danger )?, r###"

пристаням_стремятся_

"###, r###"Emphasis and strong emphasis (361)"### ); assert_eq!( micromark_with_options( r###"aa_"bb"_cc "###, &danger )?, r###"

aa_"bb"_cc

"###, r###"Emphasis and strong emphasis (362)"### ); assert_eq!( micromark_with_options( r###"foo-_(bar)_ "###, &danger )?, r###"

foo-(bar)

"###, r###"Emphasis and strong emphasis (363)"### ); assert_eq!( micromark_with_options( r###"_foo* "###, &danger )?, r###"

_foo*

"###, r###"Emphasis and strong emphasis (364)"### ); assert_eq!( micromark_with_options( r###"*foo bar * "###, &danger )?, r###"

*foo bar *

"###, r###"Emphasis and strong emphasis (365)"### ); assert_eq!( micromark_with_options( r###"*foo bar * "###, &danger )?, r###"

*foo bar *

"###, r###"Emphasis and strong emphasis (366)"### ); assert_eq!( micromark_with_options( r###"*(*foo) "###, &danger )?, r###"

*(*foo)

"###, r###"Emphasis and strong emphasis (367)"### ); assert_eq!( micromark_with_options( r###"*(*foo*)* "###, &danger )?, r###"

(foo)

"###, r###"Emphasis and strong emphasis (368)"### ); assert_eq!( micromark_with_options( r###"*foo*bar "###, &danger )?, r###"

foobar

"###, r###"Emphasis and strong emphasis (369)"### ); assert_eq!( micromark_with_options( r###"_foo bar _ "###, &danger )?, r###"

_foo bar _

"###, r###"Emphasis and strong emphasis (370)"### ); assert_eq!( micromark_with_options( r###"_(_foo) "###, &danger )?, r###"

_(_foo)

"###, r###"Emphasis and strong emphasis (371)"### ); assert_eq!( micromark_with_options( r###"_(_foo_)_ "###, &danger )?, r###"

(foo)

"###, r###"Emphasis and strong emphasis (372)"### ); assert_eq!( micromark_with_options( r###"_foo_bar "###, &danger )?, r###"

_foo_bar

"###, r###"Emphasis and strong emphasis (373)"### ); assert_eq!( micromark_with_options( r###"_пристаням_стремятся "###, &danger )?, r###"

_пристаням_стремятся

"###, r###"Emphasis and strong emphasis (374)"### ); assert_eq!( micromark_with_options( r###"_foo_bar_baz_ "###, &danger )?, r###"

foo_bar_baz

"###, r###"Emphasis and strong emphasis (375)"### ); assert_eq!( micromark_with_options( r###"_(bar)_. "###, &danger )?, r###"

(bar).

"###, r###"Emphasis and strong emphasis (376)"### ); assert_eq!( micromark_with_options( r###"**foo bar** "###, &danger )?, r###"

foo bar

"###, r###"Emphasis and strong emphasis (377)"### ); assert_eq!( micromark_with_options( r###"** foo bar** "###, &danger )?, r###"

** foo bar**

"###, r###"Emphasis and strong emphasis (378)"### ); assert_eq!( micromark_with_options( r###"a**"foo"** "###, &danger )?, r###"

a**"foo"**

"###, r###"Emphasis and strong emphasis (379)"### ); assert_eq!( micromark_with_options( r###"foo**bar** "###, &danger )?, r###"

foobar

"###, r###"Emphasis and strong emphasis (380)"### ); assert_eq!( micromark_with_options( r###"__foo bar__ "###, &danger )?, r###"

foo bar

"###, r###"Emphasis and strong emphasis (381)"### ); assert_eq!( micromark_with_options( r###"__ foo bar__ "###, &danger )?, r###"

__ foo bar__

"###, r###"Emphasis and strong emphasis (382)"### ); assert_eq!( micromark_with_options( r###"__ foo bar__ "###, &danger )?, r###"

__ foo bar__

"###, r###"Emphasis and strong emphasis (383)"### ); assert_eq!( micromark_with_options( r###"a__"foo"__ "###, &danger )?, r###"

a__"foo"__

"###, r###"Emphasis and strong emphasis (384)"### ); assert_eq!( micromark_with_options( r###"foo__bar__ "###, &danger )?, r###"

foo__bar__

"###, r###"Emphasis and strong emphasis (385)"### ); assert_eq!( micromark_with_options( r###"5__6__78 "###, &danger )?, r###"

5__6__78

"###, r###"Emphasis and strong emphasis (386)"### ); assert_eq!( micromark_with_options( r###"пристаням__стремятся__ "###, &danger )?, r###"

пристаням__стремятся__

"###, r###"Emphasis and strong emphasis (387)"### ); assert_eq!( micromark_with_options( r###"__foo, __bar__, baz__ "###, &danger )?, r###"

foo, bar, baz

"###, r###"Emphasis and strong emphasis (388)"### ); assert_eq!( micromark_with_options( r###"foo-__(bar)__ "###, &danger )?, r###"

foo-(bar)

"###, r###"Emphasis and strong emphasis (389)"### ); assert_eq!( micromark_with_options( r###"**foo bar ** "###, &danger )?, r###"

**foo bar **

"###, r###"Emphasis and strong emphasis (390)"### ); assert_eq!( micromark_with_options( r###"**(**foo) "###, &danger )?, r###"

**(**foo)

"###, r###"Emphasis and strong emphasis (391)"### ); assert_eq!( micromark_with_options( r###"*(**foo**)* "###, &danger )?, r###"

(foo)

"###, r###"Emphasis and strong emphasis (392)"### ); assert_eq!( micromark_with_options( r###"**Gomphocarpus (*Gomphocarpus physocarpus*, syn. *Asclepias physocarpa*)** "###, &danger )?, r###"

Gomphocarpus (Gomphocarpus physocarpus, syn. Asclepias physocarpa)

"###, r###"Emphasis and strong emphasis (393)"### ); assert_eq!( micromark_with_options( r###"**foo "*bar*" foo** "###, &danger )?, r###"

foo "bar" foo

"###, r###"Emphasis and strong emphasis (394)"### ); assert_eq!( micromark_with_options( r###"**foo**bar "###, &danger )?, r###"

foobar

"###, r###"Emphasis and strong emphasis (395)"### ); assert_eq!( micromark_with_options( r###"__foo bar __ "###, &danger )?, r###"

__foo bar __

"###, r###"Emphasis and strong emphasis (396)"### ); assert_eq!( micromark_with_options( r###"__(__foo) "###, &danger )?, r###"

__(__foo)

"###, r###"Emphasis and strong emphasis (397)"### ); assert_eq!( micromark_with_options( r###"_(__foo__)_ "###, &danger )?, r###"

(foo)

"###, r###"Emphasis and strong emphasis (398)"### ); assert_eq!( micromark_with_options( r###"__foo__bar "###, &danger )?, r###"

__foo__bar

"###, r###"Emphasis and strong emphasis (399)"### ); assert_eq!( micromark_with_options( r###"__пристаням__стремятся "###, &danger )?, r###"

__пристаням__стремятся

"###, r###"Emphasis and strong emphasis (400)"### ); assert_eq!( micromark_with_options( r###"__foo__bar__baz__ "###, &danger )?, r###"

foo__bar__baz

"###, r###"Emphasis and strong emphasis (401)"### ); assert_eq!( micromark_with_options( r###"__(bar)__. "###, &danger )?, r###"

(bar).

"###, r###"Emphasis and strong emphasis (402)"### ); assert_eq!( micromark_with_options( r###"*foo [bar](/url)* "###, &danger )?, r###"

foo bar

"###, r###"Emphasis and strong emphasis (403)"### ); assert_eq!( micromark_with_options( r###"*foo bar* "###, &danger )?, r###"

foo bar

"###, r###"Emphasis and strong emphasis (404)"### ); assert_eq!( micromark_with_options( r###"_foo __bar__ baz_ "###, &danger )?, r###"

foo bar baz

"###, r###"Emphasis and strong emphasis (405)"### ); assert_eq!( micromark_with_options( r###"_foo _bar_ baz_ "###, &danger )?, r###"

foo bar baz

"###, r###"Emphasis and strong emphasis (406)"### ); assert_eq!( micromark_with_options( r###"__foo_ bar_ "###, &danger )?, r###"

foo bar

"###, r###"Emphasis and strong emphasis (407)"### ); assert_eq!( micromark_with_options( r###"*foo *bar** "###, &danger )?, r###"

foo bar

"###, r###"Emphasis and strong emphasis (408)"### ); assert_eq!( micromark_with_options( r###"*foo **bar** baz* "###, &danger )?, r###"

foo bar baz

"###, r###"Emphasis and strong emphasis (409)"### ); assert_eq!( micromark_with_options( r###"*foo**bar**baz* "###, &danger )?, r###"

foobarbaz

"###, r###"Emphasis and strong emphasis (410)"### ); assert_eq!( micromark_with_options( r###"*foo**bar* "###, &danger )?, r###"

foo**bar

"###, r###"Emphasis and strong emphasis (411)"### ); assert_eq!( micromark_with_options( r###"***foo** bar* "###, &danger )?, r###"

foo bar

"###, r###"Emphasis and strong emphasis (412)"### ); assert_eq!( micromark_with_options( r###"*foo **bar*** "###, &danger )?, r###"

foo bar

"###, r###"Emphasis and strong emphasis (413)"### ); assert_eq!( micromark_with_options( r###"*foo**bar*** "###, &danger )?, r###"

foobar

"###, r###"Emphasis and strong emphasis (414)"### ); assert_eq!( micromark_with_options( r###"foo***bar***baz "###, &danger )?, r###"

foobarbaz

"###, r###"Emphasis and strong emphasis (415)"### ); assert_eq!( micromark_with_options( r###"foo******bar*********baz "###, &danger )?, r###"

foobar***baz

"###, r###"Emphasis and strong emphasis (416)"### ); assert_eq!( micromark_with_options( r###"*foo **bar *baz* bim** bop* "###, &danger )?, r###"

foo bar baz bim bop

"###, r###"Emphasis and strong emphasis (417)"### ); assert_eq!( micromark_with_options( r###"*foo [*bar*](/url)* "###, &danger )?, r###"

foo bar

"###, r###"Emphasis and strong emphasis (418)"### ); assert_eq!( micromark_with_options( r###"** is not an empty emphasis "###, &danger )?, r###"

** is not an empty emphasis

"###, r###"Emphasis and strong emphasis (419)"### ); assert_eq!( micromark_with_options( r###"**** is not an empty strong emphasis "###, &danger )?, r###"

**** is not an empty strong emphasis

"###, r###"Emphasis and strong emphasis (420)"### ); assert_eq!( micromark_with_options( r###"**foo [bar](/url)** "###, &danger )?, r###"

foo bar

"###, r###"Emphasis and strong emphasis (421)"### ); assert_eq!( micromark_with_options( r###"**foo bar** "###, &danger )?, r###"

foo bar

"###, r###"Emphasis and strong emphasis (422)"### ); assert_eq!( micromark_with_options( r###"__foo _bar_ baz__ "###, &danger )?, r###"

foo bar baz

"###, r###"Emphasis and strong emphasis (423)"### ); assert_eq!( micromark_with_options( r###"__foo __bar__ baz__ "###, &danger )?, r###"

foo bar baz

"###, r###"Emphasis and strong emphasis (424)"### ); assert_eq!( micromark_with_options( r###"____foo__ bar__ "###, &danger )?, r###"

foo bar

"###, r###"Emphasis and strong emphasis (425)"### ); assert_eq!( micromark_with_options( r###"**foo **bar**** "###, &danger )?, r###"

foo bar

"###, r###"Emphasis and strong emphasis (426)"### ); assert_eq!( micromark_with_options( r###"**foo *bar* baz** "###, &danger )?, r###"

foo bar baz

"###, r###"Emphasis and strong emphasis (427)"### ); assert_eq!( micromark_with_options( r###"**foo*bar*baz** "###, &danger )?, r###"

foobarbaz

"###, r###"Emphasis and strong emphasis (428)"### ); assert_eq!( micromark_with_options( r###"***foo* bar** "###, &danger )?, r###"

foo bar

"###, r###"Emphasis and strong emphasis (429)"### ); assert_eq!( micromark_with_options( r###"**foo *bar*** "###, &danger )?, r###"

foo bar

"###, r###"Emphasis and strong emphasis (430)"### ); assert_eq!( micromark_with_options( r###"**foo *bar **baz** bim* bop** "###, &danger )?, r###"

foo bar baz bim bop

"###, r###"Emphasis and strong emphasis (431)"### ); assert_eq!( micromark_with_options( r###"**foo [*bar*](/url)** "###, &danger )?, r###"

foo bar

"###, r###"Emphasis and strong emphasis (432)"### ); assert_eq!( micromark_with_options( r###"__ is not an empty emphasis "###, &danger )?, r###"

__ is not an empty emphasis

"###, r###"Emphasis and strong emphasis (433)"### ); assert_eq!( micromark_with_options( r###"____ is not an empty strong emphasis "###, &danger )?, r###"

____ is not an empty strong emphasis

"###, r###"Emphasis and strong emphasis (434)"### ); assert_eq!( micromark_with_options( r###"foo *** "###, &danger )?, r###"

foo ***

"###, r###"Emphasis and strong emphasis (435)"### ); assert_eq!( micromark_with_options( r###"foo *\** "###, &danger )?, r###"

foo *

"###, r###"Emphasis and strong emphasis (436)"### ); assert_eq!( micromark_with_options( r###"foo *_* "###, &danger )?, r###"

foo _

"###, r###"Emphasis and strong emphasis (437)"### ); assert_eq!( micromark_with_options( r###"foo ***** "###, &danger )?, r###"

foo *****

"###, r###"Emphasis and strong emphasis (438)"### ); assert_eq!( micromark_with_options( r###"foo **\*** "###, &danger )?, r###"

foo *

"###, r###"Emphasis and strong emphasis (439)"### ); assert_eq!( micromark_with_options( r###"foo **_** "###, &danger )?, r###"

foo _

"###, r###"Emphasis and strong emphasis (440)"### ); assert_eq!( micromark_with_options( r###"**foo* "###, &danger )?, r###"

*foo

"###, r###"Emphasis and strong emphasis (441)"### ); assert_eq!( micromark_with_options( r###"*foo** "###, &danger )?, r###"

foo*

"###, r###"Emphasis and strong emphasis (442)"### ); assert_eq!( micromark_with_options( r###"***foo** "###, &danger )?, r###"

*foo

"###, r###"Emphasis and strong emphasis (443)"### ); assert_eq!( micromark_with_options( r###"****foo* "###, &danger )?, r###"

***foo

"###, r###"Emphasis and strong emphasis (444)"### ); assert_eq!( micromark_with_options( r###"**foo*** "###, &danger )?, r###"

foo*

"###, r###"Emphasis and strong emphasis (445)"### ); assert_eq!( micromark_with_options( r###"*foo**** "###, &danger )?, r###"

foo***

"###, r###"Emphasis and strong emphasis (446)"### ); assert_eq!( micromark_with_options( r###"foo ___ "###, &danger )?, r###"

foo ___

"###, r###"Emphasis and strong emphasis (447)"### ); assert_eq!( micromark_with_options( r###"foo _\__ "###, &danger )?, r###"

foo _

"###, r###"Emphasis and strong emphasis (448)"### ); assert_eq!( micromark_with_options( r###"foo _*_ "###, &danger )?, r###"

foo *

"###, r###"Emphasis and strong emphasis (449)"### ); assert_eq!( micromark_with_options( r###"foo _____ "###, &danger )?, r###"

foo _____

"###, r###"Emphasis and strong emphasis (450)"### ); assert_eq!( micromark_with_options( r###"foo __\___ "###, &danger )?, r###"

foo _

"###, r###"Emphasis and strong emphasis (451)"### ); assert_eq!( micromark_with_options( r###"foo __*__ "###, &danger )?, r###"

foo *

"###, r###"Emphasis and strong emphasis (452)"### ); assert_eq!( micromark_with_options( r###"__foo_ "###, &danger )?, r###"

_foo

"###, r###"Emphasis and strong emphasis (453)"### ); assert_eq!( micromark_with_options( r###"_foo__ "###, &danger )?, r###"

foo_

"###, r###"Emphasis and strong emphasis (454)"### ); assert_eq!( micromark_with_options( r###"___foo__ "###, &danger )?, r###"

_foo

"###, r###"Emphasis and strong emphasis (455)"### ); assert_eq!( micromark_with_options( r###"____foo_ "###, &danger )?, r###"

___foo

"###, r###"Emphasis and strong emphasis (456)"### ); assert_eq!( micromark_with_options( r###"__foo___ "###, &danger )?, r###"

foo_

"###, r###"Emphasis and strong emphasis (457)"### ); assert_eq!( micromark_with_options( r###"_foo____ "###, &danger )?, r###"

foo___

"###, r###"Emphasis and strong emphasis (458)"### ); assert_eq!( micromark_with_options( r###"**foo** "###, &danger )?, r###"

foo

"###, r###"Emphasis and strong emphasis (459)"### ); assert_eq!( micromark_with_options( r###"*_foo_* "###, &danger )?, r###"

foo

"###, r###"Emphasis and strong emphasis (460)"### ); assert_eq!( micromark_with_options( r###"__foo__ "###, &danger )?, r###"

foo

"###, r###"Emphasis and strong emphasis (461)"### ); assert_eq!( micromark_with_options( r###"_*foo*_ "###, &danger )?, r###"

foo

"###, r###"Emphasis and strong emphasis (462)"### ); assert_eq!( micromark_with_options( r###"****foo**** "###, &danger )?, r###"

foo

"###, r###"Emphasis and strong emphasis (463)"### ); assert_eq!( micromark_with_options( r###"____foo____ "###, &danger )?, r###"

foo

"###, r###"Emphasis and strong emphasis (464)"### ); assert_eq!( micromark_with_options( r###"******foo****** "###, &danger )?, r###"

foo

"###, r###"Emphasis and strong emphasis (465)"### ); assert_eq!( micromark_with_options( r###"***foo*** "###, &danger )?, r###"

foo

"###, r###"Emphasis and strong emphasis (466)"### ); assert_eq!( micromark_with_options( r###"_____foo_____ "###, &danger )?, r###"

foo

"###, r###"Emphasis and strong emphasis (467)"### ); assert_eq!( micromark_with_options( r###"*foo _bar* baz_ "###, &danger )?, r###"

foo _bar baz_

"###, r###"Emphasis and strong emphasis (468)"### ); assert_eq!( micromark_with_options( r###"*foo __bar *baz bim__ bam* "###, &danger )?, r###"

foo bar *baz bim bam

"###, r###"Emphasis and strong emphasis (469)"### ); assert_eq!( micromark_with_options( r###"**foo **bar baz** "###, &danger )?, r###"

**foo bar baz

"###, r###"Emphasis and strong emphasis (470)"### ); assert_eq!( micromark_with_options( r###"*foo *bar baz* "###, &danger )?, r###"

*foo bar baz

"###, r###"Emphasis and strong emphasis (471)"### ); assert_eq!( micromark_with_options( r###"*[bar*](/url) "###, &danger )?, r###"

*bar*

"###, r###"Emphasis and strong emphasis (472)"### ); assert_eq!( micromark_with_options( r###"_foo [bar_](/url) "###, &danger )?, r###"

_foo bar_

"###, r###"Emphasis and strong emphasis (473)"### ); assert_eq!( micromark_with_options( r###"* "###, &danger )?, r###"

*

"###, r###"Emphasis and strong emphasis (474)"### ); assert_eq!( micromark_with_options( r###"** "###, &danger )?, r###"

**

"###, r###"Emphasis and strong emphasis (475)"### ); assert_eq!( micromark_with_options( r###"__ "###, &danger )?, r###"

__

"###, r###"Emphasis and strong emphasis (476)"### ); assert_eq!( micromark_with_options( r###"*a `*`* "###, &danger )?, r###"

a *

"###, r###"Emphasis and strong emphasis (477)"### ); assert_eq!( micromark_with_options( r###"_a `_`_ "###, &danger )?, r###"

a _

"###, r###"Emphasis and strong emphasis (478)"### ); assert_eq!( micromark_with_options( r###"**a "###, &danger )?, r###"

**ahttp://foo.bar/?q=**

"###, r###"Emphasis and strong emphasis (479)"### ); assert_eq!( micromark_with_options( r###"__a "###, &danger )?, r###"

__ahttp://foo.bar/?q=__

"###, r###"Emphasis and strong emphasis (480)"### ); assert_eq!( micromark_with_options( r###"[link](/uri "title") "###, &danger )?, r###"

link

"###, r###"Links (481)"### ); assert_eq!( micromark_with_options( r###"[link](/uri) "###, &danger )?, r###"

link

"###, r###"Links (482)"### ); assert_eq!( micromark_with_options( r###"[](./target.md) "###, &danger )?, r###"

"###, r###"Links (483)"### ); assert_eq!( micromark_with_options( r###"[link]() "###, &danger )?, r###"

link

"###, r###"Links (484)"### ); assert_eq!( micromark_with_options( r###"[link](<>) "###, &danger )?, r###"

link

"###, r###"Links (485)"### ); assert_eq!( micromark_with_options( r###"[]() "###, &danger )?, r###"

"###, r###"Links (486)"### ); assert_eq!( micromark_with_options( r###"[link](/my uri) "###, &danger )?, r###"

[link](/my uri)

"###, r###"Links (487)"### ); assert_eq!( micromark_with_options( r###"[link](
) "###, &danger )?, r###"

link

"###, r###"Links (488)"### ); assert_eq!( micromark_with_options( r###"[link](foo bar) "###, &danger )?, r###"

[link](foo bar)

"###, r###"Links (489)"### ); assert_eq!( micromark_with_options( r###"[link]() "###, &danger )?, r###"

[link]()

"###, r###"Links (490)"### ); assert_eq!( micromark_with_options( r###"[a]() "###, &danger )?, r###"

a

"###, r###"Links (491)"### ); assert_eq!( micromark_with_options( r###"[link]() "###, &danger )?, r###"

[link](<foo>)

"###, r###"Links (492)"### ); assert_eq!( micromark_with_options( r###"[a]( [a](c) "###, &danger )?, r###"

[a](<b)c [a](<b)c> [a](c)

"###, r###"Links (493)"### ); assert_eq!( micromark_with_options( r###"[link](\(foo\)) "###, &danger )?, r###"

link

"###, r###"Links (494)"### ); assert_eq!( micromark_with_options( r###"[link](foo(and(bar))) "###, &danger )?, r###"

link

"###, r###"Links (495)"### ); assert_eq!( micromark_with_options( r###"[link](foo(and(bar)) "###, &danger )?, r###"

[link](foo(and(bar))

"###, r###"Links (496)"### ); assert_eq!( micromark_with_options( r###"[link](foo\(and\(bar\)) "###, &danger )?, r###"

link

"###, r###"Links (497)"### ); assert_eq!( micromark_with_options( r###"[link]() "###, &danger )?, r###"

link

"###, r###"Links (498)"### ); assert_eq!( micromark_with_options( r###"[link](foo\)\:) "###, &danger )?, r###"

link

"###, r###"Links (499)"### ); assert_eq!( micromark_with_options( r###"[link](#fragment) [link](http://example.com#fragment) [link](http://example.com?foo=3#frag) "###, &danger )?, r###"

link

link

link

"###, r###"Links (500)"### ); assert_eq!( micromark_with_options( r###"[link](foo\bar) "###, &danger )?, r###"

link

"###, r###"Links (501)"### ); assert_eq!( micromark_with_options( r###"[link](foo%20bä) "###, &danger )?, r###"

link

"###, r###"Links (502)"### ); assert_eq!( micromark_with_options( r###"[link]("title") "###, &danger )?, r###"

link

"###, r###"Links (503)"### ); assert_eq!( micromark_with_options( r###"[link](/url "title") [link](/url 'title') [link](/url (title)) "###, &danger )?, r###"

link link link

"###, r###"Links (504)"### ); assert_eq!( micromark_with_options( r###"[link](/url "title \""") "###, &danger )?, r###"

link

"###, r###"Links (505)"### ); assert_eq!( micromark_with_options( r###"[link](/url "title") "###, &danger )?, r###"

link

"###, r###"Links (506)"### ); assert_eq!( micromark_with_options( r###"[link](/url "title "and" title") "###, &danger )?, r###"

[link](/url "title "and" title")

"###, r###"Links (507)"### ); assert_eq!( micromark_with_options( r###"[link](/url 'title "and" title') "###, &danger )?, r###"

link

"###, r###"Links (508)"### ); assert_eq!( micromark_with_options( r###"[link]( /uri "title" ) "###, &danger )?, r###"

link

"###, r###"Links (509)"### ); assert_eq!( micromark_with_options( r###"[link] (/uri) "###, &danger )?, r###"

[link] (/uri)

"###, r###"Links (510)"### ); assert_eq!( micromark_with_options( r###"[link [foo [bar]]](/uri) "###, &danger )?, r###"

link [foo [bar]]

"###, r###"Links (511)"### ); assert_eq!( micromark_with_options( r###"[link] bar](/uri) "###, &danger )?, r###"

[link] bar](/uri)

"###, r###"Links (512)"### ); assert_eq!( micromark_with_options( r###"[link [bar](/uri) "###, &danger )?, r###"

[link bar

"###, r###"Links (513)"### ); assert_eq!( micromark_with_options( r###"[link \[bar](/uri) "###, &danger )?, r###"

link [bar

"###, r###"Links (514)"### ); assert_eq!( micromark_with_options( r###"[link *foo **bar** `#`*](/uri) "###, &danger )?, r###"

link foo bar #

"###, r###"Links (515)"### ); assert_eq!( micromark_with_options( r###"[![moon](moon.jpg)](/uri) "###, &danger )?, r###"

moon

"###, r###"Links (516)"### ); assert_eq!( micromark_with_options( r###"[foo [bar](/uri)](/uri) "###, &danger )?, r###"

[foo bar](/uri)

"###, r###"Links (517)"### ); assert_eq!( micromark_with_options( r###"[foo *[bar [baz](/uri)](/uri)*](/uri) "###, &danger )?, r###"

[foo [bar baz](/uri)](/uri)

"###, r###"Links (518)"### ); assert_eq!( micromark_with_options( r###"![[[foo](uri1)](uri2)](uri3) "###, &danger )?, r###"

[foo](uri2)

"###, r###"Links (519)"### ); assert_eq!( micromark_with_options( r###"*[foo*](/uri) "###, &danger )?, r###"

*foo*

"###, r###"Links (520)"### ); assert_eq!( micromark_with_options( r###"[foo *bar](baz*) "###, &danger )?, r###"

foo *bar

"###, r###"Links (521)"### ); assert_eq!( micromark_with_options( r###"*foo [bar* baz] "###, &danger )?, r###"

foo [bar baz]

"###, r###"Links (522)"### ); assert_eq!( micromark_with_options( r###"[foo "###, &danger )?, r###"

[foo

"###, r###"Links (523)"### ); assert_eq!( micromark_with_options( r###"[foo`](/uri)` "###, &danger )?, r###"

[foo](/uri)

"###, r###"Links (524)"### ); assert_eq!( micromark_with_options( r###"[foo "###, &danger )?, r###"

[foohttp://example.com/?search=](uri)

"###, r###"Links (525)"### ); assert_eq!( micromark_with_options( r###"[foo][bar] [bar]: /url "title" "###, &danger )?, r###"

foo

"###, r###"Links (526)"### ); assert_eq!( micromark_with_options( r###"[link [foo [bar]]][ref] [ref]: /uri "###, &danger )?, r###"

link [foo [bar]]

"###, r###"Links (527)"### ); assert_eq!( micromark_with_options( r###"[link \[bar][ref] [ref]: /uri "###, &danger )?, r###"

link [bar

"###, r###"Links (528)"### ); assert_eq!( micromark_with_options( r###"[link *foo **bar** `#`*][ref] [ref]: /uri "###, &danger )?, r###"

link foo bar #

"###, r###"Links (529)"### ); assert_eq!( micromark_with_options( r###"[![moon](moon.jpg)][ref] [ref]: /uri "###, &danger )?, r###"

moon

"###, r###"Links (530)"### ); assert_eq!( micromark_with_options( r###"[foo [bar](/uri)][ref] [ref]: /uri "###, &danger )?, r###"

[foo bar]ref

"###, r###"Links (531)"### ); assert_eq!( micromark_with_options( r###"[foo *bar [baz][ref]*][ref] [ref]: /uri "###, &danger )?, r###"

[foo bar baz]ref

"###, r###"Links (532)"### ); assert_eq!( micromark_with_options( r###"*[foo*][ref] [ref]: /uri "###, &danger )?, r###"

*foo*

"###, r###"Links (533)"### ); assert_eq!( micromark_with_options( r###"[foo *bar][ref]* [ref]: /uri "###, &danger )?, r###"

foo *bar*

"###, r###"Links (534)"### ); assert_eq!( micromark_with_options( r###"[foo [ref]: /uri "###, &danger )?, r###"

[foo

"###, r###"Links (535)"### ); assert_eq!( micromark_with_options( r###"[foo`][ref]` [ref]: /uri "###, &danger )?, r###"

[foo][ref]

"###, r###"Links (536)"### ); assert_eq!( micromark_with_options( r###"[foo [ref]: /uri "###, &danger )?, r###"

[foohttp://example.com/?search=][ref]

"###, r###"Links (537)"### ); assert_eq!( micromark_with_options( r###"[foo][BaR] [bar]: /url "title" "###, &danger )?, r###"

foo

"###, r###"Links (538)"### ); assert_eq!( micromark_with_options( r###"[ẞ] [SS]: /url "###, &danger )?, r###"

"###, r###"Links (539)"### ); assert_eq!( micromark_with_options( r###"[Foo bar]: /url [Baz][Foo bar] "###, &danger )?, r###"

Baz

"###, r###"Links (540)"### ); assert_eq!( micromark_with_options( r###"[foo] [bar] [bar]: /url "title" "###, &danger )?, r###"

[foo] bar

"###, r###"Links (541)"### ); assert_eq!( micromark_with_options( r###"[foo] [bar] [bar]: /url "title" "###, &danger )?, r###"

[foo] bar

"###, r###"Links (542)"### ); assert_eq!( micromark_with_options( r###"[foo]: /url1 [foo]: /url2 [bar][foo] "###, &danger )?, r###"

bar

"###, r###"Links (543)"### ); assert_eq!( micromark_with_options( r###"[bar][foo\!] [foo!]: /url "###, &danger )?, r###"

[bar][foo!]

"###, r###"Links (544)"### ); assert_eq!( micromark_with_options( r###"[foo][ref[] [ref[]: /uri "###, &danger )?, r###"

[foo][ref[]

[ref[]: /uri

"###, r###"Links (545)"### ); assert_eq!( micromark_with_options( r###"[foo][ref[bar]] [ref[bar]]: /uri "###, &danger )?, r###"

[foo][ref[bar]]

[ref[bar]]: /uri

"###, r###"Links (546)"### ); assert_eq!( micromark_with_options( r###"[[[foo]]] [[[foo]]]: /url "###, &danger )?, r###"

[[[foo]]]

[[[foo]]]: /url

"###, r###"Links (547)"### ); assert_eq!( micromark_with_options( r###"[foo][ref\[] [ref\[]: /uri "###, &danger )?, r###"

foo

"###, r###"Links (548)"### ); assert_eq!( micromark_with_options( r###"[bar\\]: /uri [bar\\] "###, &danger )?, r###"

bar\

"###, r###"Links (549)"### ); assert_eq!( micromark_with_options( r###"[] []: /uri "###, &danger )?, r###"

[]

[]: /uri

"###, r###"Links (550)"### ); assert_eq!( micromark_with_options( r###"[ ] [ ]: /uri "###, &danger )?, r###"

[ ]

[ ]: /uri

"###, r###"Links (551)"### ); assert_eq!( micromark_with_options( r###"[foo][] [foo]: /url "title" "###, &danger )?, r###"

foo

"###, r###"Links (552)"### ); assert_eq!( micromark_with_options( r###"[*foo* bar][] [*foo* bar]: /url "title" "###, &danger )?, r###"

foo bar

"###, r###"Links (553)"### ); assert_eq!( micromark_with_options( r###"[Foo][] [foo]: /url "title" "###, &danger )?, r###"

Foo

"###, r###"Links (554)"### ); assert_eq!( micromark_with_options( r###"[foo] [] [foo]: /url "title" "###, &danger )?, r###"

foo []

"###, r###"Links (555)"### ); assert_eq!( micromark_with_options( r###"[foo] [foo]: /url "title" "###, &danger )?, r###"

foo

"###, r###"Links (556)"### ); assert_eq!( micromark_with_options( r###"[*foo* bar] [*foo* bar]: /url "title" "###, &danger )?, r###"

foo bar

"###, r###"Links (557)"### ); assert_eq!( micromark_with_options( r###"[[*foo* bar]] [*foo* bar]: /url "title" "###, &danger )?, r###"

[foo bar]

"###, r###"Links (558)"### ); assert_eq!( micromark_with_options( r###"[[bar [foo] [foo]: /url "###, &danger )?, r###"

[[bar foo

"###, r###"Links (559)"### ); assert_eq!( micromark_with_options( r###"[Foo] [foo]: /url "title" "###, &danger )?, r###"

Foo

"###, r###"Links (560)"### ); assert_eq!( micromark_with_options( r###"[foo] bar [foo]: /url "###, &danger )?, r###"

foo bar

"###, r###"Links (561)"### ); assert_eq!( micromark_with_options( r###"\[foo] [foo]: /url "title" "###, &danger )?, r###"

[foo]

"###, r###"Links (562)"### ); assert_eq!( micromark_with_options( r###"[foo*]: /url *[foo*] "###, &danger )?, r###"

*foo*

"###, r###"Links (563)"### ); assert_eq!( micromark_with_options( r###"[foo][bar] [foo]: /url1 [bar]: /url2 "###, &danger )?, r###"

foo

"###, r###"Links (564)"### ); assert_eq!( micromark_with_options( r###"[foo][] [foo]: /url1 "###, &danger )?, r###"

foo

"###, r###"Links (565)"### ); assert_eq!( micromark_with_options( r###"[foo]() [foo]: /url1 "###, &danger )?, r###"

foo

"###, r###"Links (566)"### ); assert_eq!( micromark_with_options( r###"[foo](not a link) [foo]: /url1 "###, &danger )?, r###"

foo(not a link)

"###, r###"Links (567)"### ); assert_eq!( micromark_with_options( r###"[foo][bar][baz] [baz]: /url "###, &danger )?, r###"

[foo]bar

"###, r###"Links (568)"### ); assert_eq!( micromark_with_options( r###"[foo][bar][baz] [baz]: /url1 [bar]: /url2 "###, &danger )?, r###"

foobaz

"###, r###"Links (569)"### ); assert_eq!( micromark_with_options( r###"[foo][bar][baz] [baz]: /url1 [foo]: /url2 "###, &danger )?, r###"

[foo]bar

"###, r###"Links (570)"### ); assert_eq!( micromark_with_options( r###"![foo](/url "title") "###, &danger )?, r###"

foo

"###, r###"Images (571)"### ); assert_eq!( micromark_with_options( r###"![foo *bar*] [foo *bar*]: train.jpg "train & tracks" "###, &danger )?, r###"

foo bar

"###, r###"Images (572)"### ); assert_eq!( micromark_with_options( r###"![foo ![bar](/url)](/url2) "###, &danger )?, r###"

foo bar

"###, r###"Images (573)"### ); assert_eq!( micromark_with_options( r###"![foo [bar](/url)](/url2) "###, &danger )?, r###"

foo bar

"###, r###"Images (574)"### ); assert_eq!( micromark_with_options( r###"![foo *bar*][] [foo *bar*]: train.jpg "train & tracks" "###, &danger )?, r###"

foo bar

"###, r###"Images (575)"### ); assert_eq!( micromark_with_options( r###"![foo *bar*][foobar] [FOOBAR]: train.jpg "train & tracks" "###, &danger )?, r###"

foo bar

"###, r###"Images (576)"### ); assert_eq!( micromark_with_options( r###"![foo](train.jpg) "###, &danger )?, r###"

foo

"###, r###"Images (577)"### ); assert_eq!( micromark_with_options( r###"My ![foo bar](/path/to/train.jpg "title" ) "###, &danger )?, r###"

My foo bar

"###, r###"Images (578)"### ); assert_eq!( micromark_with_options( r###"![foo]() "###, &danger )?, r###"

foo

"###, r###"Images (579)"### ); assert_eq!( micromark_with_options( r###"![](/url) "###, &danger )?, r###"

"###, r###"Images (580)"### ); assert_eq!( micromark_with_options( r###"![foo][bar] [bar]: /url "###, &danger )?, r###"

foo

"###, r###"Images (581)"### ); assert_eq!( micromark_with_options( r###"![foo][bar] [BAR]: /url "###, &danger )?, r###"

foo

"###, r###"Images (582)"### ); assert_eq!( micromark_with_options( r###"![foo][] [foo]: /url "title" "###, &danger )?, r###"

foo

"###, r###"Images (583)"### ); assert_eq!( micromark_with_options( r###"![*foo* bar][] [*foo* bar]: /url "title" "###, &danger )?, r###"

foo bar

"###, r###"Images (584)"### ); assert_eq!( micromark_with_options( r###"![Foo][] [foo]: /url "title" "###, &danger )?, r###"

Foo

"###, r###"Images (585)"### ); assert_eq!( micromark_with_options( r###"![foo] [] [foo]: /url "title" "###, &danger )?, r###"

foo []

"###, r###"Images (586)"### ); assert_eq!( micromark_with_options( r###"![foo] [foo]: /url "title" "###, &danger )?, r###"

foo

"###, r###"Images (587)"### ); assert_eq!( micromark_with_options( r###"![*foo* bar] [*foo* bar]: /url "title" "###, &danger )?, r###"

foo bar

"###, r###"Images (588)"### ); assert_eq!( micromark_with_options( r###"![[foo]] [[foo]]: /url "title" "###, &danger )?, r###"

![[foo]]

[[foo]]: /url "title"

"###, r###"Images (589)"### ); assert_eq!( micromark_with_options( r###"![Foo] [foo]: /url "title" "###, &danger )?, r###"

Foo

"###, r###"Images (590)"### ); assert_eq!( micromark_with_options( r###"!\[foo] [foo]: /url "title" "###, &danger )?, r###"

![foo]

"###, r###"Images (591)"### ); assert_eq!( micromark_with_options( r###"\![foo] [foo]: /url "title" "###, &danger )?, r###"

!foo

"###, r###"Images (592)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"

http://foo.bar.baz

"###, r###"Autolinks (593)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"

http://foo.bar.baz/test?q=hello&id=22&boolean

"###, r###"Autolinks (594)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"

irc://foo.bar:2233/baz

"###, r###"Autolinks (595)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"

MAILTO:FOO@BAR.BAZ

"###, r###"Autolinks (596)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"

a+b+c:d

"###, r###"Autolinks (597)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"

made-up-scheme://foo,bar

"###, r###"Autolinks (598)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"

http://../

"###, r###"Autolinks (599)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"

localhost:5001/foo

"###, r###"Autolinks (600)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"

<http://foo.bar/baz bim>

"###, r###"Autolinks (601)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"

http://example.com/\[\

"###, r###"Autolinks (602)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"

foo@bar.example.com

"###, r###"Autolinks (603)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"

foo+special@Bar.baz-bar0.com

"###, r###"Autolinks (604)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"

<foo+@bar.example.com>

"###, r###"Autolinks (605)"### ); assert_eq!( micromark_with_options( r###"<> "###, &danger )?, r###"

<>

"###, r###"Autolinks (606)"### ); assert_eq!( micromark_with_options( r###"< http://foo.bar > "###, &danger )?, r###"

< http://foo.bar >

"###, r###"Autolinks (607)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"

<m:abc>

"###, r###"Autolinks (608)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"

<foo.bar.baz>

"###, r###"Autolinks (609)"### ); assert_eq!( micromark_with_options( r###"http://example.com "###, &danger )?, r###"

http://example.com

"###, r###"Autolinks (610)"### ); assert_eq!( micromark_with_options( r###"foo@bar.example.com "###, &danger )?, r###"

foo@bar.example.com

"###, r###"Autolinks (611)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"

"###, r###"Raw HTML (612)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"

"###, r###"Raw HTML (613)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"

"###, r###"Raw HTML (614)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"

"###, r###"Raw HTML (615)"### ); assert_eq!( micromark_with_options( r###"Foo "###, &danger )?, r###"

Foo

"###, r###"Raw HTML (616)"### ); assert_eq!( micromark_with_options( r###"<33> <__> "###, &danger )?, r###"

<33> <__>

"###, r###"Raw HTML (617)"### ); assert_eq!( micromark_with_options( r###"
"###, &danger )?, r###"

<a h*#ref="hi">

"###, r###"Raw HTML (618)"### ); assert_eq!( micromark_with_options( r###"
<a href="hi'> <a href=hi'>

"###, r###"Raw HTML (619)"### ); assert_eq!( micromark_with_options( r###"< a>< foo> "###, &danger )?, r###"

< a>< foo><bar/ > <foo bar=baz bim!bop />

"###, r###"Raw HTML (620)"### ); assert_eq!( micromark_with_options( r###"
"###, &danger )?, r###"

<a href='bar'title=title>

"###, r###"Raw HTML (621)"### ); assert_eq!( micromark_with_options( r###"
"###, &danger )?, r###"

"###, r###"Raw HTML (622)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"

</a href="foo">

"###, r###"Raw HTML (623)"### ); assert_eq!( micromark_with_options( r###"foo "###, &danger )?, r###"

foo

"###, r###"Raw HTML (624)"### ); assert_eq!( micromark_with_options( r###"foo "###, &danger )?, r###"

foo <!-- not a comment -- two hyphens -->

"###, r###"Raw HTML (625)"### ); assert_eq!( micromark_with_options( r###"foo foo --> foo "###, &danger )?, r###"

foo <!--> foo -->

foo <!-- foo--->

"###, r###"Raw HTML (626)"### ); assert_eq!( micromark_with_options( r###"foo "###, &danger )?, r###"

foo

"###, r###"Raw HTML (627)"### ); assert_eq!( micromark_with_options( r###"foo "###, &danger )?, r###"

foo

"###, r###"Raw HTML (628)"### ); assert_eq!( micromark_with_options( r###"foo &<]]> "###, &danger )?, r###"

foo &<]]>

"###, r###"Raw HTML (629)"### ); assert_eq!( micromark_with_options( r###"foo "###, &danger )?, r###"

foo

"###, r###"Raw HTML (630)"### ); assert_eq!( micromark_with_options( r###"foo "###, &danger )?, r###"

foo

"###, r###"Raw HTML (631)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"

<a href=""">

"###, r###"Raw HTML (632)"### ); assert_eq!( micromark_with_options( r###"foo baz "###, &danger )?, r###"

foo
baz

"###, r###"Hard line breaks (633)"### ); assert_eq!( micromark_with_options( r###"foo\ baz "###, &danger )?, r###"

foo
baz

"###, r###"Hard line breaks (634)"### ); assert_eq!( micromark_with_options( r###"foo baz "###, &danger )?, r###"

foo
baz

"###, r###"Hard line breaks (635)"### ); assert_eq!( micromark_with_options( r###"foo bar "###, &danger )?, r###"

foo
bar

"###, r###"Hard line breaks (636)"### ); assert_eq!( micromark_with_options( r###"foo\ bar "###, &danger )?, r###"

foo
bar

"###, r###"Hard line breaks (637)"### ); assert_eq!( micromark_with_options( r###"*foo bar* "###, &danger )?, r###"

foo
bar

"###, r###"Hard line breaks (638)"### ); assert_eq!( micromark_with_options( r###"*foo\ bar* "###, &danger )?, r###"

foo
bar

"###, r###"Hard line breaks (639)"### ); assert_eq!( micromark_with_options( r###"`code span` "###, &danger )?, r###"

code span

"###, r###"Hard line breaks (640)"### ); assert_eq!( micromark_with_options( r###"`code\ span` "###, &danger )?, r###"

code\ span

"###, r###"Hard line breaks (641)"### ); assert_eq!( micromark_with_options( r###"
"###, &danger )?, r###"

"###, r###"Hard line breaks (642)"### ); assert_eq!( micromark_with_options( r###" "###, &danger )?, r###"

"###, r###"Hard line breaks (643)"### ); assert_eq!( micromark_with_options( r###"foo\ "###, &danger )?, r###"

foo\

"###, r###"Hard line breaks (644)"### ); assert_eq!( micromark_with_options( r###"foo "###, &danger )?, r###"

foo

"###, r###"Hard line breaks (645)"### ); assert_eq!( micromark_with_options( r###"### foo\ "###, &danger )?, r###"

foo\

"###, r###"Hard line breaks (646)"### ); assert_eq!( micromark_with_options( r###"### foo "###, &danger )?, r###"

foo

"###, r###"Hard line breaks (647)"### ); assert_eq!( micromark_with_options( r###"foo baz "###, &danger )?, r###"

foo baz

"###, r###"Soft line breaks (648)"### ); assert_eq!( micromark_with_options( r###"foo baz "###, &danger )?, r###"

foo baz

"###, r###"Soft line breaks (649)"### ); assert_eq!( micromark_with_options( r###"hello $.;'there "###, &danger )?, r###"

hello $.;'there

"###, r###"Textual content (650)"### ); assert_eq!( micromark_with_options( r###"Foo χρῆν "###, &danger )?, r###"

Foo χρῆν

"###, r###"Textual content (651)"### ); assert_eq!( micromark_with_options( r###"Multiple spaces "###, &danger )?, r###"

Multiple spaces

"###, r###"Textual content (652)"### ); Ok(()) }