Commit Graph

62 Commits

Author SHA1 Message Date
Nirbheek Chauhan f5b43eef1b mesontest: Support passing test arguments at runtime
This is especially useful with the glib testing framework where you
can select which tests to run within a single test executable by
pasing `-p /some/test/path`
2017-02-23 11:56:46 +05:30
Nirbheek Chauhan 9fffcef290 mesontest: Fix --repeat with --gdb
It would add --args to `wrap` repeatedly for each re-run, resulting in
gdb erroring out with `--args: No such file or directory.`

Also don't make --gdb and --wrapper mutually exclusive. Sometimes people
want to run under a wrapper *and* run it under gdb.
2017-02-23 11:56:46 +05:30
Nirbheek Chauhan 62c7dcf32d mesontest: Use shlex.split for parsing the wrapper
Allows people to pass arguments with spaces in them. Do this using
argparse itself instead of doing an isinstance later.
2017-02-23 11:56:46 +05:30
Jussi Pakkanen d6614ba811 Merge pull request #1402 from centricular/test-setup-fixes
Various fixes to how mesontest handles test setups.
2017-02-20 14:56:45 -05:00
Jussi Pakkanen 69e51109c2 Run regen before loading test data because it might have changed. 2017-02-19 17:20:14 -05:00
Nirbheek Chauhan 06d615611b mesontest: Use setup timeout multiplier if not specified
The setup's timeout multiplier will always be set, and it will default
to 1.0, so just use that.

Without this, the setup's timeout multiplier was always ignored.
2017-02-19 23:13:32 +05:30
Nirbheek Chauhan 5bf4338913 mesontest: Use test setup name in logfiles
When using a setup, use the setup name as the namebase for the logfile
instead of the wrapper. The wrapper may not be set, or it may be shared
between test setups.

Also don't try to use the wrapper if it's an empty list.

Closes https://github.com/mesonbuild/meson/issues/1371
2017-02-19 23:13:32 +05:30
Nirbheek Chauhan e9f9a42c7a mesontest: Don't run tests if no tests were selected
The output is very confusing otherwise. Before it said
'No suitable tests defined' and then showed a list of tests that
passed/failed.

Now it will just say 'No suitable tests defined' and exit.
2017-02-19 23:13:32 +05:30
Nirbheek Chauhan 07c3d35d4b mesontest: Set MALLOC_PERTURB_ to a random value
This is useful enough that we can enable this for everyone. If people
really don't want this, they can pass MALLOC_PERTURB_=0 in the
environment or in the test.
2017-02-19 11:39:27 -05:00
Jussi Pakkanen 4a08841331 Merge pull request #1335 from tp-m/test-custom-target-used-in-test-cmd
tests: check custom target output is created before being used in a t…
2017-01-28 19:05:54 +02:00
Hemmo Nieminen 85304bd8cf [mesontest] Implement a quiet option.
Implement a quiet option that can be used to hide OK messages for
successful tests to better highlight the failing ones.
2017-01-28 18:27:58 +02:00
Nirbheek Chauhan 2e30912447 vs: Fix running of tests to use mesontest.py
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.
2017-01-28 01:05:21 +05:30
Nirbheek Chauhan 6778d0e2da mesontest: Don't add '.' at the end of some prints
Makes it difficult to copy the filename/datetime by double-clicking
since that includes the '.' at the end.
2017-01-26 21:56:51 +02:00
Nirbheek Chauhan d9a4b367b4 mesontest: Don't overwrite test status on timeout
Earlier it would mark tests as "FAIL" even if it skipped.
2017-01-26 21:56:51 +02:00
Mike Sinkovsky 550761d97b cleanup: @staticmethod 2017-01-18 21:22:47 +02:00
Mike Sinkovsky c9423cc3a8 cleanup: Replace assignment with augmented assignment 2017-01-18 21:22:47 +02:00
Mike Sinkovsky 969be1f679 cleanup: Remove redundant parentheses 2017-01-18 21:22:47 +02:00
Jussi Pakkanen 7a28f387e2 More readable total statistics. 2017-01-15 21:27:32 +02:00
Hemmo Nieminen b90956c2f2 mesontest: Improve test suite selection.
Suite option can now be given to specify in more detail which tests should
be run.
2017-01-12 22:17:12 +02:00
Mike Sinkovsky 5b626ab4cb style: [E1**] Indentation 2017-01-11 12:33:27 -05:00
Hemmo Nieminen ebea1e3bd9 mesontest: Print test stats even if in verbose mode. 2017-01-03 09:51:31 +02:00
Hemmo Nieminen 01be50fdd9 mesontest: Unify testing behaviour between the test target and mesontest.
Also add a test summary to the end of the test output.
2017-01-03 09:51:31 +02:00
Hemmo Nieminen fc17e3b9cc mesontest: Show the test command in truncated test logs. 2017-01-03 09:39:55 +02:00
Hemmo Nieminen bf281fd4c4 mesontest: Remove excess newline and whitespace from test logs. 2017-01-03 09:39:55 +02:00
Jussi Pakkanen b3d51abff2 Can put external programs to test suite exe wrappers directly. 2017-01-02 23:52:50 +02:00
Jussi Pakkanen 74f15263b6 Can set envvars in test setups. 2017-01-02 23:52:50 +02:00
Jussi Pakkanen ee8a6e6fc5 Can specify test setups and run them with mesontest. 2017-01-02 23:52:50 +02:00
Igor Gnatenko 969dc7e995 style: fix E124 violations
E124: closing bracket does not match visual indentation

Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
2017-01-01 12:02:05 -05:00
Igor Gnatenko 116da33cdd style: fix E128 violations
E128: continuation line under-indented for visual indent

Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
2017-01-01 12:02:05 -05:00
Igor Gnatenko ef608f217d style: fix E222 violations
E222: multiple spaces after operator

Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
2017-01-01 12:02:05 -05:00
Igor Gnatenko 2017d8578a style: fix E226 violations
E226: missing whitespace around arithmetic operator

Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
2017-01-01 12:02:05 -05:00
Igor Gnatenko f0b30baa39 style: fix E225 violations
E225: missing whitespace around operator

Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
2017-01-01 12:02:05 -05:00
Jussi Pakkanen b55235dfbd Fix space before :. 2016-12-31 16:28:15 +02:00
Jussi Pakkanen 3fc67f4951 Minimal fixes to make tests pass when cross compiling. 2016-12-20 20:33:59 +02:00
Jussi Pakkanen 2b65083463 Fix cross test and run them if a cross compiler is available. 2016-12-20 20:33:59 +02:00
Jussi Pakkanen f2b3ab826b If/elif fix so running just mesontest actually runs the tests after doing a rebuild. 2016-12-11 14:20:39 +02:00
Jussi Pakkanen 22aedda6d0 Use a big timeout when running gdb interactively and a typo fix. 2016-12-11 14:20:39 +02:00
Patrick Griffis 4c74b47cfd mesontest: Fix exception 2016-12-07 21:54:30 +02:00
Thibault Saunier 10e2b9bca0 mesontest: Rebuild all before running tests
Only supporting ninja backend for now.
2016-12-03 22:41:31 +02:00
Jussi Pakkanen 8be0df1443 Typo fix. 2016-12-03 20:58:29 +02:00
Jussi Pakkanen 57b7a98e02 Merge pull request #1128 from thiblahute/mesontest_misc_fixes
mesontest misc fixes
2016-12-03 20:54:42 +02:00
Jussi Pakkanen c1efaafec4 Stray debug print removal. 2016-12-03 16:19:02 +02:00
Thibault Saunier 16bdc044e4 mesontest: Properly let user know when a test timeout out in verbose mode 2016-12-02 20:04:33 -03:00
Thibault Saunier e2782f7864 tests: Allow user to change timeout time
For example if we know the tests takes more time because, for example
we are tracing it, or running with very high debug log level we might
not want the test to timeout.
2016-12-02 20:04:33 -03:00
Thibault Saunier 56a6f86827 mesontest: Do not timeout when running inside GDB 2016-12-02 20:04:33 -03:00
Thibault Saunier 6203e3ae34 mesontest: Let user work with gdb when not running in a loop
In the normal case the user probably wants to set break point or
anything when running an app in gdb, we should let him a chance to
do so.

In the case he is running in a loop, it probably means he want to
reproduce a crash or a race inside gdb so we should just go and
run in gdb.

We probably miss a few options to give him more control.
2016-12-02 20:04:33 -03:00
Thibault Saunier 3d05b91e37 mesontest: Respect repeat argument even when running testsuites 2016-12-02 20:04:31 -03:00
Thibault Saunier 7afb4c6552 mesontest: Error out even in verbose mode when running repeatidly 2016-12-01 23:38:54 +02:00
Daniel Stone 1cb9d2bc0d Support skipped tests
Knowing whether a test failed to run as its prerequisites were not
available, or whether those prerequisites were available and produced
unexpected/incorrect results, is a useful differentiation.

Add support for skipped tests by testing for exit code 77, used through
autotools/piglit/etc to denote a test which detected this and decided to
skip.
2016-11-29 13:13:29 -05:00
Thibault Saunier 5d866bb4f3 mesontest: Add a 'verbose' mode which does not capture stdout/err
And reuse that mode when running inside gdb instead of reimplementing
running test for that particular use case.
2016-11-23 09:14:09 -03:00