Skip to content

Commit 17a8efe

Browse files
epdenoudensebastianbergmann
authored andcommitted
Backport of fix for #3459 to PHPUnit 6.5.x
1 parent 6050504 commit 17a8efe

File tree

4 files changed

+17
-9
lines changed

4 files changed

+17
-9
lines changed

src/Util/Test.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ class Test
3737
const REGEX_REQUIRES_VERSION = '/@requires\s+(?P<name>PHP(?:Unit)?)\s+(?P<operator>[<>=!]{0,2})\s*(?P<version>[\d\.-]+(dev|(RC|alpha|beta)[\d\.])?)[ \t]*\r?$/m';
3838
const REGEX_REQUIRES_VERSION_CONSTRAINT = '/@requires\s+(?P<name>PHP(?:Unit)?)\s+(?P<constraint>[\d\t -.|~^]+)[ \t]*\r?$/m';
3939
const REGEX_REQUIRES_OS = '/@requires\s+(?P<name>OS(?:FAMILY)?)\s+(?P<value>.+?)[ \t]*\r?$/m';
40-
const REGEX_REQUIRES = '/@requires\s+(?P<name>function|extension)\s+(?P<value>([^ ]+?))\s*(?P<operator>[<>=!]{0,2})\s*(?P<version>[\d\.-]+[\d\.]?)?[ \t]*\r?$/m';
40+
const REGEX_REQUIRES = '/@requires\s+(?P<name>function|extension)\s+(?P<value>([^\s<>=!]+))\s*(?P<operator>[<>=!]{0,2})\s*(?P<version>[\d\.-]+[\d\.]?)?[ \t]*\r?$/m';
4141

4242
const UNKNOWN = -1;
4343
const SMALL = 0;

tests/_files/RequirementsTest.php

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,14 @@ public function testTen()
7979
{
8080
}
8181

82+
/**
83+
* @requires function testFunc2
84+
* @see https://github.com/sebastianbergmann/phpunit/issues/3459
85+
*/
86+
public function testRequiresFunctionWithDigit()
87+
{
88+
}
89+
8290
/**
8391
* @requires OS SunOS
8492
* @requires OSFAMILY Solaris
@@ -92,9 +100,9 @@ public function testEleven()
92100
* @requires PHPUnit 9-dev
93101
* @requires OS DOESNOTEXIST
94102
* @requires function testFuncOne
95-
* @requires function testFuncTwo
103+
* @requires function testFunc2
96104
* @requires extension testExtOne
97-
* @requires extension testExtTwo
105+
* @requires extension testExt2
98106
* @requires extension testExtThree 2.0
99107
*/
100108
public function testAllPossibleRequirements()

tests/unit/Framework/TestCaseTest.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -556,9 +556,9 @@ public function testSkipsProvidesMessagesForAllSkippingReasons()
556556
'PHPUnit >= 9-dev is required.' . PHP_EOL .
557557
'Operating system matching /DOESNOTEXIST/i is required.' . PHP_EOL .
558558
'Function testFuncOne is required.' . PHP_EOL .
559-
'Function testFuncTwo is required.' . PHP_EOL .
559+
'Function testFunc2 is required.' . PHP_EOL .
560560
'Extension testExtOne is required.' . PHP_EOL .
561-
'Extension testExtTwo is required.' . PHP_EOL .
561+
'Extension testExt2 is required.' . PHP_EOL .
562562
'Extension testExtThree >= 2.0 is required.',
563563
$test->getStatusMessage()
564564
);

tests/unit/Util/TestTest.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -154,11 +154,11 @@ public function requirementsProvider()
154154
'OS' => 'DOESNOTEXIST',
155155
'functions' => [
156156
'testFuncOne',
157-
'testFuncTwo',
157+
'testFunc2',
158158
],
159159
'extensions' => [
160160
'testExtOne',
161-
'testExtTwo',
161+
'testExt2',
162162
'testExtThree',
163163
],
164164
'extension_versions' => [
@@ -508,9 +508,9 @@ public function missingRequirementsProvider()
508508
'PHPUnit >= 9-dev is required.',
509509
'Operating system matching /DOESNOTEXIST/i is required.',
510510
'Function testFuncOne is required.',
511-
'Function testFuncTwo is required.',
511+
'Function testFunc2 is required.',
512512
'Extension testExtOne is required.',
513-
'Extension testExtTwo is required.',
513+
'Extension testExt2 is required.',
514514
'Extension testExtThree >= 2.0 is required.',
515515
]],
516516
['testPHPVersionOperatorLessThan', ['PHP < 5.4 is required.']],

0 commit comments

Comments
 (0)