class DefinitionDecoratorTest in Zircon Profile 8
Same name and namespace in other branches
- 8.0 vendor/symfony/dependency-injection/Tests/DefinitionDecoratorTest.php \Symfony\Component\DependencyInjection\Tests\DefinitionDecoratorTest
Hierarchy
- class \Symfony\Component\DependencyInjection\Tests\DefinitionDecoratorTest extends \Symfony\Component\DependencyInjection\Tests\PHPUnit_Framework_TestCase
Expanded class hierarchy of DefinitionDecoratorTest
File
- vendor/
symfony/ dependency-injection/ Tests/ DefinitionDecoratorTest.php, line 16
Namespace
Symfony\Component\DependencyInjection\TestsView source
class DefinitionDecoratorTest extends \PHPUnit_Framework_TestCase {
public function testConstructor() {
$def = new DefinitionDecorator('foo');
$this
->assertEquals('foo', $def
->getParent());
$this
->assertEquals(array(), $def
->getChanges());
}
/**
* @dataProvider getPropertyTests
*/
public function testSetProperty($property, $changeKey) {
$def = new DefinitionDecorator('foo');
$getter = 'get' . ucfirst($property);
$setter = 'set' . ucfirst($property);
$this
->assertNull($def
->{$getter}());
$this
->assertSame($def, $def
->{$setter}('foo'));
$this
->assertEquals('foo', $def
->{$getter}());
$this
->assertEquals(array(
$changeKey => true,
), $def
->getChanges());
}
public function getPropertyTests() {
return array(
array(
'class',
'class',
),
array(
'factory',
'factory',
),
array(
'configurator',
'configurator',
),
array(
'file',
'file',
),
);
}
/**
* @dataProvider provideLegacyPropertyTests
* @group legacy
*/
public function testLegacySetProperty($property, $changeKey) {
$def = new DefinitionDecorator('foo');
$getter = 'get' . ucfirst($property);
$setter = 'set' . ucfirst($property);
$this
->assertNull($def
->{$getter}());
$this
->assertSame($def, $def
->{$setter}('foo'));
$this
->assertEquals('foo', $def
->{$getter}());
$this
->assertEquals(array(
$changeKey => true,
), $def
->getChanges());
}
public function provideLegacyPropertyTests() {
return array(
array(
'factoryClass',
'factory_class',
),
array(
'factoryMethod',
'factory_method',
),
array(
'factoryService',
'factory_service',
),
);
}
public function testSetPublic() {
$def = new DefinitionDecorator('foo');
$this
->assertTrue($def
->isPublic());
$this
->assertSame($def, $def
->setPublic(false));
$this
->assertFalse($def
->isPublic());
$this
->assertEquals(array(
'public' => true,
), $def
->getChanges());
}
public function testSetLazy() {
$def = new DefinitionDecorator('foo');
$this
->assertFalse($def
->isLazy());
$this
->assertSame($def, $def
->setLazy(false));
$this
->assertFalse($def
->isLazy());
$this
->assertEquals(array(
'lazy' => true,
), $def
->getChanges());
}
public function testSetArgument() {
$def = new DefinitionDecorator('foo');
$this
->assertEquals(array(), $def
->getArguments());
$this
->assertSame($def, $def
->replaceArgument(0, 'foo'));
$this
->assertEquals(array(
'index_0' => 'foo',
), $def
->getArguments());
}
/**
* @expectedException \InvalidArgumentException
*/
public function testReplaceArgumentShouldRequireIntegerIndex() {
$def = new DefinitionDecorator('foo');
$def
->replaceArgument('0', 'foo');
}
public function testReplaceArgument() {
$def = new DefinitionDecorator('foo');
$def
->setArguments(array(
0 => 'foo',
1 => 'bar',
));
$this
->assertEquals('foo', $def
->getArgument(0));
$this
->assertEquals('bar', $def
->getArgument(1));
$this
->assertSame($def, $def
->replaceArgument(1, 'baz'));
$this
->assertEquals('foo', $def
->getArgument(0));
$this
->assertEquals('baz', $def
->getArgument(1));
$this
->assertEquals(array(
0 => 'foo',
1 => 'bar',
'index_1' => 'baz',
), $def
->getArguments());
}
/**
* @expectedException \OutOfBoundsException
*/
public function testGetArgumentShouldCheckBounds() {
$def = new DefinitionDecorator('foo');
$def
->setArguments(array(
0 => 'foo',
));
$def
->replaceArgument(0, 'foo');
$def
->getArgument(1);
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
DefinitionDecoratorTest:: |
public | function | ||
DefinitionDecoratorTest:: |
public | function | ||
DefinitionDecoratorTest:: |
public | function | ||
DefinitionDecoratorTest:: |
public | function | @expectedException \OutOfBoundsException | |
DefinitionDecoratorTest:: |
public | function | @dataProvider provideLegacyPropertyTests @group legacy | |
DefinitionDecoratorTest:: |
public | function | ||
DefinitionDecoratorTest:: |
public | function | @expectedException \InvalidArgumentException | |
DefinitionDecoratorTest:: |
public | function | ||
DefinitionDecoratorTest:: |
public | function | ||
DefinitionDecoratorTest:: |
public | function | @dataProvider getPropertyTests | |
DefinitionDecoratorTest:: |
public | function |