#[path = "support.rs"]
mod support;
use html_generator::{generate_html, HtmlConfig};
fn main() {
support::header("html-generator -- hello");
support::task_with_output("Convert heading and paragraph", || {
let md = "# Hello, World!\n\nThis is a paragraph.";
let html = generate_html(md, &HtmlConfig::default()).unwrap();
html.lines().map(|l| l.to_string()).collect()
});
support::task_with_output(
"Inline formatting (bold, italic, code)",
|| {
let md = "Use **bold**, *italic*, and `code` in prose.";
let html =
generate_html(md, &HtmlConfig::default()).unwrap();
html.lines().map(|l| l.to_string()).collect()
},
);
support::task_with_output("Unordered and ordered lists", || {
let md = "- Alpha\n- Bravo\n- Charlie\n\n1. First\n2. Second";
let html = generate_html(md, &HtmlConfig::default()).unwrap();
html.lines().map(|l| l.to_string()).collect()
});
support::task_with_output("Fenced code block", || {
let md = "```rust\nfn main() {\n println!(\"hi\");\n}\n```";
let html = generate_html(md, &HtmlConfig::default()).unwrap();
vec![format!("output_length = {} bytes", html.len())]
});
support::task_with_output("Links and images", || {
let md = "[Rust](https://rust-lang.org) and ";
let html = generate_html(md, &HtmlConfig::default()).unwrap();
html.lines().map(|l| l.to_string()).collect()
});
support::summary(5);
}