use dioxus_rsx::CallBody;
use syn::parse_quote;
macro_rules! test_case {
(
$path:literal
) => {
works(include!($path), include_str!($path))
};
}
#[test]
fn write_block_out() {
test_case!("./srcless/basic_expr.rsx");
test_case!("./srcless/asset.rsx");
}
fn works(parsed: CallBody, src: &str) {
let block = dioxus_autofmt::write_block_out(&parsed).unwrap();
let src = src
.trim()
.trim_start_matches("parse_quote! {")
.trim_end_matches('}');
pretty_assertions::assert_eq!(
block.trim().lines().collect::<Vec<_>>().join("\n"),
src.trim().lines().collect::<Vec<_>>().join("\n")
);
}