summaryrefslogtreecommitdiff
path: root/run-tests.php
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'PHP-7.3' into PHP-7.4Levi Morrison2019-07-251-1/+4
|\ | | | | | | | | * PHP-7.3: Remove .post files only for passing tests
| * Merge branch 'PHP-7.2' into PHP-7.3Levi Morrison2019-07-251-2/+4
| |\ | | | | | | | | | | | | * PHP-7.2: Remove .post files only for passing tests
| | * Remove .post files only for passing testsLevi Morrison2019-07-251-2/+4
| | | | | | | | | | | | This allows the sh script for failing tests with --POST-- to work
| * | Add CONFLICTS to recognized sectionsNikita Popov2019-07-101-1/+1
| | | | | | | | | | | | | | | It does nothing on 7.3, but this makes it easier to write tests in 3rd party extensions.
* | | Cleanup of remaining E_STRICT in testsGeorge Peter Banyard2019-07-231-2/+2
| | |
* | | Fix failed tests for pharPeter Kokot2019-07-211-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - when $status is boolean, E_NOTICE appears and tests fail - opcache is never enabled on these tests anyway. - Add opcache.revalidate_freq=0 to testing script Instead of checking this in the tests files it can be used directly in the main testing script. Also this fixes failed tests. - Use opcache_invalidate() instead of sleep() delay in some tests. Some delays are still used since the opcache_invalidate seems to be buggy and not working as expected. Closes GH-4392
* | | Deprecate alternative array access syntaxrjhdby2019-07-191-4/+4
| | | | | | | | | | | | RFC: https://wiki.php.net/rfc/deprecate_curly_braces_array_access
* | | Remove remaining lightnings from run-tests.phpChristoph M. Becker2019-07-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The classic Windows console only supports the Unicode BMP, so it can't handle the LIGHTNING MOOD character (U+1F5F2). It also seems that common fonts do not support the LIGHTNING (U+2607) character, so a general removal is appropriate. However, Windows is already "ready for the future"[1], but PHP for Windows is not (yet). [1] <https://devblogs.microsoft.com/commandline/windows-command-line-unicode-and-utf-8-output-text-buffer/>
* | | Remove lightningNikita Popov2019-07-181-3/+3
| | | | | | | | | | | | Windows is not quite ready for the future.
* | | Allow multiple cache instances per user/host on WindowsChristoph M. Becker2019-07-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Formerly, there was at most a single OPcache instance per user and the so called system ID (which is determined from the PHP version). Sometimes multiple OPcaches might be desired, though, particularly for unrelated CLI scripts, which may even be necessary (e.g. for our test suite in parallel mode). We therefore introduce a new INI directive `opcache.cache_id` which allows to configure independent OPcache instances for the same user. We also use `GetUserNameW()` instead of `php_win32_get_username()`, because the latter retrieves the user name encoded in the `default_charset`, which can obviously yield different results for different charsets, leading to OPcache "incompatibilities". Slightly worse, some characters may not even be encodeable in the `default_charset` and would be replaced by question marks, which could result in different users sharing the same OPcache. We also refactor, and re-use existing APIs to avoid duplicated code.
* | | Remove checks for always enabled spl and pcrePeter Kokot2019-07-131-23/+2
| | | | | | | | | | | | Closes GH-4397
* | | Include test name in JUnit testcase nameNikita Popov2019-07-111-2/+2
| | | | | | | | | | | | | | | Azure does not show the classname attribute in any convenient way, and the file name is the part we usually care about.
* | | Set up asan+ubsan scheduled build on azureNikita Popov2019-06-281-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | Also adds an --asan flag to run-tests.php to setup all the necessary environment variables. Some tests are marked as skipped because they are incompatible with asan or too slow. I'm basing this on the DEBUG_ZTS build, which seems to give us the most mileage.
* | | run-tests: Don't pass --INI-- settings to --SKIPIF--Nikita Popov2019-06-281-7/+9
| | | | | | | | | | | | | | | | | | | | | | | | If we're testing ini settings that cause startup failures, we'll never get to that SKIPIF block... Also change settings2param to return a value instead of modifying (to a different type no less!) in place.
* | | run-tests: Don't die unnecessarilyNikita Popov2019-06-251-5/+3
| | | | | | | | | | | | die/exit leak memory, don't use them if we don't need to.
* | | Don't force USE_ZEND_ALLOC=0 in run-tests.phpNikita Popov2019-06-251-6/+0
| | | | | | | | | | | | | | | USE_ZEND_ALLOC=0 is useful not just for valgrind ... we should not force USE_ZEND_ALLOC=1 if the user explicitly disabled it.
* | | Merge branch 'PHP-7.3' into PHP-7.4Nikita Popov2019-06-131-1/+3
|\ \ \ | |/ /
| * | Merge branch 'PHP-7.2' into PHP-7.3Nikita Popov2019-06-131-1/+3
| |\ \ | | |/
| | * Add test for bug #78106Nikita Popov2019-06-131-1/+3
| | | | | | | | | | | | | | | | | | Also add PHP_TEST_EXTRA_ARGS environment variable, which allows to pass on -c, -d etc flags provided by run-tests.php. Otherwise we won't get the built-in server to run with opcache.
| * | Restore the execute bit for run-tests.phpCraig Duncan2019-05-281-0/+0
| | | | | | | | | | | | It looks like this was accidentally removed in 03f15f705ad30ce2dde7f7b2ab087a132b859ba0
* | | junit testcase classname is used as filename on azureJoe Watkins2019-06-051-1/+1
| | |
* | | only clear when showing in parallel runnerJoe Watkins2019-06-011-2/+8
| | |
* | | Fix NO_INTERACTION handling in parallel test runnerNikita Popov2019-05-311-4/+4
| | | | | | | | | | | | | | | This printing shouldn't depend on NO_INTERACTION, the variable that controls this is SHOW_ONLY_GROUPS.
* | | Add junit support for parallel test runnerNikita Popov2019-05-311-19/+56
| | |
* | | run-tests: Remove redundant 'suites' keyNikita Popov2019-05-311-1/+0
| | | | | | | | | | | | | | | We don't have nestead testsuites or similar, so drop this confusing key.
* | | have parallel test runner respect NO_INTERACTIONJoe Watkins2019-05-301-3/+7
| | |
* | | Run sapi tests when running all testsNikita Popov2019-05-291-1/+1
| | |
* | | fix notice in run-testsJoe Watkins2019-05-231-1/+1
| | |
* | | run-tests improvements:Joe Watkins2019-05-231-14/+48
| | | | | | | | | | | | | | | | | | | | | | | | Add XLEAK section, this is made necessary by the support for valgrind tools other than memcheck. XLEAK is to a leaking test what XFAIL is to a failing test. Tidy up summary a little to exclude Expected Fail and Expected Leak when there are no expected fail/leaks
* | | add support for valgrind tools to run-tests.phpJoe Watkins2019-05-221-8/+17
| | |
* | | Merge branch 'PHP-7.3' into PHP-7.4Christoph M. Becker2019-05-081-3/+2
|\ \ \ | |/ / | | | | | | | | | * PHP-7.3: Add {TMP} placeholder for PHPT INI sections
| * | Merge branch 'PHP-7.2' into PHP-7.3Christoph M. Becker2019-05-081-3/+2
| |\ \ | | |/ | | | | | | | | | * PHP-7.2: Add {TMP} placeholder for PHPT INI sections
| | * Add {TMP} placeholder for PHPT INI sectionsChristoph M. Becker2019-05-081-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Several tests use `/tmp` in the `--INI--` section, but this is not portable. We therefore introduce the `{TMP}` placeholder which evaluates to the system's temporary directory using `sys_get_temp_dir()`. We also remove the doubtful `strpos()` optimization.
| | * Trim trailing whitespace in source code filesPeter Kokot2018-10-131-2/+2
| | |
* | | Add minimum required PHP version to run-tests.phpPeter Kokot2019-03-261-0/+2
| | | | | | | | | | | | | | | This integrates a simple minimum PHP version info in the tool and to also define the minimum version that the tool syntax should support.
* | | Don't use parallel testing with -j1Nikita Popov2019-03-251-0/+4
| | |
* | | Drop lightning for concurrent worker countNikita Popov2019-03-251-1/+1
| | | | | | | | | | | | | | | This looked rather awkward even on terminals that have full unicode support.
* | | Make run-tests.php compatible with php 7.0-7.2Tyson Andre2019-03-251-2/+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
* | | Add special "all" conflictNikita Popov2019-02-211-4/+23
| | | | | | | | | | | | | | | | | | | | | | | | If a test conflicts with "all", then no other tests may be run in parallel. This is needed for windows_mb_path tests, which rely on the console codepage, which is shared across all parallel workers. Also add support for comments in the CONFLICTS section/file.
* | | Don't use uniqid for temporary POST data filesNikita Popov2019-02-201-1/+1
| | | | | | | | | | | | | | | uniqid() is not necessarily unique when multiple testing processes run in parallel.
* | | Add a --shuffle mode to run-testsNikita Popov2019-02-201-3/+12
| | | | | | | | | | | | | | | Makes it easier to find paralellization issues. Of course only works if the tests aren't order-dependent...
* | | Use PHP_BINARY by default in run-tests.phpNikita Popov2019-02-201-10/+9
| | | | | | | | | | | | You pretty much always want to run with -P, make it the default.
* | | Implement fine-grained conflict handlingNikita Popov2019-02-201-70/+68
| | | | | | | | | | | | | | | | | | Tests can specify conflict keys, either in --CONFLICTS-- or a per-directory CONFLICTS file. Non-conflicting tests may be run in parallel.
* | | Don't preload tests without --FILE-- sectionDmitry Stogov2019-02-201-1/+1
| | |
* | | Better new-line handlingDmitry Stogov2019-02-191-1/+1
| | |
* | | Make parallel run-tests compatible with IO capture testsNikita Popov2019-02-191-6/+1
| | | | | | | | | | | | | | | | | | Inherit the main stdin/stdout/stderr streams into the worker processes. We don't talk to workers via these pipes, so there shouldn't be a problem doing this.
* | | Better line handlingDmitry Stogov2019-02-191-1/+1
| | |
* | | Filter preloading warning messagesDmitry Stogov2019-02-191-0/+4
| | |
* | | run-tests.php: fix typoAndrea Faulds2019-02-181-1/+1
| | |
* | | run-tests.php: experimental parallel testing supportAndrea Faulds2019-02-181-8/+432
| | |