Skip to content

Commit 86415de

Browse files
Merge branch '11.5' into 12.0
2 parents 78b9255 + 2b86207 commit 86415de

File tree

8 files changed

+28
-23
lines changed

8 files changed

+28
-23
lines changed

ChangeLog-12.0.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,12 @@
22

33
All notable changes of the PHPUnit 12.0 release series are documented in this file using the [Keep a CHANGELOG](https://keepachangelog.com/) principles.
44

5+
## [12.0.3] - 2025-MM-DD
6+
7+
### Fixed
8+
9+
* A `Test\Passed` event is no longer emitted in addition to a `Test\Failed` or `Test\Errored` event when an assertion failure or an unexpected exception is triggered in an after-test method
10+
511
## [12.0.2] - 2025-02-08
612

713
### Changed
@@ -60,6 +66,7 @@ All notable changes of the PHPUnit 12.0 release series are documented in this fi
6066
* [#5801](https://github.com/sebastianbergmann/phpunit/issues/5801): Support for targeting traits with `#[CoversClass]` and `#[UsesClass]` attributes
6167
* [#5978](https://github.com/sebastianbergmann/phpunit/issues/5978): Support for PHP 8.2
6268

69+
[12.0.3]: https://github.com/sebastianbergmann/phpunit/compare/12.0.2...12.0
6370
[12.0.2]: https://github.com/sebastianbergmann/phpunit/compare/12.0.1...12.0.2
6471
[12.0.1]: https://github.com/sebastianbergmann/phpunit/compare/12.0.0...12.0.1
6572
[12.0.0]: https://github.com/sebastianbergmann/phpunit/compare/11.5...12.0.0

src/Framework/TestCase.php

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -553,27 +553,14 @@ final public function runBare(): void
553553
$this->performAssertionsOnOutput();
554554
}
555555

556-
if ($this->status->isSuccess()) {
557-
$emitter->testPassed(
558-
$this->valueObjectForEvents(),
559-
);
560-
561-
if (!$this->usesDataProvider()) {
562-
PassedTests::instance()->testMethodPassed(
563-
$this->valueObjectForEvents(),
564-
$this->testResult,
565-
);
566-
}
567-
}
568-
569556
try {
570557
$this->mockObjects = [];
571558

572559
/** @phpstan-ignore catch.neverThrown */
573-
} catch (Throwable $t) {
560+
} catch (Throwable $e) {
574561
Event\Facade::emitter()->testErrored(
575562
$this->valueObjectForEvents(),
576-
Event\Code\ThrowableBuilder::from($t),
563+
Event\Code\ThrowableBuilder::from($e),
577564
);
578565
}
579566

@@ -609,6 +596,19 @@ final public function runBare(): void
609596
}
610597
}
611598

599+
if (!isset($e) && !isset($_e)) {
600+
$emitter->testPassed(
601+
$this->valueObjectForEvents(),
602+
);
603+
604+
if (!$this->usesDataProvider()) {
605+
PassedTests::instance()->testMethodPassed(
606+
$this->valueObjectForEvents(),
607+
$this->testResult,
608+
);
609+
}
610+
}
611+
612612
if (!$outputBufferingStopped) {
613613
$this->stopOutputBuffering();
614614
}

tests/end-to-end/event/assertion-failure-in-after-test-method.phpt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ Test Runner Execution Started (1 test)
2121
Test Suite Started (PHPUnit\TestFixture\Event\AssertionFailureInTearDownTest, 1 test)
2222
Test Preparation Started (PHPUnit\TestFixture\Event\AssertionFailureInTearDownTest::testOne)
2323
Test Prepared (PHPUnit\TestFixture\Event\AssertionFailureInTearDownTest::testOne)
24-
Test Passed (PHPUnit\TestFixture\Event\AssertionFailureInTearDownTest::testOne)
2524
After Test Method Called (PHPUnit\TestFixture\Event\AssertionFailureInTearDownTest::afterTest)
2625
After Test Method Errored (PHPUnit\TestFixture\Event\AssertionFailureInTearDownTest::afterTest)
2726
Failed asserting that false is true.

tests/end-to-end/event/exception-in-after-test-method.phpt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ Test Runner Execution Started (1 test)
2121
Test Suite Started (PHPUnit\TestFixture\Event\ExceptionInTearDownTest, 1 test)
2222
Test Preparation Started (PHPUnit\TestFixture\Event\ExceptionInTearDownTest::testOne)
2323
Test Prepared (PHPUnit\TestFixture\Event\ExceptionInTearDownTest::testOne)
24-
Test Passed (PHPUnit\TestFixture\Event\ExceptionInTearDownTest::testOne)
2524
After Test Method Called (PHPUnit\TestFixture\Event\ExceptionInTearDownTest::tearDown)
2625
After Test Method Errored (PHPUnit\TestFixture\Event\ExceptionInTearDownTest::tearDown)
2726
After Test Method Finished:

tests/end-to-end/event/template-methods-isolation.phpt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,13 +38,13 @@ Test Prepared (PHPUnit\TestFixture\Event\TemplateMethodsTest::testOne)
3838
Post Condition Method Called (PHPUnit\TestFixture\Event\TemplateMethodsTest::assertPostConditions)
3939
Post Condition Method Finished:
4040
- PHPUnit\TestFixture\Event\TemplateMethodsTest::assertPostConditions
41-
Test Passed (PHPUnit\TestFixture\Event\TemplateMethodsTest::testOne)
4241
After Test Method Called (PHPUnit\TestFixture\Event\TemplateMethodsTest::tearDown)
4342
After Test Method Finished:
4443
- PHPUnit\TestFixture\Event\TemplateMethodsTest::tearDown
4544
After Last Test Method Called (PHPUnit\TestFixture\Event\TemplateMethodsTest::tearDownAfterClass)
4645
After Last Test Method Finished:
4746
- PHPUnit\TestFixture\Event\TemplateMethodsTest::tearDownAfterClass
47+
Test Passed (PHPUnit\TestFixture\Event\TemplateMethodsTest::testOne)
4848
Test Finished (PHPUnit\TestFixture\Event\TemplateMethodsTest::testOne)
4949
Child Process Finished
5050
Child Process Started
@@ -62,13 +62,13 @@ Test Prepared (PHPUnit\TestFixture\Event\TemplateMethodsTest::testTwo)
6262
Post Condition Method Called (PHPUnit\TestFixture\Event\TemplateMethodsTest::assertPostConditions)
6363
Post Condition Method Finished:
6464
- PHPUnit\TestFixture\Event\TemplateMethodsTest::assertPostConditions
65-
Test Passed (PHPUnit\TestFixture\Event\TemplateMethodsTest::testTwo)
6665
After Test Method Called (PHPUnit\TestFixture\Event\TemplateMethodsTest::tearDown)
6766
After Test Method Finished:
6867
- PHPUnit\TestFixture\Event\TemplateMethodsTest::tearDown
6968
After Last Test Method Called (PHPUnit\TestFixture\Event\TemplateMethodsTest::tearDownAfterClass)
7069
After Last Test Method Finished:
7170
- PHPUnit\TestFixture\Event\TemplateMethodsTest::tearDownAfterClass
71+
Test Passed (PHPUnit\TestFixture\Event\TemplateMethodsTest::testTwo)
7272
Test Finished (PHPUnit\TestFixture\Event\TemplateMethodsTest::testTwo)
7373
Child Process Finished
7474
After Last Test Method Called (PHPUnit\TestFixture\Event\TemplateMethodsTest::tearDownAfterClass)

tests/end-to-end/event/template-methods.phpt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,10 @@ Test Prepared (PHPUnit\TestFixture\Event\TemplateMethodsTest::testOne)
3333
Post Condition Method Called (PHPUnit\TestFixture\Event\TemplateMethodsTest::assertPostConditions)
3434
Post Condition Method Finished:
3535
- PHPUnit\TestFixture\Event\TemplateMethodsTest::assertPostConditions
36-
Test Passed (PHPUnit\TestFixture\Event\TemplateMethodsTest::testOne)
3736
After Test Method Called (PHPUnit\TestFixture\Event\TemplateMethodsTest::tearDown)
3837
After Test Method Finished:
3938
- PHPUnit\TestFixture\Event\TemplateMethodsTest::tearDown
39+
Test Passed (PHPUnit\TestFixture\Event\TemplateMethodsTest::testOne)
4040
Test Finished (PHPUnit\TestFixture\Event\TemplateMethodsTest::testOne)
4141
Test Preparation Started (PHPUnit\TestFixture\Event\TemplateMethodsTest::testTwo)
4242
Before Test Method Called (PHPUnit\TestFixture\Event\TemplateMethodsTest::setUp)
@@ -49,10 +49,10 @@ Test Prepared (PHPUnit\TestFixture\Event\TemplateMethodsTest::testTwo)
4949
Post Condition Method Called (PHPUnit\TestFixture\Event\TemplateMethodsTest::assertPostConditions)
5050
Post Condition Method Finished:
5151
- PHPUnit\TestFixture\Event\TemplateMethodsTest::assertPostConditions
52-
Test Passed (PHPUnit\TestFixture\Event\TemplateMethodsTest::testTwo)
5352
After Test Method Called (PHPUnit\TestFixture\Event\TemplateMethodsTest::tearDown)
5453
After Test Method Finished:
5554
- PHPUnit\TestFixture\Event\TemplateMethodsTest::tearDown
55+
Test Passed (PHPUnit\TestFixture\Event\TemplateMethodsTest::testTwo)
5656
Test Finished (PHPUnit\TestFixture\Event\TemplateMethodsTest::testTwo)
5757
After Last Test Method Called (PHPUnit\TestFixture\Event\TemplateMethodsTest::tearDownAfterClass)
5858
After Last Test Method Finished:

tests/end-to-end/metadata/hook-methods-order.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@ Before Test Method Finished:
3737
- PHPUnit\TestFixture\HookMethodsOrderTest::beforeSecond
3838
- PHPUnit\TestFixture\HookMethodsOrderTest::setUp
3939
Test Prepared (PHPUnit\TestFixture\HookMethodsOrderTest::testOne)
40-
Test Passed (PHPUnit\TestFixture\HookMethodsOrderTest::testOne)
4140
After Test Method Called (PHPUnit\TestFixture\HookMethodsOrderTest::afterWithPriority)
4241
After Test Method Called (PHPUnit\TestFixture\HookMethodsOrderTest::afterWithPriorityInParent)
4342
After Test Method Called (PHPUnit\TestFixture\HookMethodsOrderTest::tearDown)
@@ -51,6 +50,7 @@ After Test Method Finished:
5150
- PHPUnit\TestFixture\HookMethodsOrderTest::afterFirst
5251
- PHPUnit\TestFixture\HookMethodsOrderTest::afterSecond
5352
- PHPUnit\TestFixture\HookMethodsOrderTest::afterInParent
53+
Test Passed (PHPUnit\TestFixture\HookMethodsOrderTest::testOne)
5454
Test Finished (PHPUnit\TestFixture\HookMethodsOrderTest::testOne)
5555
Test Suite Finished (PHPUnit\TestFixture\HookMethodsOrderTest, 1 test)
5656
Test Runner Execution Finished

tests/end-to-end/regression/5498.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,12 @@ Before Test Method Finished:
3030
- PHPUnit\TestFixture\Issue5498\Test::parentBefore
3131
- PHPUnit\TestFixture\Issue5498\Test::before
3232
Test Prepared (PHPUnit\TestFixture\Issue5498\Test::testOne)
33-
Test Passed (PHPUnit\TestFixture\Issue5498\Test::testOne)
3433
After Test Method Called (PHPUnit\TestFixture\Issue5498\Test::after)
3534
After Test Method Called (PHPUnit\TestFixture\Issue5498\Test::parentAfter)
3635
After Test Method Finished:
3736
- PHPUnit\TestFixture\Issue5498\Test::after
3837
- PHPUnit\TestFixture\Issue5498\Test::parentAfter
38+
Test Passed (PHPUnit\TestFixture\Issue5498\Test::testOne)
3939
Test Finished (PHPUnit\TestFixture\Issue5498\Test::testOne)
4040
Test Suite Finished (PHPUnit\TestFixture\Issue5498\Test, 1 test)
4141
Test Suite Finished (CLI Arguments, 1 test)

0 commit comments

Comments
 (0)