Commit graph

1583 commits

Author SHA1 Message Date
Thibault Saunier
f0cfdf9d14 validate:launcher: Use fakevideosink everywhere it makes sense. 2018-09-07 16:19:40 -03:00
Nirbheek Chauhan
8c06862e80 validate: Export the plugin symbol correctly
Otherwise it doesn't get correctly exported when building with MSVC
2018-09-06 17:29:24 +05:30
Nirbheek Chauhan
a86c36b9a9 meson: Add a feature option for tests
This autodetection is needed on iOS inside Cerbero where
gstreamer-check-1.0 is not available.
2018-09-01 12:09:32 +05:30
Nirbheek Chauhan
d035501228 meson: Maintain macOS ABI through dylib versioning
Requires Meson 0.48, but the feature will be ignored on older versions
so it's safe to add it without bumping the requirement.

Documentation:
https://github.com/mesonbuild/meson/blob/master/docs/markdown/Reference-manual.md#shared_library
2018-08-31 14:52:04 +05:30
Nirbheek Chauhan
68a7ad72ac meson: Build gstvalidate-default-overrides-1.0
Needed by Cerbero.
2018-07-31 23:30:36 +05:30
Alicia Boya García
5ff299f4e7 gst-validate-launcher: Print copypaste-friendlier commands
This patch removes the quotes surrounding the command shown by
gst-validate to reproduce the issues -- which were troublesome when
copying and pasting.

It also introduces escaping for the arguments, so that the command line
can be copied and pasted in the terminal without further changes.

https://bugzilla.gnome.org/show_bug.cgi?id=796897
2018-07-30 16:13:25 -04:00
Nirbheek Chauhan
fa3648d5fe meson: Convert common options to feature options
The rest will be converted later, these are necessary for gst-build to
set options correctly.

https://bugzilla.gnome.org/show_bug.cgi?id=795107
2018-07-27 18:49:13 +05:30
Thibault Saunier
0dbfa44839 validate:scenario: Add an action type to validate last sample checksum 2018-07-21 12:12:16 -04:00
Thibault Saunier
615a372274 validate: launcher: Print some ERROR log when inspecting scenario fails 2018-07-21 11:43:40 -04:00
Thibault Saunier
61a899acf2 validate:scenario: Add a way to define constants to be used in actions
Allowing writing simpler to read scenarios.
2018-07-21 11:43:37 -04:00
Thibault Saunier
64e84407bd validate:scenario: Add a way to set rank on all features of a plugin
You often want to make sure that elements from a particular plugins
are always/never plugged, `set-rank,name=plugin-name,rank=XXX` allows
you to simply do that.
2018-07-14 08:27:05 -04:00
Thibault Saunier
4f009f4098 validate:launcher: Minor output string message 2018-07-12 19:13:21 -04:00
Edward Hervey
e0f683dde9 validate: Use 'skipped' keyword in xunit xml
It was always meant to be 'skipped' to be 100% compatible with xunit
xsl.

Makes jenkins happy again
2018-07-10 13:23:46 +02:00
Thibault Saunier
29ef55c469 validate:launcher: Stop spamming envvars in unit tests command printing.
We used to print the whole environment, making it ugly and hard to
read.
2018-07-08 17:04:25 -04:00
Thibault Saunier
69ec48feef validate:launcher: Allow retrieving coredumps from within flatpak 2018-07-01 12:55:06 -04:00
Edward Hervey
8d58befadd pad-monitor: Reset stream-related variables when deactivating
Any local variable related to the stream should be resetted
when the pad is deactivated

Avoids weird issues when elements are re-used (and pads are deactivated
and reactivated).
2018-06-19 08:04:01 +02:00
Thibault Saunier
acb3a276c8 validate:launcher: Fix the --forever switch
It was not stopping on error.

https://bugzilla.gnome.org/show_bug.cgi?id=796608
2018-06-17 08:45:23 -04:00
Thibault Saunier
e98e5b1c3c validate: Update .def 2018-06-15 17:57:24 -04:00
Thibault Saunier
d80fb50c4b validate:launcher: Add a TestManager to run python tests
Add a stupid simple testsuite made to be configured from the outside
2018-06-15 17:57:24 -04:00
Thibault Saunier
94ee508123 validate: Fix mixup in variable check 2018-06-15 15:01:32 -04:00
Thibault Saunier
125d411063 meson: Rename the gtkdoc option to gtk_doc
This is what other modules use
2018-06-15 12:05:14 -04:00
Thibault Saunier
5fa525b2ff validate: media-check: Avoid spamming the MediaInfo file on stdout 2018-06-15 12:05:14 -04:00
Thibault Saunier
58c90448ca validate: launcher: Add support for running tests with a pushfile source
Introducing the `.media_info.push` media info extension, which is meant
to let the launcher know that those file should run with the "pushfile://"
protocol.

And allow symlinking "normal" `.media_info` to their `.pushfile` variant
so that both can share the exact same content.
2018-06-15 12:05:14 -04:00
Thibault Saunier
b2e71e1404 validate: media-check: Add a way to skip pluggin parsers
This is useful when you want to check only the demuxer output.

- Keep the information in the media file so that we can launch media-check
  with the proper arguments in the launcher. Update it accordingly.
- Refactor compare_streams to simplify it, which in the end leads to
  reporting all the issues instead of exiting on the first one.
2018-06-15 12:05:14 -04:00
Thibault Saunier
ad6fc12b76 validate: media-descriptor: Add a way to specify when a field value is unknown
And this way is to set the attribute to... `unknown`
2018-06-15 12:05:13 -04:00
Thibault Saunier
3f668f3e80 validate: media-check: Also check that segments are correct 2018-06-15 12:05:13 -04:00
Edward Hervey
1a9455d2f6 validate/media-descriptor: Fix indentation 2018-06-05 16:38:10 +02:00
Edward Hervey
9af908195c validate: Add a new issue to detect invalid event seqnum
Events should always have a valid seqnum. Add a new issue which
allows detecting such events. And use that check in the
pad monitor
2018-06-05 16:37:35 +02:00
Edward Hervey
18b0d109f2 validate: Update all gitignore 2018-06-05 16:25:46 +02:00
Alicia Boya García
40dfb7174e gst-validate-launcher: let gdb handle SIGINT itself
Otherwise both gdb and gst-validate-launcher will react to ^C at the
same time, gdb will be killed by SIGHUP (because gst-validate-launcher
quitted in consequence of the ^C) and the terminal state will be left
garbled because readline inside gdb had disabled echo.

https://bugzilla.gnome.org/show_bug.cgi?id=796396
2018-05-25 12:59:41 +02:00
Alicia Boya García
bfa143caa9 gst-validate-launcher: disable timeouts when debugging in gdb interactively
An interactive debugging session can be going for a long time, we don't
want any timeouts in that case.

https://bugzilla.gnome.org/show_bug.cgi?id=796397
2018-05-25 12:59:40 +02:00
Alicia Boya García
2c32ccd7a7 gst-validate-launcher: Stop in --gdb by default, add --gdb-non-stop
This patch modifies the default behavior of --gdb to not run and quit
automatically the test, but rather wait for user input. This is
usually much more convenient to debug all kinds of bugs.

The automatic run behavior has been moved to a new command switch:
--gdb-non-stop

https://bugzilla.gnome.org/show_bug.cgi?id=796389
2018-05-25 12:59:38 +02:00
Thibault Saunier
683b19895e validate: Error out if gst_parse_launch sets an error.
https://bugzilla.gnome.org/show_bug.cgi?id=796240
2018-05-18 11:53:40 -04:00
Thibault Saunier
bb71fd9944 validate:launcher: Error out loudly if the testlist changes
When --fail-on-testlist-change is set.
2018-05-15 14:45:54 -04:00
Thibault Saunier
1055540d55 validate:launcher: Do not print time spent if the testsuite never started 2018-05-15 14:45:52 -04:00
Thibault Saunier
2dc7dd1257 validate: launcher: Make sure testsuites are used/configured once only 2018-05-13 19:10:59 -04:00
Thibault Saunier
ef9ff93405 validate:launcher: Add a way to check if a gst feature is present
And make sure iqa is present to run IQA tests.
2018-05-13 16:35:41 -04:00
Thibault Saunier
b00ab02254 validate:launcher: Cleanup the way we find where -validate tools are 2018-05-13 09:44:17 -04:00
Thibault Saunier
c1f89b4acb validate: launcher: Add a way to simply run SSIM checks on rendered files
We will run a simple pipeline with the IQA element to run ssim (dssim)
tests on the rendered files, comparing it with a reference file.

For now we use the very empiric 1.0 value as a ssim error threshold and
the goal is basically to detect completely broken renderings.
2018-05-13 09:44:17 -04:00
Thibault Saunier
c93f1704f8 validate: Add support for the new testbin protocol 2018-05-13 09:44:17 -04:00
Edward Hervey
58fb4f9354 validate: Remove hls.*seek_with_stop blacklisting
The issue is closed upstream (because of concentrating on decodebin3
instead), and initial forever testing seems to show the issue doesn't
happen anymore
2018-05-07 17:30:13 +02:00
Nirbheek Chauhan
21e7ed5025 meson: Update option names to omit disable_ prefixes
Also yield common options to the outer project (gst-build in our case)
so that they don't have to be set manually.
2018-05-05 20:27:50 +05:30
Thibault Saunier
ba3b27fa83 validate: pipeline: Handle the case where a pad has no monitor
We do not monitor ghost pads, only real pads, so this is a totally
legitimate case.

https://bugzilla.gnome.org/show_bug.cgi?id=792536
2018-04-27 17:33:29 +02:00
Kai Kang
d9256865b4 validate: fix out of source tree build error
It fails to generate gst-validate-enum-types.h and gst-validate-enum-types.c
when build out of source tree. Add the path for template files.

https://bugzilla.gnome.org/show_bug.cgi?id=795531

Signed-off-by: Kai Kang <kai.kang@windriver.com>
2018-04-25 08:54:46 -03:00
Thibault Saunier
77ee198b1b validate:launcher: Add support for specifying a workdir in tests 2018-04-15 20:50:22 -03:00
Thibault Saunier
25e3b90225 validate:launcher: printc is accepting object as arguments
Make sure in all code paths those are converted to strings
2018-04-15 20:07:19 -03:00
Thibault Saunier
8382fddbe9 validate:launcher: Add a method to find tests in a TestManager 2018-04-12 23:30:19 -03:00
Thibault Saunier
55dee0b8a6 validate:launcher: Extract method to set a validate configuration on tests 2018-04-12 23:07:16 -03:00
Thibault Saunier
b9ea967275 validate: Handle having a list of structure based/file path configs 2018-04-12 23:03:04 -03:00
Thibault Saunier
a70658a464 launcher: Print test number in the order they finish
Instead of the test index in the list of tests as it is
meaningless to the user and feels weird.

Also minor fix in the test name display when running with --forever.
2018-03-23 21:04:46 -03:00