iterative.rs 999 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. //! tests to prove that the iterative implementation works
  2. use anyhow::{Context, Result};
  3. use dioxus::{
  4. arena::SharedResources,
  5. diff::{CreateMeta, DiffMachine},
  6. prelude::*,
  7. scheduler::Mutations,
  8. DomEdit,
  9. };
  10. use dioxus_core as dioxus;
  11. use dioxus_html as dioxus_elements;
  12. #[test]
  13. fn test_original_diff() {
  14. static App: FC<()> = |cx| {
  15. cx.render(rsx! {
  16. div {
  17. div {
  18. "Hello, world!"
  19. }
  20. }
  21. })
  22. };
  23. let mut dom = VirtualDom::new(App);
  24. let mutations = dom.rebuild().unwrap();
  25. dbg!(mutations);
  26. }
  27. #[async_std::test]
  28. async fn test_iterative_diff() {
  29. static App: FC<()> = |cx| {
  30. cx.render(rsx! {
  31. div {
  32. div {
  33. "Hello, world!"
  34. }
  35. }
  36. })
  37. };
  38. let shared = SharedResources::new();
  39. let mut machine = DiffMachine::new_headless(&shared);
  40. let a = machine.work().await.unwrap();
  41. }