Make run-tests.php compatible with php 7.0-7.2

Motivation:
As an extension author, I want to speed up running tests in php <=7.3,
both locally and in CI (e.g. with valgrind).
This can be done by manually copying php 7.4's run-tests.php script
to replace the one generated by `phpize`

- list() doesn't work in php 7.0
- negative string offset doesn't work in php 7.2

If run-tests.php can be copied from php-src without any manual patches,
that would be the easiest.

Related to #2822 - I didn't see any discussion for/against compatibility
with older php versions
This commit is contained in:
Tyson Andre 2019-03-23 16:47:10 -04:00 committed by Nikita Popov
parent 8b94042c47
commit 936356bf1e

View File

@ -1505,7 +1505,7 @@ escape:
$rawMessage = $rawMessageBuffers[$i] . $rawMessage;
$rawMessageBuffers[$i] = '';
}
if ($rawMessage[-1] !== "\n") {
if (substr($rawMessage, -1) !== "\n") {
$rawMessageBuffers[$i] = $rawMessage;
continue;
}
@ -1571,7 +1571,7 @@ escape:
}
break;
case "test_result":
[$name, $index, $result, $resultText] = [$message["name"], $message["index"], $message["result"], $message["text"]];
list($name, $index, $result, $resultText) = [$message["name"], $message["index"], $message["result"], $message["text"]];
foreach ($message["PHP_FAILED_TESTS"] as $category => $tests) {
$PHP_FAILED_TESTS[$category] = array_merge($PHP_FAILED_TESTS[$category], $tests);
}