aboutsummaryrefslogtreecommitdiffstats
path: root/testing
diff options
context:
space:
mode:
authorLibravatar Ryan Kelly <ryan@rfk.id.au>2021-06-21 16:35:57 +1000
committerLibravatar Dirkjan Ochtman <dirkjan@ochtman.nl>2021-06-22 11:41:45 +0200
commit49252d2457f280026c020d0df46733578eb959a5 (patch)
tree37a9f8935f8e0c8ce1c83f6d2f7c69b30e89e5f7 /testing
parentb318d7cbcded2c6dfc66bbe19687f1246a9a9eab (diff)
downloadaskama-49252d2457f280026c020d0df46733578eb959a5.tar.gz
askama-49252d2457f280026c020d0df46733578eb959a5.tar.bz2
askama-49252d2457f280026c020d0df46733578eb959a5.zip
Fix code generation for macro calls that store args in variables.
Diffstat (limited to 'testing')
-rw-r--r--testing/templates/nested-macro-args.html9
-rw-r--r--testing/tests/macro.rs10
2 files changed, 19 insertions, 0 deletions
diff --git a/testing/templates/nested-macro-args.html b/testing/templates/nested-macro-args.html
new file mode 100644
index 0000000..03826f8
--- /dev/null
+++ b/testing/templates/nested-macro-args.html
@@ -0,0 +1,9 @@
+{%- macro outer(first) -%}
+{%- call inner(first, "second") -%}
+{%- endmacro -%}
+
+{%- macro inner(first, second) -%}
+{{ first }} {{ second }}
+{%- endmacro -%}
+
+{%- call outer("first") -%}
diff --git a/testing/tests/macro.rs b/testing/tests/macro.rs
index 459b1e2..7f7e4dc 100644
--- a/testing/tests/macro.rs
+++ b/testing/tests/macro.rs
@@ -53,3 +53,13 @@ fn test_short_circuit() {
let t = ShortCircuitTemplate {};
assert_eq!(t.render().unwrap(), "truetruetruefalsetruetrue");
}
+
+#[derive(Template)]
+#[template(path = "nested-macro-args.html")]
+struct NestedMacroArgsTemplate {}
+
+#[test]
+fn test_nested_macro_with_args() {
+ let t = NestedMacroArgsTemplate {};
+ assert_eq!(t.render().unwrap(), "first second");
+}