#![feature(test)]
extern crate tera;
extern crate test;
use tera::escape_html;
const NO_HTML_SHORT: &'static str = "A paragraph without HTML characters that need to be escaped.";
const NO_HTML_LONG: &'static str = "Another paragraph without characters that need to be escaped. This paragraph is a bit longer, as sometimes there can be large paragraphs that don't any special characters, e.g., in novels or whatever.";
const HTML_SHORT: &'static str = "Here->An <
Etiam nibh mi, accumsan quis purus sed, posuere fermentum lorem. In pulvinar porta
maximus. Fusce tincidunt lacinia tellus sit amet tincidunt. Aliquam lacus est, pulvinar
non metus a, facilisis ultrices quam. Nulla feugiat leo in cursus eleifend. Suspendisse
eget nisi ac justo sagittis interdum id a ipsum. Nulla mauris justo, scelerisque ac
rutrum vitae, consequat vel ex.
Sed sollicitudin sem mauris, at rutrum nibh egestas vel. Ut eu nisi tellus. Praesent dignissim orci elementum, mattis turpis eget, maximus ante. Suspendisse luctus eu felis a tempor. Morbi ac risus vitae sem molestie ullamcorper. Curabitur ligula augue, sollicitudin quis maximus vel, facilisis sed nibh. Aenean auctor magna sem, id rutrum metus convallis quis. Nullam non arcu dictum, lobortis erat quis, rhoncus est. Suspendisse venenatis, mi sed venenatis vehicula, tortor dolor egestas lectus, et efficitur turpis odio non augue. Integer velit sapien, dictum non egestas vitae, hendrerit sed quam. Phasellus a nunc eu erat varius imperdiet. Etiam id sollicitudin turpis, vitae molestie orci. Quisque ornare magna quis metus rhoncus commodo. Phasellus non mauris velit.
Etiam dictum tellus ipsum, nec varius quam ornare vel. Cras vehicula diam nec sollicitudin ultricies. Pellentesque rhoncus sagittis nisl id facilisis. Nunc viverra convallis risus ut luctus. Aliquam vestibulum efficitur massa, id tempus nisi posuere a. Aliquam scelerisque elit justo. Nullam a ante felis. Cras vitae lorem eu nisi feugiat hendrerit. Maecenas vitae suscipit leo, lacinia dignissim lacus. Sed eget volutpat mi. In eu bibendum neque. Pellentesque finibus velit a fermentum rhoncus. Maecenas leo purus, eleifend eu lacus a, condimentum sagittis justo.
"#; #[bench] fn bench_escape_no_html_short(b: &mut test::Bencher) { b.iter(|| escape_html(NO_HTML_SHORT)); } #[bench] fn bench_escape_no_html_long(b: &mut test::Bencher) { b.iter(|| escape_html(NO_HTML_LONG)); } #[bench] fn bench_escape_html_short(b: &mut test::Bencher) { b.iter(|| escape_html(HTML_SHORT)); } #[bench] fn bench_escape_html_long(b: &mut test::Bencher) { b.iter(|| escape_html(HTML_LONG)); } #[bench] fn bench_escape_no_html_very_long(b: &mut test::Bencher) { b.iter(|| escape_html(NO_HTML_VERY_LONG)); } #[bench] fn bench_escape_html_very_long(b: &mut test::Bencher) { b.iter(|| escape_html(HTML_VERY_LONG)); }