public function testCompiledEnumFunctionWithBackedEnum() { $result = null;
$expressionLanguage =
new ExpressionLanguage();
eval(sprintf('$result = %s;',
$expressionLanguage->
compile('enum("Symfony\\\\Component\\\\ExpressionLanguage\\\\Tests\\\\Fixtures\\\\FooBackedEnum::Bar")'
)));
$this->
assertSame(FooBackedEnum::Bar,
$result);
} public function testProviders() { $expressionLanguage =
new ExpressionLanguage(null,
[new TestProvider()]);
$this->
assertEquals('foo',
$expressionLanguage->
evaluate('identity("foo")'
));
$this->
assertEquals('"foo"',
$expressionLanguage->
compile('identity("foo")'
));
$this->
assertEquals('FOO',
$expressionLanguage->
evaluate('strtoupper("foo")'
));
$this->
assertEquals('\strtoupper("foo")',
$expressionLanguage->
compile('strtoupper("foo")'
));
$this->
assertEquals('foo',
$expressionLanguage->
evaluate('strtolower("FOO")'
));
$this->
assertEquals('\strtolower("FOO")',
$expressionLanguage->
compile('strtolower("FOO")'
));
$this->
assertTrue($expressionLanguage->
evaluate('fn_namespaced()'
));
$this->
assertEquals('\Symfony\Component\ExpressionLanguage\Tests\Fixtures\fn_namespaced()',
$expressionLanguage->
compile('fn_namespaced()'
));
} /**
* @dataProvider shortCircuitProviderEvaluate
*/