Updated Drupal to 8.6. This goes with the following updates because it's possible...
[yaffs-website] / vendor / symfony / dependency-injection / Tests / Compiler / ResolveInstanceofConditionalsPassTest.php
index 21a2810578e97439d88a43d8311f71d008c7afdc..ad6f79d4051b121c12dfa623e755153be71d4e95 100644 (file)
 namespace Symfony\Component\DependencyInjection\Tests\Compiler;
 
 use PHPUnit\Framework\TestCase;
+use Symfony\Component\DependencyInjection\Argument\BoundArgument;
 use Symfony\Component\DependencyInjection\ChildDefinition;
-use Symfony\Component\DependencyInjection\Compiler\ResolveInstanceofConditionalsPass;
 use Symfony\Component\DependencyInjection\Compiler\ResolveChildDefinitionsPass;
+use Symfony\Component\DependencyInjection\Compiler\ResolveInstanceofConditionalsPass;
 use Symfony\Component\DependencyInjection\ContainerBuilder;
 
 class ResolveInstanceofConditionalsPassTest extends TestCase
@@ -250,4 +251,18 @@ class ResolveInstanceofConditionalsPassTest extends TestCase
         $this->assertEmpty($abstract->getTags());
         $this->assertTrue($abstract->isAbstract());
     }
+
+    public function testBindings()
+    {
+        $container = new ContainerBuilder();
+        $def = $container->register('foo', self::class)->setBindings(array('$toto' => 123));
+        $def->setInstanceofConditionals(array(parent::class => new ChildDefinition('')));
+
+        (new ResolveInstanceofConditionalsPass())->process($container);
+
+        $bindings = $container->getDefinition('foo')->getBindings();
+        $this->assertSame(array('$toto'), array_keys($bindings));
+        $this->assertInstanceOf(BoundArgument::class, $bindings['$toto']);
+        $this->assertSame(123, $bindings['$toto']->getValues()[0]);
+    }
 }