use std::collections::HashMap; use tera::Tera; use config::Config; use front_matter::InsertAnchor; use rendering::{render_content, RenderContext}; #[test] fn can_add_line_numbers() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); let mut config = Config::default_for_test(); config.markdown.highlight_code = true; let context = RenderContext::new( &tera_ctx, &config, &config.default_language, "", &permalinks_ctx, InsertAnchor::None, ); let res = render_content( r#" ```linenos foo bar ``` "#, &context, ) .unwrap(); assert_eq!( res.body, "
1foo\n
2bar\n
\n" ); } #[test] fn can_add_line_numbers_with_linenostart() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); let mut config = Config::default_for_test(); config.markdown.highlight_code = true; let context = RenderContext::new( &tera_ctx, &config, &config.default_language, "", &permalinks_ctx, InsertAnchor::None, ); let res = render_content( r#" ```linenos, linenostart=40 foo bar ``` "#, &context, ) .unwrap(); assert_eq!( res.body, "
40foo\n
41bar\n
\n" ); } #[test] fn can_add_line_numbers_with_highlight() { let tera_ctx = Tera::default(); let permalinks_ctx = HashMap::new(); let mut config = Config::default_for_test(); config.markdown.highlight_code = true; let context = RenderContext::new( &tera_ctx, &config, &config.default_language, "", &permalinks_ctx, InsertAnchor::None, ); let res = render_content( r#" ```linenos, hl_lines=2 foo bar ``` "#, &context, ) .unwrap(); assert_eq!( res.body, "
1foo\n
2bar\n
\n" ); }