aboutsummaryrefslogtreecommitdiffstats
path: root/testing
diff options
context:
space:
mode:
Diffstat (limited to 'testing')
-rw-r--r--testing/tests/loops.rs28
1 files changed, 22 insertions, 6 deletions
diff --git a/testing/tests/loops.rs b/testing/tests/loops.rs
index 809f75e..b324ae3 100644
--- a/testing/tests/loops.rs
+++ b/testing/tests/loops.rs
@@ -70,11 +70,11 @@ fn test_for_range() {
#[derive(Template)]
#[template(source = "{% for i in [1, 2, 3] %}{{ i }}{% endfor %}", ext = "txt")]
-struct ForArrayTemplate {}
+struct ForArrayTemplate;
#[test]
fn test_for_array() {
- let t = ForArrayTemplate {};
+ let t = ForArrayTemplate;
assert_eq!(t.render().unwrap(), "123");
}
@@ -83,11 +83,11 @@ fn test_for_array() {
source = "{% for i in [1, 2, 3].iter() %}{{ i }}{% endfor %}",
ext = "txt"
)]
-struct ForMethodCallTemplate {}
+struct ForMethodCallTemplate;
#[test]
fn test_for_method_call() {
- let t = ForMethodCallTemplate {};
+ let t = ForMethodCallTemplate;
assert_eq!(t.render().unwrap(), "123");
}
@@ -108,10 +108,26 @@ fn test_for_path_call() {
source = "{% for i in [1, 2, 3, 4, 5][3..] %}{{ i }}{% endfor %}",
ext = "txt"
)]
-struct ForIndexTemplate {}
+struct ForIndexTemplate;
#[test]
fn test_for_index() {
- let t = ForIndexTemplate {};
+ let t = ForIndexTemplate;
assert_eq!(t.render().unwrap(), "45");
}
+
+#[derive(Template)]
+#[template(
+ source = "{% for (i, j) in (0..10).zip(10..20).zip(30..40) %}{{ i.0 }} {{ i.1 }} {{ j }} {% endfor %}",
+ ext = "txt"
+)]
+struct ForZipRangesTemplate;
+
+#[test]
+fn test_for_zip_ranges() {
+ let t = ForZipRangesTemplate;
+ assert_eq!(
+ t.render().unwrap(),
+ "0 10 30 1 11 31 2 12 32 3 13 33 4 14 34 5 15 35 6 16 36 7 17 37 8 18 38 9 19 39 "
+ );
+}