From 94bb47a78d32c5a5162ce5475b8a4c310940fef2 Mon Sep 17 00:00:00 2001 From: bott Date: Fri, 21 Sep 2018 02:09:59 +0200 Subject: fix panicked on range-based for loop --- testing/templates/for-range.html | 15 +++++++++++++++ testing/tests/loops.rs | 13 +++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 testing/templates/for-range.html (limited to 'testing') diff --git a/testing/templates/for-range.html b/testing/templates/for-range.html new file mode 100644 index 0000000..9b109bb --- /dev/null +++ b/testing/templates/for-range.html @@ -0,0 +1,15 @@ +{% for s in 0..2 -%} + foo +{% endfor -%} + +{% for s in init..1 -%} + bar +{% endfor -%} + +{% for s in 0..end -%} + foo +{% endfor -%} + +{% for s in init..end -%} + bar +{% endfor -%} diff --git a/testing/tests/loops.rs b/testing/tests/loops.rs index 70ebb21..a0736f5 100644 --- a/testing/tests/loops.rs +++ b/testing/tests/loops.rs @@ -46,3 +46,16 @@ fn test_precedence_for() { }; assert_eq!(s.render().unwrap(), "0. A2 (first)\n1. alfa4\n2. 16\n"); } + +#[derive(Template)] +#[template(path = "for-range.html")] +struct ForRangeTemplate { + init: i32, + end: i32, +} + +#[test] +fn test_for_range() { + let s = ForRangeTemplate { init: -1, end: 1 }; + assert_eq!(s.render().unwrap(), "foo\nfoo\nbar\nbar\nfoo\nbar\nbar\n"); +} -- cgit