always evaluate block.super even if it is not used

This commit is contained in:
Ilya Puchka
2019-01-21 22:31:21 +00:00
committed by David Jennes
parent a6d0428036
commit 701221c0fb
5 changed files with 28 additions and 33 deletions

View File

@@ -320,7 +320,7 @@ final class EnvironmentBaseAndChildTemplateTests: XCTestCase {
baseTemplate = try environment.loadTemplate(name: "invalid-base.html")
try expectError(reason: "filter error",
childToken: "block.super",
childToken: "extends \"invalid-base.html\"",
baseToken: "target|unknown")
}

View File

@@ -32,5 +32,24 @@ final class InheritanceTests: XCTestCase {
Child_Body
"""
}
it("can render block.super in if tag") {
let template = try self.environment.loadTemplate(name: "if-block-child.html")
try expect(try template.render(["sort": "new"])) == """
Title - Nieuwste spellen
"""
try expect(try template.render(["sort": "upcoming"])) == """
Title - Binnenkort op de agenda
"""
try expect(try template.render(["sort": "near-me"])) == """
Title - In mijn buurt
"""
}
}
}

View File

@@ -0,0 +1,2 @@
{% extends "if-block.html" %}
{% block title %}{% if sort == "new" %}{{ block.super }} - Nieuwste spellen{% elif sort == "upcoming" %}{{ block.super }} - Binnenkort op de agenda{% elif sort == "near-me" %}{{ block.super }} - In mijn buurt{% endif %}{% endblock %}

View File

@@ -0,0 +1 @@
{% block title %}Title{% endblock %}