File tree Expand file tree Collapse file tree
main/java/com/hubspot/jinjava/lib/tag
test/java/com/hubspot/jinjava/lib/tag/eager Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1919import com .hubspot .jinjava .doc .annotations .JinjavaParam ;
2020import com .hubspot .jinjava .doc .annotations .JinjavaSnippet ;
2121import com .hubspot .jinjava .doc .annotations .JinjavaTextMateSnippet ;
22+ import com .hubspot .jinjava .interpret .Context .TemporaryValueClosable ;
2223import com .hubspot .jinjava .interpret .DeferredValue ;
2324import com .hubspot .jinjava .interpret .DeferredValueException ;
2425import com .hubspot .jinjava .interpret .JinjavaInterpreter ;
@@ -167,8 +168,12 @@ public static String renderChildren(
167168 private static String renderChildren (TagNode tagNode , JinjavaInterpreter interpreter ) {
168169 String result ;
169170 StringBuilder sb = new StringBuilder ();
170- for (Node child : tagNode .getChildren ()) {
171- sb .append (child .render (interpreter ));
171+ try (
172+ TemporaryValueClosable <Boolean > c = interpreter .getContext ().withUnwrapRawOverride ()
173+ ) {
174+ for (Node child : tagNode .getChildren ()) {
175+ sb .append (child .render (interpreter ));
176+ }
172177 }
173178 result = sb .toString ();
174179 return result ;
Original file line number Diff line number Diff line change @@ -218,6 +218,13 @@ public void itDefersInDeferredExecutionModeWithFilter() {
218218 assertThat (interpreter .render (result )).isEqualTo (interpreter .render (template )); // 1 + 2 + 2 = 5
219219 }
220220
221+ @ Test
222+ public void itUnwrapsRawTags () {
223+ String template = "{% set foo %}{% raw %}{%{% endraw %}{% endset %}" ;
224+ interpreter .render (template );
225+ assertThat (interpreter .getContext ().get ("foo" )).isEqualTo ("{%" );
226+ }
227+
221228 @ Test
222229 @ Override
223230 @ Ignore
You can’t perform that action at this time.
0 commit comments