Shallow clone of https://github.com/wooorm/markdown-rs
This commit is contained in:
@@ -0,0 +1,72 @@
|
||||
use markdown::{
|
||||
mdast::{Break, Heading, Node, Text},
|
||||
to_mdast as from,
|
||||
};
|
||||
use mdast_util_to_markdown::{
|
||||
to_markdown as to, to_markdown_with_options as to_md_with_opts, Options,
|
||||
};
|
||||
use pretty_assertions::assert_eq;
|
||||
|
||||
#[test]
|
||||
fn r#break() {
|
||||
assert_eq!(
|
||||
to(&Node::Break(Break { position: None })).unwrap(),
|
||||
"\\\n",
|
||||
"should support a break"
|
||||
);
|
||||
|
||||
assert_eq!(
|
||||
to(&Node::Heading(Heading {
|
||||
children: vec![
|
||||
Node::Text(Text {
|
||||
value: String::from("a"),
|
||||
position: None
|
||||
}),
|
||||
Node::Break(Break { position: None }),
|
||||
Node::Text(Text {
|
||||
value: String::from("b"),
|
||||
position: None
|
||||
}),
|
||||
],
|
||||
position: None,
|
||||
depth: 3
|
||||
}))
|
||||
.unwrap(),
|
||||
"### a b\n",
|
||||
"should serialize breaks in heading (atx) as a space"
|
||||
);
|
||||
|
||||
assert_eq!(
|
||||
to(&Node::Heading(Heading {
|
||||
children: vec![
|
||||
Node::Text(Text {
|
||||
value: String::from("a "),
|
||||
position: None
|
||||
}),
|
||||
Node::Break(Break { position: None }),
|
||||
Node::Text(Text {
|
||||
value: String::from("b"),
|
||||
position: None
|
||||
}),
|
||||
],
|
||||
position: None,
|
||||
depth: 3
|
||||
}))
|
||||
.unwrap(),
|
||||
"### a b\n",
|
||||
"should serialize breaks in heading (atx) as a space"
|
||||
);
|
||||
|
||||
assert_eq!(
|
||||
to_md_with_opts(
|
||||
&from("a \nb\n=\n", &Default::default()).unwrap(),
|
||||
&Options {
|
||||
setext: true,
|
||||
..Default::default()
|
||||
}
|
||||
)
|
||||
.unwrap(),
|
||||
"a\\\nb\n=\n",
|
||||
"should serialize breaks in heading (setext)"
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user