@@ -80,7 +80,10 @@ public function testTypedReferenceSupport()
80
80
{
81
81
$ container = new ContainerBuilder ();
82
82
83
- $ bindings = [CaseSensitiveClass::class => new BoundArgument (new Reference ('foo ' ))];
83
+ $ bindings = [
84
+ CaseSensitiveClass::class => new BoundArgument (new Reference ('foo ' )),
85
+ CaseSensitiveClass::class.' $c ' => new BoundArgument (new Reference ('bar ' )),
86
+ ];
84
87
85
88
// Explicit service id
86
89
$ definition1 = $ container ->register ('def1 ' , NamedArgumentsDummy::class);
@@ -91,11 +94,16 @@ public function testTypedReferenceSupport()
91
94
$ definition2 ->addArgument (new TypedReference (CaseSensitiveClass::class, CaseSensitiveClass::class));
92
95
$ definition2 ->setBindings ($ bindings );
93
96
97
+ $ definition3 = $ container ->register ('def3 ' , NamedArgumentsDummy::class);
98
+ $ definition3 ->addArgument (new TypedReference (CaseSensitiveClass::class, CaseSensitiveClass::class, ContainerBuilder::EXCEPTION_ON_INVALID_REFERENCE , 'c ' ));
99
+ $ definition3 ->setBindings ($ bindings );
100
+
94
101
$ pass = new ResolveBindingsPass ();
95
102
$ pass ->process ($ container );
96
103
97
104
$ this ->assertEquals ([$ typedRef ], $ container ->getDefinition ('def1 ' )->getArguments ());
98
105
$ this ->assertEquals ([new Reference ('foo ' )], $ container ->getDefinition ('def2 ' )->getArguments ());
106
+ $ this ->assertEquals ([new Reference ('bar ' )], $ container ->getDefinition ('def3 ' )->getArguments ());
99
107
}
100
108
101
109
public function testScalarSetter ()
0 commit comments