Преглед изворни кода

[DependencyInjection] added failing private service user test-case

everzet пре 14 година
родитељ
комит
98b0bdcb15

+ 17 - 0
tests/Symfony/Tests/Component/DependencyInjection/ContainerBuilderTest.php

@@ -470,6 +470,23 @@ class ContainerBuilderTest extends \PHPUnit_Framework_TestCase
         $container->compile();
     }
 
+    public function testPrivateServiceUser()
+    {
+        $fooDefinition     = new Definition('BarClass');
+        $fooUserDefinition = new Definition('BarUserClass', array(new Reference('bar')));
+        $container         = new ContainerBuilder();
+
+        $fooDefinition->setPublic(false);
+
+        $container->addDefinitions(array(
+            'bar'       => $fooDefinition,
+            'bar_user'  => $fooUserDefinition
+        ));
+
+        $container->compile();
+        $this->assertInstanceOf('BarClass', $container->get('bar_user')->bar);
+    }
+
     /**
      * @expectedException BadMethodCallException
      */

+ 10 - 0
tests/Symfony/Tests/Component/DependencyInjection/Fixtures/includes/classes.php

@@ -30,3 +30,13 @@ class BazClass
     {
     }
 }
+
+class BarUserClass
+{
+    public $bar;
+
+    public function __construct(BarClass $bar)
+    {
+        $this->bar = $bar;
+    }
+}