diff options
Diffstat (limited to 'tests/code_fenced.rs')
-rw-r--r-- | tests/code_fenced.rs | 36 |
1 files changed, 35 insertions, 1 deletions
diff --git a/tests/code_fenced.rs b/tests/code_fenced.rs index 850bd1b..2f770ce 100644 --- a/tests/code_fenced.rs +++ b/tests/code_fenced.rs @@ -1,5 +1,8 @@ extern crate micromark; -use micromark::{micromark, micromark_with_options, Constructs, Options}; +use micromark::{ + mdast::{Code, Node, Position, Root}, + micromark, micromark_to_mdast, micromark_with_options, Constructs, Options, +}; use pretty_assertions::assert_eq; #[test] @@ -272,5 +275,36 @@ fn code_fenced() -> Result<(), String> { "should support turning off code (fenced)" ); + assert_eq!( + micromark_to_mdast( + "```js extra\nconsole.log(1)\nconsole.log(2)\n```", + &Options::default() + )?, + Node::Root(Root { + children: vec![Node::Code(Code { + lang: Some("js".to_string()), + meta: Some("extra".to_string()), + value: "console.log(1)\nconsole.log(2)".to_string(), + position: Some(Position::new(1, 1, 0, 4, 4, 45)) + })], + position: Some(Position::new(1, 1, 0, 4, 4, 45)) + }), + "should support code (fenced) as `Code`s in mdast" + ); + + assert_eq!( + micromark_to_mdast("```\nasd", &Options::default())?, + Node::Root(Root { + children: vec![Node::Code(Code { + lang: None, + meta: None, + value: "asd".to_string(), + position: Some(Position::new(1, 1, 0, 2, 4, 7)) + })], + position: Some(Position::new(1, 1, 0, 2, 4, 7)) + }), + "should support code (fenced) w/o closing fence in mdast" + ); + Ok(()) } |