From 7203fac07cabe68047033a75ddb2db417a9ef6c6 Mon Sep 17 00:00:00 2001 From: Dirkjan Ochtman Date: Tue, 5 Sep 2017 20:34:32 +0200 Subject: Add some tests for escaping functionality --- testing/tests/simple.rs | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) (limited to 'testing/tests/simple.rs') diff --git a/testing/tests/simple.rs b/testing/tests/simple.rs index 93faf50..57887c8 100644 --- a/testing/tests/simple.rs +++ b/testing/tests/simple.rs @@ -181,3 +181,42 @@ fn test_composition() { let t = CompositionTemplate { foo: IfTemplate { cond: true } }; assert_eq!(t.render().unwrap(), "composed: true"); } + + +#[derive(Template)] +#[template(source = "{{ foo }}")] +struct ImplicitEscapedTemplate<'a> { + foo: &'a str, +} + +#[test] +fn test_implicit_escaped() { + let t = ImplicitEscapedTemplate { foo: "foo & bar" }; + assert_eq!(t.render().unwrap(), "foo & bar"); +} + + +#[derive(Template)] +#[template(source = "{{ foo }}", escape = "html")] +struct ExplicitEscapedTemplate<'a> { + foo: &'a str, +} + +#[test] +fn test_explicit_escaped() { + let t = ExplicitEscapedTemplate { foo: "foo & bar" }; + assert_eq!(t.render().unwrap(), "foo & bar"); +} + + +#[derive(Template)] +#[template(source = "{{ foo }}", escape = "none")] +struct UnescapedTemplate<'a> { + foo: &'a str, +} + +#[test] +fn test_unescaped() { + let t = UnescapedTemplate { foo: "foo & bar" }; + assert_eq!(t.render().unwrap(), "foo & bar"); +} -- cgit