bubble_error.rs 540 B

12345678910111213141516171819202122232425262728
  1. //! we should properly bubble up errors from components
  2. use dioxus::prelude::*;
  3. fn app() -> Element {
  4. let raw = match generation() % 2 {
  5. 0 => "123.123",
  6. 1 => "123.123.123",
  7. _ => unreachable!(),
  8. };
  9. let value = raw.parse::<f32>().unwrap_or(123.123);
  10. rsx! { div { "hello {value}" } }
  11. }
  12. #[test]
  13. fn bubbles_error() {
  14. let mut dom = VirtualDom::new(app);
  15. {
  16. let _edits = dom.rebuild_to_vec().santize();
  17. }
  18. dom.mark_dirty(ScopeId::APP);
  19. _ = dom.render_immediate_to_vec();
  20. }