]> git.ipfire.org Git - thirdparty/jinja.git/commitdiff
Add support for test function arguments
authorKevin <kevin@kevin-brown.com>
Thu, 14 May 2020 00:33:56 +0000 (20:33 -0400)
committerKevin <kevin@kevin-brown.com>
Thu, 14 May 2020 00:33:56 +0000 (20:33 -0400)
new_parser.py
test_template.jinja

index 7166e86e86c99449bbb54df716b0c7ed97fedd1a..1ebbeb7f0d1ba8811d0142f2aaa8d39e67c02324 100644 (file)
@@ -510,12 +510,23 @@ def parse_conditional_expression_test(ast):
     node = parse_variable(ast['test_variable'])\r
     test_function = parse_variable(ast['test_function'])\r
 \r
-    name = test_function.name\r
     args = []\r
     kwargs = []\r
     dynamic_args = None\r
     dynamic_kwargs = None\r
 \r
+    if isinstance(test_function, nodes.Call):\r
+        call = test_function\r
+\r
+        name = call.node.name\r
+        args = call.args\r
+        kwargs = call.kwargs\r
+        dynamic_args = call.dyn_args\r
+        dynamic_kwargs = call.dyn_kwargs\r
+    else:\r
+        name = test_function.name\r
+\r
+\r
     if ast['test_function_parameter']:\r
         args = [\r
             parse_variable(ast['test_function_parameter'])\r
index af16b6760a9fe8ca2da26e9b6deee923e4fcea20..b8b21c53e7c585004a2ac8a3ef38807b4e6c3808 100644 (file)
@@ -103,4 +103,6 @@ across lines #}
 {% endfor %}\r
 {% for item in seq %}\r
     <li>{% block loop_item scoped %}{{ item }}{% endblock %}</li>\r
-{% endfor %}
\ No newline at end of file
+{% endfor %}\r
+{% if loop.index is divisibleby 3 %}{% endif %}\r
+{% if loop.index is divisibleby(3) %}{% endif %}
\ No newline at end of file