Yaffs site version 1.1
[yaffs-website] / vendor / twig / twig / test / Twig / Tests / Fixtures / filters / default.test
1 --TEST--
2 "default" filter
3 --TEMPLATE--
4 Variable:
5 {{ definedVar                  |default('default') is same as('default') ? 'ko' : 'ok' }}
6 {{ zeroVar                     |default('default') is same as('default') ? 'ko' : 'ok' }}
7 {{ emptyVar                    |default('default') is same as('default') ? 'ok' : 'ko' }}
8 {{ nullVar                     |default('default') is same as('default') ? 'ok' : 'ko' }}
9 {{ undefinedVar                |default('default') is same as('default') ? 'ok' : 'ko' }}
10 Array access:
11 {{ nested.definedVar           |default('default') is same as('default') ? 'ko' : 'ok' }}
12 {{ nested['definedVar']        |default('default') is same as('default') ? 'ko' : 'ok' }}
13 {{ nested.zeroVar              |default('default') is same as('default') ? 'ko' : 'ok' }}
14 {{ nested.emptyVar             |default('default') is same as('default') ? 'ok' : 'ko' }}
15 {{ nested.nullVar              |default('default') is same as('default') ? 'ok' : 'ko' }}
16 {{ nested.undefinedVar         |default('default') is same as('default') ? 'ok' : 'ko' }}
17 {{ nested['undefinedVar']      |default('default') is same as('default') ? 'ok' : 'ko' }}
18 {{ undefinedVar.foo            |default('default') is same as('default') ? 'ok' : 'ko' }}
19 Plain values:
20 {{ 'defined'                   |default('default') is same as('default') ? 'ko' : 'ok' }}
21 {{ 0                           |default('default') is same as('default') ? 'ko' : 'ok' }}
22 {{ ''                          |default('default') is same as('default') ? 'ok' : 'ko' }}
23 {{ null                        |default('default') is same as('default') ? 'ok' : 'ko' }}
24 Precedence:
25 {{ 'o' ~ nullVar               |default('k') }}
26 {{ 'o' ~ nested.nullVar        |default('k') }}
27 Object methods:
28 {{ object.foo                  |default('default') is same as('default') ? 'ko' : 'ok' }}
29 {{ object.undefinedMethod      |default('default') is same as('default') ? 'ok' : 'ko' }}
30 {{ object.getFoo()             |default('default') is same as('default') ? 'ko' : 'ok' }}
31 {{ object.getFoo('a')          |default('default') is same as('default') ? 'ko' : 'ok' }}
32 {{ object.undefinedMethod()    |default('default') is same as('default') ? 'ok' : 'ko' }}
33 {{ object.undefinedMethod('a') |default('default') is same as('default') ? 'ok' : 'ko' }}
34 Deep nested:
35 {{ nested.undefinedVar.foo.bar |default('default') is same as('default') ? 'ok' : 'ko' }}
36 {{ nested.definedArray.0       |default('default') is same as('default') ? 'ko' : 'ok' }}
37 {{ nested['definedArray'][0]   |default('default') is same as('default') ? 'ko' : 'ok' }}
38 {{ object.self.foo             |default('default') is same as('default') ? 'ko' : 'ok' }}
39 {{ object.self.undefinedMethod |default('default') is same as('default') ? 'ok' : 'ko' }}
40 {{ object.undefinedMethod.self |default('default') is same as('default') ? 'ok' : 'ko' }}
41 --DATA--
42 return array(
43     'definedVar' => 'defined',
44     'zeroVar'    => 0,
45     'emptyVar'   => '',
46     'nullVar'    => null,
47     'nested'     => array(
48         'definedVar'   => 'defined',
49         'zeroVar'      => 0,
50         'emptyVar'     => '',
51         'nullVar'      => null,
52         'definedArray' => array(0),
53     ),
54     'object' => new TwigTestFoo(),
55 )
56 --CONFIG--
57 return array('strict_variables' => false)
58 --EXPECT--
59 Variable:
60 ok
61 ok
62 ok
63 ok
64 ok
65 Array access:
66 ok
67 ok
68 ok
69 ok
70 ok
71 ok
72 ok
73 ok
74 Plain values:
75 ok
76 ok
77 ok
78 ok
79 Precedence:
80 ok
81 ok
82 Object methods:
83 ok
84 ok
85 ok
86 ok
87 ok
88 ok
89 Deep nested:
90 ok
91 ok
92 ok
93 ok
94 ok
95 ok
96 --DATA--
97 return array(
98     'definedVar' => 'defined',
99     'zeroVar'    => 0,
100     'emptyVar'   => '',
101     'nullVar'    => null,
102     'nested'     => array(
103         'definedVar'   => 'defined',
104         'zeroVar'      => 0,
105         'emptyVar'     => '',
106         'nullVar'      => null,
107         'definedArray' => array(0),
108     ),
109     'object' => new TwigTestFoo(),
110 )
111 --CONFIG--
112 return array('strict_variables' => true)
113 --EXPECT--
114 Variable:
115 ok
116 ok
117 ok
118 ok
119 ok
120 Array access:
121 ok
122 ok
123 ok
124 ok
125 ok
126 ok
127 ok
128 ok
129 Plain values:
130 ok
131 ok
132 ok
133 ok
134 Precedence:
135 ok
136 ok
137 Object methods:
138 ok
139 ok
140 ok
141 ok
142 ok
143 ok
144 Deep nested:
145 ok
146 ok
147 ok
148 ok
149 ok
150 ok