[DI] add tests loading calls with returns-clone
This commit is contained in:
parent
d8a026bcad
commit
9a48def0c0
@ -0,0 +1,11 @@
|
|||||||
|
<?xml version="1.0" ?>
|
||||||
|
<container xmlns="http://symfony.com/schema/dic/services"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://symfony.com/schema/dic/services https://symfony.com/schema/dic/services/services-1.0.xsd">
|
||||||
|
|
||||||
|
<services>
|
||||||
|
<service id="foo">
|
||||||
|
<call method="bar" returns-clone="true" />
|
||||||
|
</service>
|
||||||
|
</services>
|
||||||
|
</container>
|
@ -0,0 +1,5 @@
|
|||||||
|
services:
|
||||||
|
foo:
|
||||||
|
calls:
|
||||||
|
- {method: bar, arguments: [1], returns_clone: true}
|
||||||
|
- [bar, [2], true]
|
@ -901,4 +901,13 @@ class XmlFileLoaderTest extends TestCase
|
|||||||
|
|
||||||
$this->assertSame('overridden', $container->get('bar')->quz);
|
$this->assertSame('overridden', $container->get('bar')->quz);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function testReturnsClone()
|
||||||
|
{
|
||||||
|
$container = new ContainerBuilder();
|
||||||
|
$loader = new XmlFileLoader($container, new FileLocator(self::$fixturesPath.'/xml'));
|
||||||
|
$loader->load('returns_clone.xml');
|
||||||
|
|
||||||
|
$this->assertSame([['bar', [], true]], $container->getDefinition('foo')->getMethodCalls());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -834,4 +834,17 @@ class YamlFileLoaderTest extends TestCase
|
|||||||
$this->assertInstanceOf(TaggedIteratorArgument::class, $iteratorArgument);
|
$this->assertInstanceOf(TaggedIteratorArgument::class, $iteratorArgument);
|
||||||
$this->assertNull($iteratorArgument->getIndexAttribute());
|
$this->assertNull($iteratorArgument->getIndexAttribute());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function testReturnsClone()
|
||||||
|
{
|
||||||
|
$container = new ContainerBuilder();
|
||||||
|
$loader = new YamlFileLoader($container, new FileLocator(self::$fixturesPath.'/yaml'));
|
||||||
|
$loader->load('returns_clone.yaml');
|
||||||
|
|
||||||
|
$expected = [
|
||||||
|
['bar', [1], true],
|
||||||
|
['bar', [2], true],
|
||||||
|
];
|
||||||
|
$this->assertSame($expected, $container->getDefinition('foo')->getMethodCalls());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user