function TestCase::invokeHookMethods
@psalm-param list<non-empty-string> $hookMethods @psalm-param 'testBeforeFirstTestMethodCalled'|'testBeforeTestMethodCalled'|'testPreConditionCalled'|'testPostConditionCalled'|'testAfterTestMethodCalled'|'testAfterLastTestMethodCalled' $calledMethod @psalm-param 'testBeforeFirstTestMethodFinished'|'testBeforeTestMethodFinished'|'testPreConditionFinished'|'testPostConditionFinished'|'testAfterTestMethodFinished'|'testAfterLastTestMethodFinished' $finishedMethod
Throws
Throwable
6 calls to TestCase::invokeHookMethods()
- TestCase::invokeAfterClassHookMethods in vendor/
phpunit/ phpunit/ src/ Framework/ TestCase.php - @codeCoverageIgnore
- TestCase::invokeAfterTestHookMethods in vendor/
phpunit/ phpunit/ src/ Framework/ TestCase.php - TestCase::invokeBeforeClassHookMethods in vendor/
phpunit/ phpunit/ src/ Framework/ TestCase.php - @codeCoverageIgnore
- TestCase::invokeBeforeTestHookMethods in vendor/
phpunit/ phpunit/ src/ Framework/ TestCase.php - TestCase::invokePostConditionHookMethods in vendor/
phpunit/ phpunit/ src/ Framework/ TestCase.php
File
-
vendor/
phpunit/ phpunit/ src/ Framework/ TestCase.php, line 2161
Class
- TestCase
- @no-named-arguments Parameter names are not covered by the backward compatibility promise for PHPUnit
Namespace
PHPUnit\FrameworkCode
private function invokeHookMethods(array $hookMethods, Event\Emitter $emitter, string $calledMethod, string $finishedMethod) : void {
$methodsInvoked = [];
foreach ($hookMethods as $methodName) {
if ($this->methodDoesNotExistOrIsDeclaredInTestCase($methodName)) {
continue;
}
try {
$this->{$methodName}();
} catch (Throwable $t) {
}
$methodInvoked = new Event\Code\ClassMethod(static::class, $methodName);
$emitter->{$calledMethod}(static::class, $methodInvoked);
$methodsInvoked[] = $methodInvoked;
if (isset($t)) {
break;
}
}
if (!empty($methodsInvoked)) {
$emitter->{$finishedMethod}(static::class, ...$methodsInvoked);
}
if (isset($t)) {
throw $t;
}
}