use markdown::{ mdast::{Node, Root}, to_html, to_mdast, unist::Position, }; use pretty_assertions::assert_eq; #[test] fn zero() -> Result<(), String> { assert_eq!(to_html(""), "", "should support no markdown"); assert_eq!( to_html("asd\0asd"), "

asd�asd

", "should replace `\\0` w/ a replacement characters (`�`)" ); assert_eq!( to_html("�"), "

", "should replace NUL in a character reference" ); // This doesn’t make sense in markdown, as character escapes only work on // ascii punctuation, but it’s good to demonstrate the behavior. assert_eq!( to_html("\\0"), "

\\0

", "should not support NUL in a character escape" ); assert_eq!( to_mdast("", &Default::default())?, Node::Root(Root { children: vec![], position: Some(Position::new(1, 1, 0, 1, 1, 0)) }), "should support no markdown (ast)" ); Ok(()) }