summaryrefslogtreecommitdiff
path: root/run_project_tests.py
Commit message (Collapse)AuthorAgeFilesLines
...
* run_project_tests: Clean-up backend detection a bitNirbheek Chauhan2017-04-091-36/+28
| | | | | Set a global variable that has it so other places can use it, and error out on unknown backends
* tests: Factor out common code to run_testsNirbheek Chauhan2017-04-091-24/+13
| | | | | | And use generic build/clean/test/install commands in the unit tests, just like project tests. This sets the groundwork for running the unit tests with all backends.
* Ignore missing .pdb files when not using MSVSJon Turney2017-04-061-0/+3
| | | | This fixes 'test cases/windows/1 basic' on Cygwin
* Don't run framework tests on CygwinJon Turney2017-04-061-1/+1
|
* Run test cases/windows/ tests on CygwinJon Turney2017-04-061-1/+1
| | | | | Also, always run 'test cases/windows/5 resources' on Cygwin since it can handle args containing spaces correctly.
* Use '.exe' extension for executables for CygwinJon Turney2017-04-061-1/+1
| | | | Use '.exe' extension for executables for Cygwin when building and installing
* Use correct shared library naming for CygwinJon Turney2017-04-061-7/+14
| | | | Use correct shared library naming for Cygwin when building and installing
* project tests: Don't look for PDB files on MinGW/GCCNirbheek Chauhan2017-03-281-1/+2
|
* project tests: DummyExecutor for MSYS2 and OpenBSDNirbheek Chauhan2017-03-281-1/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added and tested on MSYS2/MinGW which doesn't implement the required semaphore locks in the multiprocessing module: Traceback (most recent call last): File "C:/msys64/mingw64/lib/python3.5\multiprocessing\synchronize.py", line 29, in <module> from _multiprocessing import SemLock, sem_unlink ImportError: cannot import name 'sem_unlink' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "run_project_tests.py", line 560, in <module> (passing_tests, failing_tests, skipped_tests) = run_tests(all_tests, 'meson-test-run', options.extra_args) File "run_project_tests.py", line 406, in run_tests executor = conc.ProcessPoolExecutor(max_workers=num_workers) File "F:/msys64/mingw64/lib/python3.5\concurrent\futures\process.py", line 390, in __init__ EXTRA_QUEUED_CALLS) File "F:/msys64/mingw64/lib/python3.5\multiprocessing\context.py", line 101, in Queue return Queue(maxsize, ctx=self.get_context()) File "F:/msys64/mingw64/lib/python3.5\multiprocessing\queues.py", line 42, in __init__ self._rlock = ctx.Lock() File "F:/msys64/mingw64/lib/python3.5\multiprocessing\context.py", line 65, in Lock from .synchronize import Lock File "F:/msys64/mingw64/lib/python3.5\multiprocessing\synchronize.py", line 34, in <module> " function, see issue 3770.") ImportError: This platform lacks a functioning sem_open implementation, therefore, the required synchronization primitives needed will not function, see issue 3770. See also: https://bugs.python.org/issue3770 https://github.com/mesonbuild/meson/issues/1323 According to 3770, the same problem also exists on OpenBSD, so this will potentially also be useful there.
* project tests: Print meson log instead of stdout for configure failuresNirbheek Chauhan2017-03-141-17/+33
|
* tests/windows: Tests for #1444Nirbheek Chauhan2017-03-031-0/+3
| | | | Check that pdb files are installed
* vs: Fix running of tests to use mesontest.pyNirbheek Chauhan2017-01-281-9/+39
| | | | | | | | Back in November when this broke, we didn't notice because our tests are run in-process, so we don't check that `msbuild RUN_TESTS.vcxproj` and `ninja test` actually work. Now we do.
* No longer require a binary called python3 on Windows. The default name is ↵Jussi Pakkanen2017-01-231-0/+2
| | | | "python".
* cleanup: Remove redundant parenthesesMike Sinkovsky2017-01-181-5/+5
|
* style: [E251] unexpected spaces around keyword / parameter equalsMike Sinkovsky2017-01-111-1/+1
|
* style: [E301] expected 1 blank line, found 0Mike Sinkovsky2017-01-111-0/+2
|
* We only need Ninja 1.5.x for the core codeNirbheek Chauhan2017-01-091-1/+2
| | | | | | | This change helps us run on older distros such as Ubuntu LTS which is very lazy in updating even non-core and stable packages such as Ninja. Ninja 1.6.x is only needed for running the tests.
* Project tests: Also catch ValueErrorNirbheek Chauhan2017-01-041-0/+5
| | | | | | | | | | | | | | | | | | It seems on Windows, deleting in a loop can cause a race where the following error is raised: Traceback (most recent call last): File "run_project_tests.py", line 550, in <module> (passing_tests, failing_tests, skipped_tests) = run_tests(all_tests, 'meson-test-run', options.extra_args) File "run_project_tests.py", line 416, in run_tests result = result.result() File "C:\python34-x64\lib\concurrent\futures\_base.py", line 402, in result return self.__get_result() File "C:\python34-x64\lib\concurrent\futures\_base.py", line 354, in __get_result raise self._exception ValueError: I/O operation on closed file. https://ci.appveyor.com/project/jpakkane/meson/build/1.0.1559/job/vsek754eu000kg3e
* project tests: Always print the logs of failing testsNirbheek Chauhan2017-01-021-1/+1
| | | | | | | | There is never any reason to not do this since this script is supposed to be run by developers and testers who are concerned with the details of the problems. It also helps with intermittent or hard-to-reproduce errors.
* Catch permissionerrors too, since Windows seems to produce them occasionally.Jussi Pakkanen2017-01-021-2/+3
|
* style: fix E128 violationsIgor Gnatenko2017-01-011-1/+1
| | | | | | E128: continuation line under-indented for visual indent Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
* style: fix E265 violationsIgor Gnatenko2017-01-011-1/+1
| | | | | | E265: block comment should start with '# ' Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
* style: fix E226 violationsIgor Gnatenko2017-01-011-2/+2
| | | | | | E226: missing whitespace around arithmetic operator Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
* Fix space before :.Jussi Pakkanen2016-12-311-7/+7
|
* Force a Ninja regeneration before each project testNirbheek Chauhan2016-12-231-0/+5
| | | | | | | | We have no test coverage for regeneration at all, which is why issues like #1246 slide by without us noticing. With this, we will run a regen on every test during `ninja test` after it has been compiled. This will not affect test times too much since the regen will not rebuild anything at all since there have been no source changes.
* Merge pull request #1233 from mesonbuild/wip/ignatenko/code-styleJussi Pakkanen2016-12-211-2/+1
|\ | | | | Trivial cleanups in code
| * tree-wide: remove blank lines at EOFIgor Gnatenko2016-12-191-1/+0
| | | | | | | | Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
| * run_project_test: don't import sys twiceIgor Gnatenko2016-12-191-1/+1
| | | | | | | | Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
* | Make cross tests use same framework as regular tests.Jussi Pakkanen2016-12-201-10/+12
| |
* | run_project_tests.py: Also do ninja clean on testsNirbheek Chauhan2016-12-191-31/+30
|/ | | | This will catch things like #1220
* Pass --no-rebuild arg when running inprocess to prevent Ninja vomit.Jussi Pakkanen2016-12-041-2/+2
|
* Guard against cpu_count failing.Jussi Pakkanen2016-12-021-1/+8
|
* All testing is now in mesontest.py, which simplifies a lot of stuff.Jussi Pakkanen2016-11-181-3/+3
|
* Merge pull request #995 from centricular/more-appveyor-buildsJussi Pakkanen2016-11-091-9/+46
|\ | | | | appveyor.yml: Test more than just MSVC2010 + Ninja on x86
| * project tests: Fix appveyor overwriting the platform env variableNirbheek Chauhan2016-11-101-0/+15
| | | | | | | | | | | | There is no way to do this in the .appveyor.yml file since it seems that the appveyor environment is forcibly written after each cmd command that is run.
| * project tests: Skip lang-specific tests based on backendNirbheek Chauhan2016-11-101-9/+31
| | | | | | | | | | XCode and Visual Studio are likely never going to support these languages, so don't fail if the compiler happens to be in the PATH.
* | Allow tests to mark themselves as skipped during runtime.Jussi Pakkanen2016-11-091-1/+1
|/
* project tests: Require both javac and java for Java testsNirbheek Chauhan2016-11-091-1/+1
|
* run_tests.py: Add support for tests that fail at build-time or test-timeNirbheek Chauhan2016-10-141-6/+19
|
* Run unittests.Jussi Pakkanen2016-10-081-0/+499