mirror of
https://github.com/DioxusLabs/dioxus
synced 2025-02-16 21:58:25 +00:00
31 lines
847 B
Rust
31 lines
847 B
Rust
use dioxus_rsx_hotreload::diff_rsx;
|
|
use syn::File;
|
|
|
|
macro_rules! assert_rsx_changed {
|
|
(
|
|
$( #[doc = $doc:expr] )*
|
|
$name:ident
|
|
) => {
|
|
$( #[doc = $doc] )*
|
|
#[test]
|
|
fn $name() {
|
|
let old = include_str!(concat!("./valid/", stringify!($name), ".old.rsx"));
|
|
let new = include_str!(concat!("./valid/", stringify!($name), ".new.rsx"));
|
|
let (old, new) = load_files(old, new);
|
|
assert!(diff_rsx(&new, &old).is_some());
|
|
}
|
|
};
|
|
}
|
|
|
|
fn load_files(old: &str, new: &str) -> (File, File) {
|
|
let old = syn::parse_file(old).unwrap();
|
|
let new = syn::parse_file(new).unwrap();
|
|
(old, new)
|
|
}
|
|
|
|
assert_rsx_changed![combo];
|
|
assert_rsx_changed![expr];
|
|
assert_rsx_changed![for_];
|
|
assert_rsx_changed![if_];
|
|
assert_rsx_changed![let_];
|
|
assert_rsx_changed![nested];
|