blob: 134c77ea815b4f39c1c9a22b1ffe462e0d89470a (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
|
--TEST--
"autoescape" tag applies escaping after calling filters, and before calling pre_escape filters
--TEMPLATE--
{% autoescape 'html' %}
(nl2br is pre_escaped for "html" and declared safe for "html")
1. Pre-escape and don't post-escape
( var|escape|nl2br )
{{ var|nl2br }}
2. Don't double-pre-escape
( var|escape|nl2br )
{{ var|escape|nl2br }}
3. Don't escape safe values
( var|raw|nl2br )
{{ var|raw|nl2br }}
4. Don't escape safe values
( var|escape|nl2br|nl2br )
{{ var|nl2br|nl2br }}
5. Re-escape values that are escaped for an other contexts
( var|escape_something|escape|nl2br )
{{ var|escape_something|nl2br }}
6. Still escape when using filters not declared safe
( var|escape|nl2br|upper|escape )
{{ var|nl2br|upper }}
{% endautoescape %}
--DATA--
return array('var' => "<Fabien>\nTwig")
--EXPECT--
(nl2br is pre_escaped for "html" and declared safe for "html")
1. Pre-escape and don't post-escape
( var|escape|nl2br )
<Fabien><br />
Twig
2. Don't double-pre-escape
( var|escape|nl2br )
<Fabien><br />
Twig
3. Don't escape safe values
( var|raw|nl2br )
<Fabien><br />
Twig
4. Don't escape safe values
( var|escape|nl2br|nl2br )
<Fabien><br /><br />
Twig
5. Re-escape values that are escaped for an other contexts
( var|escape_something|escape|nl2br )
<FABIEN><br />
TWIG
6. Still escape when using filters not declared safe
( var|escape|nl2br|upper|escape )
&LT;FABIEN&GT;<BR />
TWIG
|