Refactor and add additional default filter tests

This commit is contained in:
nikic
2011-06-10 16:50:20 +02:00
parent e760483287
commit f2a1c2b539
+54 -17
View File
@@ -1,22 +1,59 @@
--TEST-- --TEST--
"default" filter "default" filter
--TEMPLATE-- --TEMPLATE--
{{ foo|default('bar') }} Variable:
{{ bar|default('foo') }} {{ definedVar |default('default') is sameas('default') ? 'ko' : 'ok' }}
{{ baz.foo|default('bar') }} {{ zeroVar |default('default') is sameas('default') ? 'ko' : 'ok' }}
{{ baz.bar|default('foo') }} {{ emptyVar |default('default') is sameas('default') ? 'ok' : 'ko' }}
{{ not_defined|default('bar') }} {{ nullVar |default('default') is sameas('default') ? 'ok' : 'ko' }}
{{ 'a' ~ foo|default('b') }} {{ undefinedVar |default('default') is sameas('default') ? 'ok' : 'ko' }}
{{ 'a' ~ baz.foo|default('b') }} Array access:
{{ 0|default('bar') }} {{ nested.definedVar |default('default') is sameas('default') ? 'ko' : 'ok' }}
{{ nested.zeroVar |default('default') is sameas('default') ? 'ko' : 'ok' }}
{{ nested.emptyVar |default('default') is sameas('default') ? 'ok' : 'ko' }}
{{ nested.nullVar |default('default') is sameas('default') ? 'ok' : 'ko' }}
{{ nested.undefinedVar|default('default') is sameas('default') ? 'ok' : 'ko' }}
{{ undefinedVar.foo |default('default') is sameas('default') ? 'ok' : 'ko' }}
Plain values:
{{ 'defined' |default('default') is sameas('default') ? 'ko' : 'ok' }}
{{ 0 |default('default') is sameas('default') ? 'ko' : 'ok' }}
{{ '' |default('default') is sameas('default') ? 'ok' : 'ko' }}
{{ null |default('default') is sameas('default') ? 'ok' : 'ko' }}
Precedence:
{{ 'o' ~ nullVar|default('k') }}
{{ 'o' ~ nested.nullVar|default('k') }}
--DATA-- --DATA--
return array('foo' => null, 'bar' => 'bar', 'baz' => array('foo' => null, 'bar' => 'bar')) return array(
'definedVar' => 'defined',
'zeroVar' => 0,
'emptyVar' => '',
'nullVar' => null,
'nested' => array(
'definedVar' => 'defined',
'zeroVar' => 0,
'emptyVar' => '',
'nullVar' => null,
),
)
--EXPECT-- --EXPECT--
bar Variable:
bar ok
bar ok
bar ok
bar ok
ab ok
ab Array access:
0 ok
ok
ok
ok
ok
ok
Plain values:
ok
ok
ok
ok
Precedence:
ok
ok