diff --git a/packages/ssr/src/cache.rs b/packages/ssr/src/cache.rs index a89d0fcc6..4b6f52178 100644 --- a/packages/ssr/src/cache.rs +++ b/packages/ssr/src/cache.rs @@ -1,6 +1,7 @@ use dioxus_core::prelude::*; use std::fmt::Write; +#[derive(Debug)] pub struct StringCache { pub segments: Vec, pub template: Template<'static>, diff --git a/packages/ssr/src/renderer.rs b/packages/ssr/src/renderer.rs index 51a5763bb..cc015d570 100644 --- a/packages/ssr/src/renderer.rs +++ b/packages/ssr/src/renderer.rs @@ -156,26 +156,29 @@ fn to_string_works() { _ = dom.rebuild(); let mut renderer = Renderer::new(); - let out = renderer.render(&dom); - use Segment::*; - assert_eq!( - renderer.template_cache.iter().next().unwrap().1.segments, - vec![ - PreRendered("
Hello world 1 -->".into(),), - Node(0,), - PreRendered("<-- Hello world 2
nest 1
nest 2
".into(),), - Node(1,), - Node(2,), - PreRendered("
".into(),), - ] - ); + for item in renderer.template_cache.iter() { + if item.1.segments.len() > 5 { + assert_eq!( + item.1.segments, + vec![ + PreRendered("
Hello world 1 -->".into(),), + Node(0,), + PreRendered( + "<-- Hello world 2
nest 1
nest 2
".into(), + ), + Node(1,), + Node(2,), + PreRendered("
".into(),), + ] + ); + } + } - assert_eq!( - out, - "
Hello world 1 -->123<-- Hello world 2
nest 1
nest 2
finalize 0
finalize 1
finalize 2
finalize 3
finalize 4
" - ); + use Segment::*; + + assert_eq!(out, "
Hello world 1 -->123<-- Hello world 2
nest 1
nest 2
finalize 0
finalize 1
finalize 2
finalize 3
finalize 4
"); }