Commit graph

2273 commits

Author SHA1 Message Date
Thibault Saunier
71d2e3f418 validate: Let people know the testsuite starts running
Now that we do not print infos about successful tests when redirecting.
2019-02-01 01:24:33 -03:00
Thibault Saunier
ba9b2c5ec5 validate: Keep trying to print stack traces when our log hanlder is removed
There are cases where a crash happens after the program ends
2019-02-01 00:08:45 -03:00
Thibault Saunier
68573ae919 validate:scenario: Give pipeline position when failling on EOS 2019-01-31 23:47:11 -03:00
Thibault Saunier
35003bc25b validate:launcher: Do not print passing tests if not running in a tty 2019-01-31 23:47:11 -03:00
Thibault Saunier
25e0694d1e validate:scenario: Explicitely mark generated stop() action as such 2019-01-31 22:37:17 -03:00
Thibault Saunier
78781de913 validate:launcher:punittest: Raise an exception if a testsuite can't be loaded 2019-01-30 15:57:13 -03:00
Edward Hervey
d1319a1b6d pad-monitor: Remove unused pad getrange override 2019-01-30 14:30:52 +01:00
Edward Hervey
de59b3ad00 validate: Use g_object_{get|set}_qdata where applicable
This provides a substantial speedup compared to using strings
2019-01-30 14:29:48 +01:00
Mathieu Duponchelle
d5e3f4d31c TestsManager: stop displaying blacklisted tests on stdout
It's basically spam, better suited to the debug logs
2019-01-30 00:27:32 +00:00
Thibault Saunier
440055214a validate:launcher: Never print lines larger than the terminal 2019-01-29 16:09:30 -03:00
Thibault Saunier
7e70bf8729 validate: scenario: Mark action as being executed right before calling ->execute
And make sure that we do not try to execute the following action

In the case the action type leads to the GMainContext to be ieterated
2019-01-29 13:09:36 -03:00
Jordan Petridis
31164cf0a6 validate: Report the full test name in the xunit file
Looks like gitlab prefers this way of representing tests as it
displays only the name field in its junit reports.

Close #32
2019-01-26 16:55:23 +00:00
Thibault Saunier
2551e8750e validate:launcher: Make baseclasses.py pep8 compliant 2019-01-26 15:54:00 +00:00
Thibault Saunier
9b69bcad08 validate:launcher: Handle launching launching a sub launcher
If you use validate-launcher in a meson testsuite, those test now
gets integrated as one unique testsuite (with a pretty long namespace).
2019-01-26 15:54:00 +00:00
Thibault Saunier
6665652cff validate:launcher: Refactor the "main" function
- Move the parser code into a `LauncherConfig.create_parser()` method
- Remove the need to pass libsdir to the _TestsLauncher object
- Extract out a `setup_launcher_from_args` function
2019-01-26 15:54:00 +00:00
Thibault Saunier
1b3867b82d launcher: Move http serveur and xvfb server to the main test runner object
No good reason for it to be in the main function
2019-01-26 15:54:00 +00:00
Thibault Saunier
3f4f815500 launcher: Cleanup the way we find python test command line
By setting it before the test base class adds the current testsuite name in the classname
2019-01-26 15:54:00 +00:00
Thibault Saunier
9cf213dee0 launcher: Fix test listing in meson VS gstcheck tests
You might select tests that match Meson but not gstcheck in which
case the 'meson only' variant is exposed but those should never exist.
2019-01-26 15:54:00 +00:00
Thibault Saunier
a3bab7c66e validate:launcher: Add %(config_path)s in the pipeline desc vars
When defining pipelines_descriptions to run test on in a `.json` file, you might
need to point to paths in the testsuite directory (for media files URIs
for example), you can now do

 `"pipeline": "filesrc location="$(config_path)s/../medias/some/file.mkv...`
2019-01-26 10:11:24 -03:00
Tim-Philipp Müller
2dd8395ee8 Release 1.15.1 2019-01-17 10:01:50 +00:00
Tim-Philipp Müller
ce007a7dcb Fix distcheck
Work around broken disthook check in release.mak so we don't
have to update the common submodules for that (applies only
to this module because the version number is in the top-level
meson.build but the package/dist directory is a subdir). This
only became a problem now because the common submodule hadn't
been updated for the last few years.
2019-01-17 10:00:46 +00:00
Tim-Philipp Müller
3c6769b9f5 win32: update .def file for new API
Fixes distcheck
2019-01-17 09:38:13 +00:00
Thibault Saunier
7befe3d033 validate:launcher: Display unix nickname of signals leading to test failure 2019-01-15 16:55:32 -03:00
Thibault Saunier
5692f8d74d validate:launcher: Fix error message about 'crashed' test 2019-01-15 16:05:41 -03:00
Alicia Boya García
438393293e pre-commit-python: Allow line breaks between binary operators
pre-commit-python overrides the list of ignored Python style errors.
Unfortunately, before this patch the list did not exclude W503 and
W504 (which are otherwise ignored by default).

The consequence of having those two warnings enabled at the same time is
that it's not possible to break lines on binary operators, which is an
unreasonable unintentional restriction:

  'validateflow': "validateflow, expectations-dir=\"" +
                  expectations_dir + "\", actual-results-dir=\"" +
                  actual_results_dir + "\"",

W504 line break after binary operator

  'validateflow': "validateflow, expectations-dir=\""
                  + expectations_dir + "\", actual-results-dir=\""
                  + actual_results_dir + "\"",

W503 line break before binary operator

This patch excludes W503 so that there is a valid style for breaking
lines on binary operators.
2019-01-15 18:57:02 +01:00
Thibault Saunier
92483ae210 validate: Plug newly introduced leak 2019-01-12 15:25:53 -03:00
Thibault Saunier
31c1a7ac63 validate: Use filename instead of full path in dotfiles names 2019-01-12 10:00:42 -03:00
Thibault Saunier
27f1712671 validate:tests: Fix race in validate_padmonitor.buffer_outside_segment
We were using a fakesrc which data flow was potentially breaking the
test.
2019-01-07 00:07:34 +01:00
Thibault Saunier
9d11ade78a validate: Lower a ERROR message to INFO
This behaviour is totally valid when running unit tests
2019-01-07 00:07:34 +01:00
Thibault Saunier
9843562616 validate:tests: s/discount_buffer/discont_buffer/ 2019-01-03 15:27:33 +00:00
Thibault Saunier
26ddc02cef validate:tests: Fix race in validate_padmonitor.buffer_before_segment
We were using a fakesrc which data flow was potentially breaking the
test. Stop using it and remove dead code.

Fixes #34
2019-01-03 15:27:33 +00:00
Guillaume Desmottes
b1f22e7130 validate: fix crash if timeout when media_descriptor is None
Some tests may not have any media_descriptor. If those were failing to
shutdown after EOS we were calling get_protocol() on None.
2018-12-17 10:34:43 +01:00
Alexandru Băluț
9a04ba5000 validate:launcher: Fix error message 2018-12-14 12:00:18 +01:00
Alexandru Băluț
b280850718 validate:launcher: Fix discovery of commands 2018-12-14 11:17:41 +01:00
Matthew Waters
1559e1aec7 gst: allow building static libraries for e.g. Android/iOS 2018-12-10 16:47:50 +11:00
Nirbheek Chauhan
5caa9b23b1 meson: Fix build on {cross-,}win{32,64}
We use visual studio module definitions for the list of symbols to
export when targetting Windows. Fixes CI failure:

../validate/tools/gst-validate.c:460: undefined reference to `gst_validate_spin_on_fault_signals'
2018-12-09 17:55:37 +05:30
Thibault Saunier
b0c0c2d846 validate:launcher: Do not CK_FORK on our test
Otherwise the process can't cleanly quit on assertion because of the way libcheck runner is implemented
2018-12-07 09:06:50 -03:00
Thibault Saunier
72995d5bbe validate: launcher: Add a way to retrieve trace without coredumpctl
Simply spnning on segfaults (like gst-launch) and catch that in
the launcher to transform the timeout into a segfault and grab a gdb
backtrace
2018-12-07 09:06:50 -03:00
Thibault Saunier
21e23c72fc validate:launcher: Do not take CK_DEFAULT_TIMEOUT into account to set the timeout
The timeout is what is set in the meson build definition otherwise we will not behave as 'meson test' which we should avoid
2018-12-06 23:17:29 -03:00
Thibault Saunier
5767d553a6 validate:launcher: Make failure as <failure> in our xunit reporter
I think it was a mistake to call them <error> as the two notions are
different (we marked failed test as "failures" in the <testuite> node).

Should make gitlab happy with our file!
2018-12-06 15:51:43 -03:00
Sebastian Dröge
744b432441 Automatic update of common submodule
From eb6a86e to 59cb678
2018-12-06 11:53:33 +02:00
Thibault Saunier
1c51d3499e validate:launcher: Add a GST_VALIDATE_LAUNCHER_MAIN_DIR env variable
This is generally usefull so we do not have to pass -M every time we launch the launcher

And it adds support for nesting launcher calls always respecting the provided main directory

+ Fix some new pep8 errors
2018-11-30 11:00:10 -03:00
Thibault Saunier
ec9464dd90 validate:launcher: Don't about unexisting tests when filtering tests
It was wrong
2018-11-28 10:19:52 -03:00
Thibault Saunier
b971a7cd23 validate:launcher: Fix setting meson tests as "parallel" 2018-11-28 10:11:00 -03:00
Thibault Saunier
9ab1d3b6fb validate:launcher: Avoid using not yet set variables
And make the file pep8 compliant with latest pep8 checker.
2018-11-26 10:16:12 -03:00
Thibault Saunier
4bb2648154 validate: launcher: Add a way to load pipeline tests from a scenario 2018-11-25 12:01:12 -03:00
Thibault Saunier
a28ce1b0c9 validate: Update default testsuite git repository 2018-11-22 21:06:36 -03:00
Thibault Saunier
79f686efa6 validate: Enhance printing actions with fields
If you have maby field, printed actions where unreadable, clean that
up by adding new lines.
2018-11-17 10:25:28 -03:00
Thibault Saunier
f9790f0eed validate:scenario: Add an action to 'include' another scenario
This is particularly useful for scenario that define constants
that are used to check video frame checksum for example, we can
now have one single 'scenario' file that defines consts for the
checksum of the frames, and those can be reused everywhere.
2018-11-17 09:13:22 -03:00
Thibault Saunier
d4d99267a4 validate:override: Notify override object when they get attached 2018-11-17 09:13:22 -03:00