dioxus/packages/core-macro/tests/ifmt.rs

33 lines
764 B
Rust
Raw Normal View History

2022-06-28 17:19:07 +00:00
use std::borrow::Borrow;
use dioxus_core_macro::*;
#[test]
fn formatting_compiles() {
let x = (0, 1);
// escape sequences work
assert_eq!(
format_args_f!("{x:?} {{}}}}").to_string(),
2022-07-03 03:45:32 +00:00
format!("{:?} {{}}}}", x)
2022-06-28 17:19:07 +00:00
);
assert_eq!(
format_args_f!("{{{{}} {x:?}").to_string(),
2022-07-03 03:45:32 +00:00
format!("{{{{}} {:?}", x)
2022-06-28 17:19:07 +00:00
);
// paths in formating works
2022-07-03 03:45:32 +00:00
assert_eq!(format_args_f!("{x.0}").to_string(), format!("{}", x.0));
2022-06-28 17:19:07 +00:00
// function calls in formatings work
assert_eq!(
format_args_f!("{x.borrow():?}").to_string(),
2022-07-03 03:45:32 +00:00
format!("{:?}", x.borrow())
2022-06-28 17:19:07 +00:00
);
// allows duplicate format args
assert_eq!(
format_args_f!("{x:?} {x:?}").to_string(),
format!("{:?} {:?}", x, x)
);
2022-06-28 17:19:07 +00:00
}