test(examples): render hemplate views into buffers

Use hemplate render_into in public examples and example tests instead of the string-returning render helper, preserving SafeHtml wrapping only at the explicit effect boundary.

req: view/001

req: html_safety/002
This commit is contained in:
slhx agent
2026-05-26 00:46:13 +02:00
parent b2aa1760c5
commit 62316d5f1e
6 changed files with 35 additions and 23 deletions
+4 -4
View File
@@ -45,11 +45,11 @@ mod tests {
fn render_empty_board() -> SafeHtml { fn render_empty_board() -> SafeHtml {
// req: html_safety/002 req: view/001 // req: html_safety/002 req: view/001
SafeHtml::trusted( let mut html = String::new();
BoardColumns { columns: Vec::new() } BoardColumns { columns: Vec::new() }
.render() .render_into(&mut html)
.expect("kanban board test view renders"), .expect("kanban board test view renders");
) SafeHtml::trusted(html)
} }
fn selector(value: &str) -> Selector { fn selector(value: &str) -> Selector {
+5 -1
View File
@@ -310,7 +310,11 @@ fn render_html(template: &impl Hemplate) -> SafeHtml {
} }
fn render_template(template: &impl Hemplate) -> String { fn render_template(template: &impl Hemplate) -> String {
template.render().expect("kanban hemplate view renders") let mut html = String::new();
template
.render_into(&mut html)
.expect("kanban hemplate view renders");
html
} }
#[cfg(test)] #[cfg(test)]
+4 -4
View File
@@ -40,11 +40,11 @@ mod tests {
fn render_fast_metric(label: &'static str) -> SafeHtml { fn render_fast_metric(label: &'static str) -> SafeHtml {
// req: html_safety/002 req: view/001 // req: html_safety/002 req: view/001
SafeHtml::trusted( let mut html = String::new();
FastMetric { label } FastMetric { label }
.render() .render_into(&mut html)
.expect("techdemo fast metric renders"), .expect("techdemo fast metric renders");
) SafeHtml::trusted(html)
} }
// req: examples/001 req: form/001 req: form/004 req: form/006 req: derive_handler/003 // req: examples/001 req: form/001 req: form/004 req: form/006 req: derive_handler/003
+5 -1
View File
@@ -549,7 +549,11 @@ fn render_control_center(page: ControlCenter) -> String {
} }
fn render_template(template: &impl Hemplate) -> String { fn render_template(template: &impl Hemplate) -> String {
template.render().expect("techdemo hemplate partial renders") let mut html = String::new();
template
.render_into(&mut html)
.expect("techdemo hemplate partial renders");
html
} }
fn render_html(template: &impl Hemplate) -> SafeHtml { fn render_html(template: &impl Hemplate) -> SafeHtml {
+8 -8
View File
@@ -88,11 +88,11 @@ mod tests {
fn render_todo_row(todo: &Todo) -> SafeHtml { fn render_todo_row(todo: &Todo) -> SafeHtml {
// req: html_safety/002 req: view/001 // req: html_safety/002 req: view/001
SafeHtml::trusted( let mut html = String::new();
TodoRow { title: todo.title.clone() } TodoRow { title: todo.title.clone() }
.render() .render_into(&mut html)
.expect("v0 todo row renders"), .expect("v0 todo row renders");
) SafeHtml::trusted(html)
} }
// req: examples/001 req: form/001 req: form/004 req: form/006 req: derive_handler/003 // req: examples/001 req: form/001 req: form/004 req: form/006 req: derive_handler/003
@@ -143,11 +143,11 @@ mod tests {
fn render_docs_content(message: &'static str) -> SafeHtml { fn render_docs_content(message: &'static str) -> SafeHtml {
// req: html_safety/002 req: view/001 // req: html_safety/002 req: view/001
SafeHtml::trusted( let mut html = String::new();
DocsContent { message } DocsContent { message }
.render() .render_into(&mut html)
.expect("v0 docs content renders"), .expect("v0 docs content renders");
) SafeHtml::trusted(html)
} }
// req: examples/001 req: form/001 req: form/004 req: form/006 req: derive_handler/003 // req: examples/001 req: form/001 req: form/004 req: form/006 req: derive_handler/003
+5 -1
View File
@@ -222,7 +222,11 @@ fn render_html(template: &impl Hemplate) -> SafeHtml {
} }
fn render_template(template: &impl Hemplate) -> String { fn render_template(template: &impl Hemplate) -> String {
template.render().expect("v0 hemplate view renders") let mut html = String::new();
template
.render_into(&mut html)
.expect("v0 hemplate view renders");
html
} }
#[cfg(test)] #[cfg(test)]