4
4
5
5
use Matthias \SymfonyServiceDefinitionValidator \ArgumentValidator ;
6
6
use Matthias \SymfonyServiceDefinitionValidator \Exception \TypeHintMismatchException ;
7
+ use PHPUnit \Framework \TestCase ;
7
8
use Symfony \Component \DependencyInjection \ContainerBuilder ;
8
9
use Symfony \Component \DependencyInjection \Definition ;
9
10
use Symfony \Component \DependencyInjection \Reference ;
10
11
use Symfony \Component \ExpressionLanguage \Expression ;
11
12
12
- class ArgumentValidatorTest extends \PHPUnit_Framework_TestCase
13
+ class ArgumentValidatorTest extends TestCase
13
14
{
14
15
private $ containerBuilder ;
15
16
16
- protected function setUp ()
17
+ protected function setUp (): void
17
18
{
18
19
$ this ->containerBuilder = new ContainerBuilder ();
19
20
}
@@ -24,7 +25,7 @@ public function testFailsWhenParameterHasTypeHintButNoReferenceOrDefinitionWasPr
24
25
25
26
$ validator = new ArgumentValidator ($ this ->containerBuilder , $ this ->createMockResultingClassResolver ());
26
27
27
- $ this ->setExpectedException ('Matthias\SymfonyServiceDefinitionValidator\Exception\TypeHintMismatchException ' , 'reference ' );
28
+ $ this ->expectException ('Matthias\SymfonyServiceDefinitionValidator\Exception\TypeHintMismatchException ' , 'reference ' );
28
29
$ validator ->validate (new \ReflectionParameter (array ($ class , '__construct ' ), 'expected ' ), new \stdClass ());
29
30
}
30
31
@@ -43,7 +44,7 @@ public function testFailsWhenParameterHasTypeHintForObjectButArgumentIsDefinitio
43
44
->will ($ this ->returnValue ('Matthias\SymfonyServiceDefinitionValidator\Tests\Fixtures\WrongClass ' ));
44
45
$ validator = new ArgumentValidator ($ this ->containerBuilder , $ resultingClassResolver );
45
46
46
- $ this ->setExpectedException ('Matthias\SymfonyServiceDefinitionValidator\Exception\TypeHintMismatchException ' , 'ExpectedClass ' );
47
+ $ this ->expectException ('Matthias\SymfonyServiceDefinitionValidator\Exception\TypeHintMismatchException ' , 'ExpectedClass ' );
47
48
$ validator ->validate (new \ReflectionParameter (array ($ class , '__construct ' ), 'expected ' ), $ inlineDefinition );
48
49
}
49
50
@@ -65,7 +66,7 @@ public function testFailsWhenParameterHasTypeHintForObjectButArgumentIsReference
65
66
->will ($ this ->returnValue ('stdClass ' ));
66
67
$ validator = new ArgumentValidator ($ this ->containerBuilder , $ resultingClassResolver );
67
68
68
- $ this ->setExpectedException ('Matthias\SymfonyServiceDefinitionValidator\Exception\TypeHintMismatchException ' , 'ExpectedClass ' );
69
+ $ this ->expectException ('Matthias\SymfonyServiceDefinitionValidator\Exception\TypeHintMismatchException ' , 'ExpectedClass ' );
69
70
70
71
$ validator ->validate ($ parameter , $ argument );
71
72
}
@@ -79,7 +80,7 @@ public function testFailsWhenParameterHasArrayTypeHintButArgumentIsNotArray()
79
80
80
81
$ validator = new ArgumentValidator (new ContainerBuilder (), $ this ->createMockResultingClassResolver ());
81
82
82
- $ this ->setExpectedException ('Matthias\SymfonyServiceDefinitionValidator\Exception\TypeHintMismatchException ' , 'array ' );
83
+ $ this ->expectException ('Matthias\SymfonyServiceDefinitionValidator\Exception\TypeHintMismatchException ' , 'array ' );
83
84
84
85
$ validator ->validate ($ parameter , $ argument );
85
86
}
@@ -95,6 +96,7 @@ public function testFailsWhenOptionalParameterHasArrayTypeHintAndResultOfExpress
95
96
96
97
try {
97
98
$ validator ->validate ($ parameter , $ argument );
99
+ $ this ->addToAssertionCount (1 );
98
100
} catch (TypeHintMismatchException $ exception ) {
99
101
$ this ->fail ('null argument should be allowed ' );
100
102
}
@@ -114,7 +116,7 @@ public function testFailsWhenResultOfExpressionIsNotAnObjectOfTheExpectedClass()
114
116
115
117
$ validator = new ArgumentValidator ($ containerBuilder , $ this ->createMockResultingClassResolver (), true );
116
118
117
- $ this ->setExpectedException ('Matthias\SymfonyServiceDefinitionValidator\Exception\TypeHintMismatchException ' , 'ExpectedClass ' );
119
+ $ this ->expectException ('Matthias\SymfonyServiceDefinitionValidator\Exception\TypeHintMismatchException ' , 'ExpectedClass ' );
118
120
119
121
$ validator ->validate ($ parameter , $ argument );
120
122
}
@@ -130,7 +132,7 @@ public function testFailsWhenResultOfExpressionIsNotAnObject()
130
132
131
133
$ validator = new ArgumentValidator (new ContainerBuilder (), $ this ->createMockResultingClassResolver (), true );
132
134
133
- $ this ->setExpectedException ('Matthias\SymfonyServiceDefinitionValidator\Exception\TypeHintMismatchException ' , 'ExpectedClass ' );
135
+ $ this ->expectException ('Matthias\SymfonyServiceDefinitionValidator\Exception\TypeHintMismatchException ' , 'ExpectedClass ' );
134
136
135
137
$ validator ->validate ($ parameter , $ argument );
136
138
}
@@ -148,6 +150,7 @@ public function testFailsWhenResultOfExpressionIsNullButNullIsNotAllowed()
148
150
149
151
try {
150
152
$ validator ->validate ($ parameter , $ argument );
153
+ $ this ->addToAssertionCount (1 );
151
154
} catch (TypeHintMismatchException $ exception ) {
152
155
$ this ->fail ('null argument should be allowed ' );
153
156
}
@@ -164,7 +167,7 @@ public function testFailsIfSyntaxOfExpressionIsInvalid()
164
167
165
168
$ validator = new ArgumentValidator (new ContainerBuilder (), $ this ->createMockResultingClassResolver ());
166
169
167
- $ this ->setExpectedException ('Matthias\SymfonyServiceDefinitionValidator\Exception\InvalidExpressionSyntaxException ' );
170
+ $ this ->expectException ('Matthias\SymfonyServiceDefinitionValidator\Exception\InvalidExpressionSyntaxException ' );
168
171
169
172
$ validator ->validate ($ parameter , $ argument );
170
173
}
@@ -180,7 +183,7 @@ public function testFailsIfExpressionCouldNotBeEvaluated()
180
183
181
184
$ validator = new ArgumentValidator (new ContainerBuilder (), $ this ->createMockResultingClassResolver (), true );
182
185
183
- $ this ->setExpectedException ('Matthias\SymfonyServiceDefinitionValidator\Exception\InvalidExpressionException ' );
186
+ $ this ->expectException ('Matthias\SymfonyServiceDefinitionValidator\Exception\InvalidExpressionException ' );
184
187
185
188
$ validator ->validate ($ parameter , $ argument );
186
189
}
@@ -195,6 +198,7 @@ public function testContainerReferenceArgumentDoesNotFail()
195
198
$ validator = new ArgumentValidator (new ContainerBuilder (), $ this ->createMockResultingClassResolver ());
196
199
197
200
$ validator ->validate ($ parameter , $ argument );
201
+ $ this ->addToAssertionCount (1 );
198
202
}
199
203
200
204
public function testPassesWhenArgumentIsClassAlias ()
@@ -231,14 +235,14 @@ public function testFailsIfContainerReferenceArgumentIsInjectedForParameterWithI
231
235
->willReturn ('Symfony\Component\DependencyInjection\Container ' );
232
236
$ validator = new ArgumentValidator (new ContainerBuilder (), $ classResolver );
233
237
234
- $ this ->setExpectedException ('Matthias\SymfonyServiceDefinitionValidator\Exception\TypeHintMismatchException ' , 'ExpectedClass ' );
238
+ $ this ->expectException ('Matthias\SymfonyServiceDefinitionValidator\Exception\TypeHintMismatchException ' , 'ExpectedClass ' );
235
239
236
240
$ validator ->validate ($ parameter , $ argument );
237
241
}
238
242
239
243
private function createMockResultingClassResolver ()
240
244
{
241
- return $ this ->getMock ('Matthias\SymfonyServiceDefinitionValidator\ResultingClassResolverInterface ' );
245
+ return $ this ->createMock ('Matthias\SymfonyServiceDefinitionValidator\ResultingClassResolverInterface ' );
242
246
}
243
247
244
248
private function skipTestIfExpressionsAreNotAvailable ()
0 commit comments