[DependencyInjection] Add coverage for invalid Expression in exportParameters

This commit is contained in:
JhonnyL 2016-04-10 20:38:01 +02:00
parent ba1cd26237
commit 1931b14a60
1 changed files with 15 additions and 2 deletions

View File

@ -16,6 +16,8 @@ use Symfony\Component\DependencyInjection\Dumper\PhpDumper;
use Symfony\Component\DependencyInjection\ParameterBag\ParameterBag;
use Symfony\Component\DependencyInjection\Reference;
use Symfony\Component\DependencyInjection\Definition;
use Symfony\Component\DependencyInjection\Variable;
use Symfony\Component\ExpressionLanguage\Expression;
class PhpDumperTest extends \PHPUnit_Framework_TestCase
{
@ -85,14 +87,25 @@ class PhpDumperTest extends \PHPUnit_Framework_TestCase
}
/**
* @dataProvider provideInvalidParameters
* @expectedException \InvalidArgumentException
*/
public function testExportParameters()
public function testExportParameters($parameters)
{
$dumper = new PhpDumper(new ContainerBuilder(new ParameterBag(array('foo' => new Reference('foo')))));
$dumper = new PhpDumper(new ContainerBuilder(new ParameterBag($parameters)));
$dumper->dump();
}
public function provideInvalidParameters()
{
return array(
array(array('foo' => new Definition('stdClass'))),
array(array('foo' => new Expression('service("foo").foo() ~ (container.hasparameter("foo") ? parameter("foo") : "default")'))),
array(array('foo' => new Reference('foo'))),
array(array('foo' => new Variable('foo'))),
);
}
public function testAddParameters()
{
$container = include self::$fixturesPath.'/containers/container8.php';