Skip to content

Commit 80307f2

Browse files
Return specialized strings from asString() for test suites used to group data providers and repeated tests
1 parent 3efa099 commit 80307f2

25 files changed

Lines changed: 213 additions & 60 deletions

src/Event/Events/TestSuite/Finished.php

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,11 +47,31 @@ public function testSuite(): TestSuite
4747
*/
4848
public function asString(): string
4949
{
50+
$prefix = 'Test Suite Finished';
51+
$unit = 'test';
52+
53+
if ($this->testSuite->isForTestMethodWithDataProvider()) {
54+
$prefix = 'Test Suite for Test Method with Data Provider Finished';
55+
$unit = 'data set';
56+
} elseif ($this->testSuite->isForRepeatedTestMethod()) {
57+
$prefix = 'Test Suite for Repeated Test Method Finished';
58+
$unit = 'repetition';
59+
}
60+
61+
$count = $this->testSuite->count();
62+
$plural = '';
63+
64+
if ($count !== 1) {
65+
$plural = 's';
66+
}
67+
5068
return sprintf(
51-
'Test Suite Finished (%s, %d test%s)',
69+
'%s (%s, %d %s%s)',
70+
$prefix,
5271
$this->testSuite->name(),
53-
$this->testSuite->count(),
54-
$this->testSuite->count() !== 1 ? 's' : '',
72+
$count,
73+
$unit,
74+
$plural,
5575
);
5676
}
5777
}

src/Event/Events/TestSuite/Started.php

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,11 +47,31 @@ public function testSuite(): TestSuite
4747
*/
4848
public function asString(): string
4949
{
50+
$prefix = 'Test Suite Started';
51+
$unit = 'test';
52+
53+
if ($this->testSuite->isForTestMethodWithDataProvider()) {
54+
$prefix = 'Test Suite for Test Method with Data Provider Started';
55+
$unit = 'data set';
56+
} elseif ($this->testSuite->isForRepeatedTestMethod()) {
57+
$prefix = 'Test Suite for Repeated Test Method Started';
58+
$unit = 'repetition';
59+
}
60+
61+
$count = $this->testSuite->count();
62+
$plural = '';
63+
64+
if ($count !== 1) {
65+
$plural = 's';
66+
}
67+
5068
return sprintf(
51-
'Test Suite Started (%s, %d test%s)',
69+
'%s (%s, %d %s%s)',
70+
$prefix,
5271
$this->testSuite->name(),
53-
$this->testSuite->count(),
54-
$this->testSuite->count() !== 1 ? 's' : '',
72+
$count,
73+
$unit,
74+
$plural,
5575
);
5676
}
5777
}

tests/end-to-end/cli/test-id-filter/test-id-filter-by-id-with-special-characters.phpt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,12 @@ Test Suite Sorted
2525
Test Suite Filtered (1 test)
2626
Test Runner Execution Started (1 test)
2727
Test Suite Started (PHPUnit\TestFixture\TestIdFilter\BarTest, 1 test)
28-
Test Suite Started (PHPUnit\TestFixture\TestIdFilter\BarTest::testWithSpecialCharacters, 1 test)
28+
Test Suite for Test Method with Data Provider Started (PHPUnit\TestFixture\TestIdFilter\BarTest::testWithSpecialCharacters, 1 data set)
2929
Test Preparation Started (PHPUnit\TestFixture\TestIdFilter\BarTest::testWithSpecialCharacters#total ($100))
3030
Test Prepared (PHPUnit\TestFixture\TestIdFilter\BarTest::testWithSpecialCharacters#total ($100))
3131
Test Passed (PHPUnit\TestFixture\TestIdFilter\BarTest::testWithSpecialCharacters#total ($100))
3232
Test Finished (PHPUnit\TestFixture\TestIdFilter\BarTest::testWithSpecialCharacters#total ($100))
33-
Test Suite Finished (PHPUnit\TestFixture\TestIdFilter\BarTest::testWithSpecialCharacters, 1 test)
33+
Test Suite for Test Method with Data Provider Finished (PHPUnit\TestFixture\TestIdFilter\BarTest::testWithSpecialCharacters, 1 data set)
3434
Test Suite Finished (PHPUnit\TestFixture\TestIdFilter\BarTest, 1 test)
3535
Test Runner Execution Finished
3636
Test Runner Finished

tests/end-to-end/event/data-provider-external.phpt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ Test Runner Started
2525
Test Suite Sorted
2626
Test Runner Execution Started (2 tests)
2727
Test Suite Started (PHPUnit\TestFixture\Event\DataProviderExternalTest, 2 tests)
28-
Test Suite Started (PHPUnit\TestFixture\Event\DataProviderExternalTest::testSuccess, 2 tests)
28+
Test Suite for Test Method with Data Provider Started (PHPUnit\TestFixture\Event\DataProviderExternalTest::testSuccess, 2 data sets)
2929
Test Preparation Started (PHPUnit\TestFixture\Event\DataProviderExternalTest::testSuccess#0)
3030
Test Prepared (PHPUnit\TestFixture\Event\DataProviderExternalTest::testSuccess#0)
3131
Test Passed (PHPUnit\TestFixture\Event\DataProviderExternalTest::testSuccess#0)
@@ -34,7 +34,7 @@ Test Preparation Started (PHPUnit\TestFixture\Event\DataProviderExternalTest::te
3434
Test Prepared (PHPUnit\TestFixture\Event\DataProviderExternalTest::testSuccess#1)
3535
Test Passed (PHPUnit\TestFixture\Event\DataProviderExternalTest::testSuccess#1)
3636
Test Finished (PHPUnit\TestFixture\Event\DataProviderExternalTest::testSuccess#1)
37-
Test Suite Finished (PHPUnit\TestFixture\Event\DataProviderExternalTest::testSuccess, 2 tests)
37+
Test Suite for Test Method with Data Provider Finished (PHPUnit\TestFixture\Event\DataProviderExternalTest::testSuccess, 2 data sets)
3838
Test Suite Finished (PHPUnit\TestFixture\Event\DataProviderExternalTest, 2 tests)
3939
Test Runner Execution Finished
4040
Test Runner Finished

tests/end-to-end/event/data-provider-in-parent-class.phpt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,12 @@ Test Runner Started
2222
Test Suite Sorted
2323
Test Runner Execution Started (1 test)
2424
Test Suite Started (PHPUnit\TestFixture\Event\DataProviderInParentTest, 1 test)
25-
Test Suite Started (PHPUnit\TestFixture\Event\DataProviderInParentTest::testSomething, 1 test)
25+
Test Suite for Test Method with Data Provider Started (PHPUnit\TestFixture\Event\DataProviderInParentTest::testSomething, 1 data set)
2626
Test Preparation Started (PHPUnit\TestFixture\Event\DataProviderInParentTest::testSomething#0)
2727
Test Prepared (PHPUnit\TestFixture\Event\DataProviderInParentTest::testSomething#0)
2828
Test Passed (PHPUnit\TestFixture\Event\DataProviderInParentTest::testSomething#0)
2929
Test Finished (PHPUnit\TestFixture\Event\DataProviderInParentTest::testSomething#0)
30-
Test Suite Finished (PHPUnit\TestFixture\Event\DataProviderInParentTest::testSomething, 1 test)
30+
Test Suite for Test Method with Data Provider Finished (PHPUnit\TestFixture\Event\DataProviderInParentTest::testSomething, 1 data set)
3131
Test Suite Finished (PHPUnit\TestFixture\Event\DataProviderInParentTest, 1 test)
3232
Test Runner Execution Finished
3333
Test Runner Finished

tests/end-to-end/event/data-provider-invalid-argument-name.phpt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ Test Runner Started
2222
Test Suite Sorted
2323
Test Runner Execution Started (2 tests)
2424
Test Suite Started (PHPUnit\TestFixture\Event\InvalidParameterNameDataProviderTest, 2 tests)
25-
Test Suite Started (PHPUnit\TestFixture\Event\InvalidParameterNameDataProviderTest::testSuccess, 2 tests)
25+
Test Suite for Test Method with Data Provider Started (PHPUnit\TestFixture\Event\InvalidParameterNameDataProviderTest::testSuccess, 2 data sets)
2626
Test Preparation Started (PHPUnit\TestFixture\Event\InvalidParameterNameDataProviderTest::testSuccess#0)
2727
Test Prepared (PHPUnit\TestFixture\Event\InvalidParameterNameDataProviderTest::testSuccess#0)
2828
Test Passed (PHPUnit\TestFixture\Event\InvalidParameterNameDataProviderTest::testSuccess#0)
@@ -32,7 +32,7 @@ Test Prepared (PHPUnit\TestFixture\Event\InvalidParameterNameDataProviderTest::t
3232
Test Errored (PHPUnit\TestFixture\Event\InvalidParameterNameDataProviderTest::testSuccess#1)
3333
Unknown named parameter $value3
3434
Test Finished (PHPUnit\TestFixture\Event\InvalidParameterNameDataProviderTest::testSuccess#1)
35-
Test Suite Finished (PHPUnit\TestFixture\Event\InvalidParameterNameDataProviderTest::testSuccess, 2 tests)
35+
Test Suite for Test Method with Data Provider Finished (PHPUnit\TestFixture\Event\InvalidParameterNameDataProviderTest::testSuccess, 2 data sets)
3636
Test Suite Finished (PHPUnit\TestFixture\Event\InvalidParameterNameDataProviderTest, 2 tests)
3737
Test Runner Execution Finished
3838
Test Runner Finished

tests/end-to-end/event/data-provider.phpt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ Test Runner Started
2222
Test Suite Sorted
2323
Test Runner Execution Started (2 tests)
2424
Test Suite Started (PHPUnit\TestFixture\Event\DataProviderTest, 2 tests)
25-
Test Suite Started (PHPUnit\TestFixture\Event\DataProviderTest::testSuccess, 2 tests)
25+
Test Suite for Test Method with Data Provider Started (PHPUnit\TestFixture\Event\DataProviderTest::testSuccess, 2 data sets)
2626
Test Preparation Started (PHPUnit\TestFixture\Event\DataProviderTest::testSuccess#0)
2727
Test Prepared (PHPUnit\TestFixture\Event\DataProviderTest::testSuccess#0)
2828
Test Passed (PHPUnit\TestFixture\Event\DataProviderTest::testSuccess#0)
@@ -31,7 +31,7 @@ Test Preparation Started (PHPUnit\TestFixture\Event\DataProviderTest::testSucces
3131
Test Prepared (PHPUnit\TestFixture\Event\DataProviderTest::testSuccess#1)
3232
Test Passed (PHPUnit\TestFixture\Event\DataProviderTest::testSuccess#1)
3333
Test Finished (PHPUnit\TestFixture\Event\DataProviderTest::testSuccess#1)
34-
Test Suite Finished (PHPUnit\TestFixture\Event\DataProviderTest::testSuccess, 2 tests)
34+
Test Suite for Test Method with Data Provider Finished (PHPUnit\TestFixture\Event\DataProviderTest::testSuccess, 2 data sets)
3535
Test Suite Finished (PHPUnit\TestFixture\Event\DataProviderTest, 2 tests)
3636
Test Runner Execution Finished
3737
Test Runner Finished

tests/end-to-end/event/testwith-attribute-too-many-values.phpt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,12 @@ Test Runner Started
2121
Test Suite Sorted
2222
Test Runner Execution Started (1 test)
2323
Test Suite Started (PHPUnit\TestFixture\Metadata\Attribute\TestWithTooManyValuesTest, 1 test)
24-
Test Suite Started (PHPUnit\TestFixture\Metadata\Attribute\TestWithTooManyValuesTest::testOne, 1 test)
24+
Test Suite for Test Method with Data Provider Started (PHPUnit\TestFixture\Metadata\Attribute\TestWithTooManyValuesTest::testOne, 1 data set)
2525
Test Preparation Started (PHPUnit\TestFixture\Metadata\Attribute\TestWithTooManyValuesTest::testOne#0)
2626
Test Prepared (PHPUnit\TestFixture\Metadata\Attribute\TestWithTooManyValuesTest::testOne#0)
2727
Test Passed (PHPUnit\TestFixture\Metadata\Attribute\TestWithTooManyValuesTest::testOne#0)
2828
Test Finished (PHPUnit\TestFixture\Metadata\Attribute\TestWithTooManyValuesTest::testOne#0)
29-
Test Suite Finished (PHPUnit\TestFixture\Metadata\Attribute\TestWithTooManyValuesTest::testOne, 1 test)
29+
Test Suite for Test Method with Data Provider Finished (PHPUnit\TestFixture\Metadata\Attribute\TestWithTooManyValuesTest::testOne, 1 data set)
3030
Test Suite Finished (PHPUnit\TestFixture\Metadata\Attribute\TestWithTooManyValuesTest, 1 test)
3131
Test Runner Execution Finished
3232
Test Runner Finished

tests/end-to-end/event/testwith-attribute.phpt

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -19,30 +19,30 @@ Test Runner Started
1919
Test Suite Sorted
2020
Test Runner Execution Started (4 tests)
2121
Test Suite Started (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest, 4 tests)
22-
Test Suite Started (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testOne, 1 test)
22+
Test Suite for Test Method with Data Provider Started (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testOne, 1 data set)
2323
Test Preparation Started (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testOne#0)
2424
Test Prepared (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testOne#0)
2525
Test Passed (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testOne#0)
2626
Test Finished (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testOne#0)
27-
Test Suite Finished (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testOne, 1 test)
28-
Test Suite Started (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testOneWithName, 1 test)
27+
Test Suite for Test Method with Data Provider Finished (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testOne, 1 data set)
28+
Test Suite for Test Method with Data Provider Started (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testOneWithName, 1 data set)
2929
Test Preparation Started (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testOneWithName#Name1)
3030
Test Prepared (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testOneWithName#Name1)
3131
Test Passed (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testOneWithName#Name1)
3232
Test Finished (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testOneWithName#Name1)
33-
Test Suite Finished (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testOneWithName, 1 test)
34-
Test Suite Started (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testTwo, 1 test)
33+
Test Suite for Test Method with Data Provider Finished (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testOneWithName, 1 data set)
34+
Test Suite for Test Method with Data Provider Started (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testTwo, 1 data set)
3535
Test Preparation Started (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testTwo#0)
3636
Test Prepared (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testTwo#0)
3737
Test Passed (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testTwo#0)
3838
Test Finished (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testTwo#0)
39-
Test Suite Finished (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testTwo, 1 test)
40-
Test Suite Started (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testTwoWithName, 1 test)
39+
Test Suite for Test Method with Data Provider Finished (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testTwo, 1 data set)
40+
Test Suite for Test Method with Data Provider Started (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testTwoWithName, 1 data set)
4141
Test Preparation Started (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testTwoWithName#Name2)
4242
Test Prepared (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testTwoWithName#Name2)
4343
Test Passed (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testTwoWithName#Name2)
4444
Test Finished (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testTwoWithName#Name2)
45-
Test Suite Finished (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testTwoWithName, 1 test)
45+
Test Suite for Test Method with Data Provider Finished (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest::testTwoWithName, 1 data set)
4646
Test Suite Finished (PHPUnit\TestFixture\Metadata\Attribute\TestWithTest, 4 tests)
4747
Test Runner Execution Finished
4848
Test Runner Finished

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,12 @@ Test Suite Sorted
2424
Test Suite Filtered (1 test)
2525
Test Runner Execution Started (1 test)
2626
Test Suite Started (PHPUnit\TestFixture\Issue4975Test, 1 test)
27-
Test Suite Started (PHPUnit\TestFixture\Issue4975Test::testSomething, 1 test)
27+
Test Suite for Test Method with Data Provider Started (PHPUnit\TestFixture\Issue4975Test::testSomething, 1 data set)
2828
Test Preparation Started (PHPUnit\TestFixture\Issue4975Test::testSomething##2 second)
2929
Test Prepared (PHPUnit\TestFixture\Issue4975Test::testSomething##2 second)
3030
Test Passed (PHPUnit\TestFixture\Issue4975Test::testSomething##2 second)
3131
Test Finished (PHPUnit\TestFixture\Issue4975Test::testSomething##2 second)
32-
Test Suite Finished (PHPUnit\TestFixture\Issue4975Test::testSomething, 1 test)
32+
Test Suite for Test Method with Data Provider Finished (PHPUnit\TestFixture\Issue4975Test::testSomething, 1 data set)
3333
Test Suite Finished (PHPUnit\TestFixture\Issue4975Test, 1 test)
3434
Test Runner Execution Finished
3535
Test Runner Finished

0 commit comments

Comments
 (0)