use silkenweb::{dom::Wet, elements::html::div, node::Node, prelude::ParentElement};
use silkenweb_inline_html::{html_dir, html_file, inline_html};
use wasm_bindgen_test::{wasm_bindgen_test, wasm_bindgen_test_configure};
wasm_bindgen_test_configure!(run_in_browser);
/// Check we can create a `Node` where `Dom` != `DefaultDom`.
#[test]
fn inline_compile() {
let _ = || -> Node { inline_html!(r#""#) };
}
#[wasm_bindgen_test]
#[test]
fn inline() {
inline_html_test(inline_html!(
r#""#
));
}
#[wasm_bindgen_test]
#[test]
fn file() {
html_file!("tests/svg/image.svg");
inline_html_test(image());
}
#[wasm_bindgen_test]
#[test]
fn dir() {
html_dir!("tests/svg");
inline_html_test(image());
}
fn inline_html_test(image: Node) {
let image_contents = include_str!("svg/image.svg");
let expected = format!(r#"{image_contents}
"#);
assert_eq!(div().children([image]).freeze().to_string(), expected);
}