Skip to content

Commit

Permalink
Backport of fix for #3459 to PHPUnit 6.5.x
Browse files Browse the repository at this point in the history
  • Loading branch information
epdenouden authored and sebastianbergmann committed Jan 17, 2019
1 parent 6050504 commit 17a8efe
Show file tree
Hide file tree
Showing 4 changed files with 17 additions and 9 deletions.
2 changes: 1 addition & 1 deletion src/Util/Test.php
Expand Up @@ -37,7 +37,7 @@ class Test
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';
const REGEX_REQUIRES_VERSION_CONSTRAINT = '/@requires\s+(?P<name>PHP(?:Unit)?)\s+(?P<constraint>[\d\t -.|~^]+)[ \t]*\r?$/m';
const REGEX_REQUIRES_OS = '/@requires\s+(?P<name>OS(?:FAMILY)?)\s+(?P<value>.+?)[ \t]*\r?$/m';
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';
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';

const UNKNOWN = -1;
const SMALL = 0;
Expand Down
12 changes: 10 additions & 2 deletions tests/_files/RequirementsTest.php
Expand Up @@ -79,6 +79,14 @@ public function testTen()
{
}

/**
* @requires function testFunc2
* @see https://github.com/sebastianbergmann/phpunit/issues/3459
*/
public function testRequiresFunctionWithDigit()
{
}

/**
* @requires OS SunOS
* @requires OSFAMILY Solaris
Expand All @@ -92,9 +100,9 @@ public function testEleven()
* @requires PHPUnit 9-dev
* @requires OS DOESNOTEXIST
* @requires function testFuncOne
* @requires function testFuncTwo
* @requires function testFunc2
* @requires extension testExtOne
* @requires extension testExtTwo
* @requires extension testExt2
* @requires extension testExtThree 2.0
*/
public function testAllPossibleRequirements()
Expand Down
4 changes: 2 additions & 2 deletions tests/unit/Framework/TestCaseTest.php
Expand Up @@ -556,9 +556,9 @@ public function testSkipsProvidesMessagesForAllSkippingReasons()
'PHPUnit >= 9-dev is required.' . PHP_EOL .
'Operating system matching /DOESNOTEXIST/i is required.' . PHP_EOL .
'Function testFuncOne is required.' . PHP_EOL .
'Function testFuncTwo is required.' . PHP_EOL .
'Function testFunc2 is required.' . PHP_EOL .
'Extension testExtOne is required.' . PHP_EOL .
'Extension testExtTwo is required.' . PHP_EOL .
'Extension testExt2 is required.' . PHP_EOL .
'Extension testExtThree >= 2.0 is required.',
$test->getStatusMessage()
);
Expand Down
8 changes: 4 additions & 4 deletions tests/unit/Util/TestTest.php
Expand Up @@ -154,11 +154,11 @@ public function requirementsProvider()
'OS' => 'DOESNOTEXIST',
'functions' => [
'testFuncOne',
'testFuncTwo',
'testFunc2',
],
'extensions' => [
'testExtOne',
'testExtTwo',
'testExt2',
'testExtThree',
],
'extension_versions' => [
Expand Down Expand Up @@ -508,9 +508,9 @@ public function missingRequirementsProvider()
'PHPUnit >= 9-dev is required.',
'Operating system matching /DOESNOTEXIST/i is required.',
'Function testFuncOne is required.',
'Function testFuncTwo is required.',
'Function testFunc2 is required.',
'Extension testExtOne is required.',
'Extension testExtTwo is required.',
'Extension testExt2 is required.',
'Extension testExtThree >= 2.0 is required.',
]],
['testPHPVersionOperatorLessThan', ['PHP < 5.4 is required.']],
Expand Down

0 comments on commit 17a8efe

Please sign in to comment.