Add tests for filter

This commit is contained in:
Kogia-sima 2020-07-15 19:34:53 +09:00
parent eac0dfbf5b
commit 15b0504564
5 changed files with 40 additions and 1 deletions

View File

@ -0,0 +1,4 @@
disp: hello
dbg: "hello"
disp escaped: hello
dbg escaped: "hello"

View File

@ -0,0 +1,4 @@
disp: <%- message | disp %>
dbg: <%- message | dbg %>
disp escaped: <%= message | disp %>
dbg escaped: <%= message | dbg %>

View File

@ -1,4 +1,4 @@
{
"name": "<%= name %>",
"name": <%- name | dbg %>,
"value": <%= value %>
}

View File

@ -200,6 +200,17 @@ fn test_formatting() {
assert_render("formatting", Formatting);
}
#[derive(TemplateOnce)]
#[template(path = "filter.stpl")]
struct Filter<'a> {
message: &'a str,
}
#[test]
fn test_filter() {
assert_render("filter", Filter { message: "hello" });
}
#[cfg(unix)]
mod unix {
use super::*;

View File

@ -85,3 +85,23 @@ impl<'a, T: Render> Render for Lower<'a, T> {
pub fn lower<T: Render>(expr: &T) -> Lower<T> {
Lower(expr)
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn case() {
let mut buf = Buffer::new();
upper(&"hElLO, WOrLd!").render(&mut buf).unwrap();
assert_eq!(buf.as_str(), "HELLO, WORLD!");
buf.clear();
lower(&"hElLO, WOrLd!").render(&mut buf).unwrap();
assert_eq!(buf.as_str(), "hello, world!");
buf.clear();
lower(&"<h1>TITLE</h1>").render_escaped(&mut buf).unwrap();
assert_eq!(buf.as_str(), "&lt;h1&gt;title&lt;/h1&gt;");
}
}