Skip to content
This repository was archived by the owner on Mar 12, 2025. It is now read-only.

Commit ac13711

Browse files
committed
Call hook methods only if they exist
1 parent 4c4f2ca commit ac13711

File tree

1 file changed

+13
-9
lines changed

1 file changed

+13
-9
lines changed

src/TestCase.php

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,28 +5,32 @@
55

66
abstract class TestCase extends \PHPUnit\Framework\TestCase
77
{
8-
protected abstract function _setUp();
9-
protected abstract function _tearDown();
10-
public static abstract function _setUpBeforeClass();
11-
public static abstract function _tearDownAfterClass();
128

139
protected function setUp(): void
1410
{
15-
self::_setUp();
11+
if (method_exists($this, '_setUp')) {
12+
$this->_setUp();
13+
}
1614
}
1715

1816
protected function tearDown(): void
1917
{
20-
self::_tearDown();
18+
if (method_exists($this, '_tearDown')) {
19+
$this->_tearDown();
20+
}
2121
}
2222

2323
public static function setUpBeforeClass(): void
2424
{
25-
self::_setUpBeforeClass();
25+
if (method_exists(get_called_class(), '_setUpBeforeClass')) {
26+
static::_setUpBeforeClass();
27+
}
2628
}
2729

2830
public static function tearDownAfterClass(): void
2931
{
30-
self::_tearDownAfterClass();
32+
if (method_exists(get_called_class(), '_tearDownAfterClass')) {
33+
static::_tearDownAfterClass();
34+
}
3135
}
32-
}
36+
}

0 commit comments

Comments
 (0)