Skip to content

Commit 84d3277

Browse files
committed
consider traits imported in parent classes
A public method declared in a trait can be used by a class without importing the trait itself when the trait is already imported by one of the parent classes from the inheritance chain.
1 parent 39bdf98 commit 84d3277

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

Legacy/SymfonyTestsListenerTrait.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -232,7 +232,7 @@ public function startTest($test)
232232
if (isset($annotations['class']['expectedDeprecation'])) {
233233
$test->getTestResultObject()->addError($test, new AssertionFailedError('`@expectedDeprecation` annotations are not allowed at the class level.'), 0);
234234
}
235-
if (isset($annotations['method']['expectedDeprecation']) || $this->checkNumAssertions = \in_array(ExpectDeprecationTrait::class, class_uses($test), true)) {
235+
if (isset($annotations['method']['expectedDeprecation']) || $this->checkNumAssertions = method_exists($test, 'expectDeprecation') && (new \ReflectionMethod($test, 'expectDeprecation'))->getFileName() === (new \ReflectionMethod(ExpectDeprecationTrait::class, 'expectDeprecation'))->getFileName()) {
236236
if (isset($annotations['method']['expectedDeprecation'])) {
237237
self::$expectedDeprecations = $annotations['method']['expectedDeprecation'];
238238
self::$previousErrorHandler = set_error_handler([self::class, 'handleError']);

0 commit comments

Comments
 (0)