use std::path::Path; use common::{cross_browser, cross_browser_tabled, html_template, OUTPUT_DIR}; use pulldown_latex::config::DisplayMode; mod common; fn main() { let concl = common::test(); if std::env::var("RENDER").as_deref() != Ok("true") { concl.exit() } let runtime = tokio::runtime::Runtime::new().unwrap(); runtime.block_on(cross_browser()).unwrap(); let mut file = std::fs::File::create(Path::new(OUTPUT_DIR).join("cross-browser.html")).unwrap(); html_template( &mut file, "Cross Browser Tests", Some("cross-browser.css"), cross_browser_tabled, ) .unwrap(); concl.exit() } round_trip! {basic, "5 + 5 = 10", display_mode = DisplayMode::Block} round_trip!( complex_array, r"\begin{array}{||c|c::c|c||} \hline A & B & C & D \\ \hdashline 1 & 2 & 3 & 4 \\ \hline 5 & 6 & 7 & 8 \\ 9 & 10 & 11 & 12 \end{array}", display_mode = DisplayMode::Block ); round_trip! { cases, r#"\begin{cases} 1 & \text{if } x \ge 0 \\ 0 & \text{if } x < 0 \end{cases}"#, r#"\begin{rcases} a & \text{if } x \ge 0 \\ b & \text{if } x < 0 \end{rcases}"# } round_trip! { align, r#"\begin{align} a &= b + c \\ d &= e + f \end{align}"#, r#"\begin{align*} a &= b + c \\ d &= e + f \end{align*}"#, } round_trip! { aligned, r#"\begin{aligned} a &= b + c \\ d &= e + f \end{aligned}"#, } round_trip! { subarray, r#"\begin{subarray}{c} a + b \\ c + d \end{subarray}"#, r#"\begin{subarray}{l} a = b \\ c = d \end{subarray}"# } round_trip! { alignat, r#"\begin{alignat}{2} a &= b + c & d &= e + f \\ g &= h + i & j &= k + l \end{alignat}"#, r#"\begin{alignat*}{2} a &= b + c & d &= e + f \\ g &= h + i & j &= k + l \end{alignat*}"# } round_trip! { alignedat, r#"\begin{alignedat}{2} a &= b + c & d &= e + f \\ g &= h + i & j &= k + l \end{alignedat}"#, } round_trip! { gather, r#"\begin{gather} a = b + c \\ d = e + f \end{gather}"#, r#"\begin{gather*} a = b + c \\ d = e + f \end{gather*}"#, } round_trip! { gathered, r#"\begin{gathered} a = b + c \\ d = e + f \end{gathered}"#, } round_trip! { multline, r#"\begin{multline} a + b + c \\ d + e + f \end{multline}"#, } round_trip! { split, r#"\begin{split} a + b + c \\ d + e + f \end{split}"#, } round_trip! { equation, r#"\begin{equation} a = b + c \end{equation}"#, r#"\begin{equation*} a = b + c \end{equation*}"#, } round_trip_display! { colors, r"\fcolorbox{red}{blue}{\textcolor{white}{a + b = c}}" }