summaryrefslogtreecommitdiff
path: root/run_project_tests.py
Commit message (Collapse)AuthorAgeFilesLines
* Remove deprecated python3 module.killpy3Jussi Pakkanen2022-04-301-3/+2
|
* python module: windows dll name for pypy needs special casingMatti Picus2022-04-121-1/+2
|
* project tests: log the reason why a test is skippedEli Schwartz2022-04-031-1/+17
| | | | | | | | | | | | We expose a reason after the string 'MESON_SKIP_TEST', but it is actually ignored when running the test, so it is only useful as documentation and really might as well be a comment. Make it even more useful by actually printing that string after the '[SKIPPED]' message. Also, sometimes a test can be skipped for multiple reasons, and it would be useful to know which one occurred.
* project tests: do not use tqdm progress bars for a single testEli Schwartz2022-04-031-9/+11
| | | | | This can happen for example with `--only fpga` as that category has exactly one test.
* move typing-only definition to TYPE_CHECKINGEli Schwartz2022-03-291-14/+15
|
* modules/wayland: Add unstable_wayland moduleMark Bolhuis2022-02-271-1/+9
|
* project tests: fine-tune the check for whether we are in CIEli Schwartz2022-02-171-1/+1
| | | | | | | | | Follow-up on commit 4274e0f42a9673df981dd7a7a456f4d4fcfe5452. We want to allow tests to be skipped freely in third-party environments, so this should check the jobname, not whether $CI exists. We will anyways raise an error when trying to run the project tests, if $CI is set but no jobname is set.
* tests: allow setting MESON_CI_JOBNAME=thirdpartyEli Schwartz2022-02-171-3/+4
| | | | | | | | | | | | | | | | | | This is treated by the test harness as though unset, i.e. we do normal skipping and don't assume we are running in Meson's own project CI. However, it has one distinction which is that it isn't an error to set $CI without setting $MESON_CI_JOBNAME, if it is in fact set but to the ignored value. This lets automated workflows such as Linux distro testing, particularly alpine linux, set $CI or have it set for them by default, without messing things up. Also it has the advantage of $CI actually enabling useful benefits! We will still assume that this thirdparty environment wants to force verbose logging (printing testlogs, running ninja/samu with -v) and colorize the console.
* cmake: ci: Skip tests on Ubuntu Bionic where CMake is stuck on 3.10Daniel Mensinger2022-02-031-1/+1
|
* pyupgrade --py37-plusEli Schwartz2022-01-101-2/+1
|
* Fix mypy errorsDaniel Mensinger2021-12-171-1/+1
|
* Add --vsenv command line option and active VS only when neededXavier Claessens2021-10-101-2/+1
|
* various python neatness cleanupsEli Schwartz2021-10-041-4/+4
| | | | | | | | | | | | | | | | All changes were created by running "pyupgrade --py3-only" and committing the results. Although this has been performed in the past, newer versions of pyupgrade can automatically catch more opportunities, notably list comprehensions can use generators instead, in the following cases: - unpacking into function arguments as function(*generator) - unpacking into assignments of the form x, y = generator - as the argument to some builtin functions such as min/max/sorted Also catch a few creeping cases of new code added using older styles.
* Fix typosChristian Clauss2021-09-301-4/+4
|
* Presence of nagfor signifies that Fortran tests can be run.Mat Cross2021-09-101-0/+1
|
* python: Workaround broken install pathXavier Claessens2021-08-221-3/+2
|
* test runner: add the ability to configure test.json for python pathsEli Schwartz2021-08-181-1/+20
| | | | Adds new installed file types with @VAR@ substitution.
* Revert "Disable Rust + clangcl."Nirbheek Chauhan2021-08-171-8/+0
| | | | This reverts commit 6c55fc5cb0f6f363d5221c9bd0c1fd1fc6f90f4a
* Revert "Disable vs2017 + 32bit Rust combo as it is broken."Nirbheek Chauhan2021-08-181-4/+1
| | | | | | This reverts commit 75688240cfca7eed08c2754daa784c9bd1a70a73 Should've been fixed by c95bffb295dd8ae12dd37c9a6c33372a20cf9a68
* tests: make detecting broken compilers always run without tracebacksEli Schwartz2021-08-151-1/+1
| | | | | | | | | Fixes regression in commit 75688240cfca7eed08c2754daa784c9bd1a70a73. Even though this function is *currently* only invoked on Windows, these environment variables may not actually exist -- and apparently don't in at least the "UnusedMissingReturn / windows" test run, which... did not get triggered by that commit, since it only edited the testsuite runner, not any test cases. \o/
* Disable Rust + clangcl.Jussi Pakkanen2021-08-151-0/+3
|
* Disable vs2017 + 32bit Rust combo as it is broken.Jussi Pakkanen2021-08-151-2/+11
|
* Allow gettext test to skip on macOS.Jussi Pakkanen2021-08-121-0/+3
|
* Remove workaround now that we have a new Ninja.Jussi Pakkanen2021-07-251-7/+0
|
* Make it an error if MESON_CI_JOBNAME isn't set under CIJon Turney2021-07-131-6/+3
| | | | | Also check skip is as expected for CI all runs, not just those that set MESON_CI_JOBNAME.
* Use None as Environment object build_dir in detect_system_compiler()Jon Turney2021-07-071-24/+23
| | | | | | | | | The Environment object constructor accepts None as build_dir (for quite a while now), so don't bother with creating a temporary directory for use as the build_dir, if we're not going to need it. Future work: Environment.__init__() sets scratch_dir to '' if build_dir is None, which seems a little wonky, as it isn't a path.
* Annotate framework tests with where they are expected to skipJon Turney2021-07-071-56/+1
| | | | | | | | Remove hard-coded framework test skip logic in skippable(), instead annotate test.json with environments in which skip is expected. (Mainly this is done with by testing the value of MESON_CI_JOBNAME now set for linux jobs)
* Allow `skip_*` test.json keys at top-level or in `matrix:`Jon Turney2021-07-071-31/+41
|
* Add `skip_on_os` to test.jsonJon Turney2021-07-071-0/+11
|
* Add `skip_on_jobname` to test.jsonJon Turney2021-07-071-4/+55
| | | | | | | | | | | | | | | | | Plan to replace the hard-coded list of 'may be skipped' framework tests in skippable() with annotations in test.json which record 'will be skipped in these specific CI jobs'. If the value of the MESON_CI_JOBNAME env var (an arbitrary string expected to be unique for each CI configuration) contains any of the strings in the `skip_on_jobname` key in test.json, the test is expected to output MESON_SKIP_TEST. Unexpected skips or runs are treated as an error. Future work: Maybe we should add additional count categories 'unexpected skip' and 'unexpected not skipped', rather than counting those as 'skipped' and 'failed', respectively.
* Drop non-framework test names from skippable()Jon Turney2021-07-071-12/+0
| | | | | In all these cases, the test has already been determined as skippable because it's not part of the 'frameworks' suite.
* pyupgradeEli Schwartz2021-07-051-1/+1
|
* fix: Always explicitly set encoding for text files (fixes #8263)Daniel Mensinger2021-06-291-11/+10
|
* pathlib: Patch pathlib to work around some bugs (fixes #7295)Daniel Mensinger2021-06-291-1/+5
|
* Split compiler detection from EnvironmentDaniel Mensinger2021-06-251-4/+5
| | | | | | This moves all the compiler detection logic into the new compilers.detect module. This dramatically reduces the size and complexity of Environment.
* Fix project tests category name used in skippable() and XML outputJon Turney2021-06-221-3/+4
| | | | | | | | | | | | Since 25df6e7d split the iteration over tests to start them from the iteration to collect their results, the variable 'name' is only being set in the first iteratiorn, so all tests are treated as being in the last test category read (probably 'wasm') for skipppable() and in the XML output. Store the category name in the TestDef object Use it in skippable() Use it in classname attribute of XML test results
* tests: Always enable the traceback in run_project_tests.pyDaniel Mensinger2021-06-181-1/+4
|
* tests: Add visual seperator to the test logs in run_project_tests.pyDaniel Mensinger2021-06-181-0/+9
|
* CI: Split out file format test as a separate GitHub workflowJon Turney2021-06-111-48/+0
| | | | | | | Split out checking of file format as a separate GitHub workflow, rather than running it as part of the project tests for every platform and toolchain combination in CI, so that this test is not effected by the changed paths constraints which are applied to the project tests.
* tests: Force colorize CI outputDaniel Mensinger2021-06-091-0/+12
|
* tests: Don't even start running skipped testsDaniel Mensinger2021-06-091-7/+9
|
* tests: Fix global state issueDaniel Mensinger2021-06-091-5/+27
|
* tests: Add option to limit the number of workersDaniel Mensinger2021-06-091-18/+29
| | | | | Also, increase the minimum ammount of workers from 1 to 2 when the core count can not be determined.
* tests: Optional progress bar with tqdmDaniel Mensinger2021-06-091-13/+36
|
* tests: Refactored test runnerDaniel Mensinger2021-06-091-81/+154
|
* tests: Reduce complexity of the run_tests signatureDaniel Mensinger2021-06-091-16/+15
|
* tests: reduce global variablesDaniel Mensinger2021-06-091-26/+24
|
* typing: Fully annotate run_project_tests.pyDaniel Mensinger2021-06-091-95/+134
|
* cython: add 1 basic testDylan Baker2021-06-071-2/+3
|
* Set up VS environment automatically when run.Jussi Pakkanen2021-05-131-2/+3
|