Alicia Boya García
af205f63b7
gst-validate-scenario: Fix (another) race condition in EOS handling
...
Since gst_validate_action_set_done() is asynchronous, the bus EOS
handler may already be running before the action is actually finished.
This patch ensures that is not a problem.
2019-02-22 00:02:08 +01:00
Charlie Turner
a443b921a2
validateflow: interpolate folder directories into pipeline descriptions.
...
Allow 'pipeline' fields in validateflow to be interpolated with
directory keys like $(medias)s.
2019-02-21 13:57:17 +00:00
Guillaume Desmottes
b20f73099f
validate: allow config to check for minimum buffer frequency on pads
...
This change allow tests to check performance of elements by checking the
frequency at which buffers are pushed on src pads.
I re-used most of the logic from fpsdisplaysink to compute the
frequency.
We can now uses something like:
GST_VALIDATE_CONFIG='core,min-buffer-frequency=60,target-element-factory-name=v4l2src'
The 'buffer-frequency-start' optional field can be used to ignore the
frequency during the start of the pipeline. This is useful when testing live
pipelines where configuring and setting up elements can take some time slowing
down the first buffers.
2019-02-20 12:12:46 +01:00
Guillaume Desmottes
40f263e857
validate: factor out gst_validate_element_matches_target()
2019-02-20 12:12:46 +01:00
Charlie Turner
4602ee61c4
validateflow: Fix double-free on stdout
2019-02-18 11:05:26 +00:00
Thibault Saunier
34b5192b94
validate: report: Fix the way we print 'repeat' values
2019-02-15 14:19:03 +00:00
Thibault Saunier
53b2ca8f62
validate: Force LC_NUMERIC to C as it is required by our expression parser
...
And... add some expression parser unit tests
2019-02-15 14:19:03 +00:00
Thibault Saunier
394242c224
validate:scenario: Enhance variable implementation
...
- Stop arbitrarily consider params as ClockTime based on their names
but add a convetion that the `.type` field of the ActionType should
end by `(GstClockTime)` when it is a clock time.
2019-02-15 14:19:03 +00:00
Thibault Saunier
b7616e5fab
validate:scenario: Make gst_validate_action_new public
...
Mainly so it can be used in unit tests.
2019-02-15 14:19:03 +00:00
Thibault Saunier
be854d4be8
validate:scenario: Allow using set-vars from numeric expressions
...
And require them to follow the `$varname` (can't be $(varname) as
parenthesis have another meaning in those expressions).
Still accept "duration" and "position" as varname for backward compat
but update our scenarios anyway.
2019-02-15 14:19:03 +00:00
Thibault Saunier
28e041b2cb
validate: scenario: Parse playback times as we execute the scenario
...
This way we will be able to use 'set-vars' for it
2019-02-15 14:19:03 +00:00
Thibault Saunier
d24477d9e4
validate:scenario: Enforce a synthax $(varname) to reference variables
...
This way it is clear that you are using a variable reading the scenario
and we can verify that what the scenario writer intents is to use an
already set variable.
2019-02-15 14:19:03 +00:00
Guillaume Desmottes
3ebc26e265
validate: don't override max-latency if config contains multiple structs
...
gst_validate_utils_get_clocktime() is resetting the value if it's not
present in the struct so we were overriding it on the next iterations.
2019-02-12 02:21:14 +00:00
Guillaume Desmottes
da22878a5f
validate: baseclasses: include env variable in logged command
...
We were missing the env variables in the command written to the log
file, making it impossible to re-run the test later from the logs.
2019-02-11 15:17:33 +00:00
Alicia Boya García
1d4801d679
gst-validate-scenario: Add GST_VALIDATE_SCENARIO_EOS_HANDLING_LOCK
...
There was a race in appsrc-push when the pushed buffer caused an EOS.
The EOS event could be handled by the main thread, finishing the test
while the action, executing in the streaming thread, has not finished
yet.
A mutex is now introduced to add mutual exclusion for the two threads so
that an EOS does not cause the termination of the test while the action
is still going.
2019-02-11 14:15:30 +00:00
Thibault Saunier
5a2e2d5001
validateflow: Print some indication that the flow checking is happening
2019-02-11 08:34:36 -03:00
Edward Hervey
4467c9925d
validate: Add autotools support for flow plugin
2019-02-11 11:09:46 +01:00
Thibault Saunier
3d3264b342
Revert "validate:launcher: Cache the result of meson introspect"
...
This reverts commit 05ce6d3b92
.
We can't do that as it breaks meson logic to set envvars
2019-02-10 01:25:52 -03:00
Thibault Saunier
5a6307f913
validate:launcher: Do not sort tests all the time
...
Do it once only once it is fully populated
2019-02-09 17:25:03 -03:00
Thibault Saunier
05ce6d3b92
validate:launcher: Cache the result of meson introspect
...
Running it takes quite some time and we can easily cache it.
2019-02-09 17:24:13 -03:00
Thibault Saunier
a88156a416
validate:launcher: Add a simple way to profile app
2019-02-09 17:23:28 -03:00
Guillaume Desmottes
0e03b38cc2
validate: scenario: not need to use an atomic to handle dropped count
...
It's all handled from the same thread.
2019-02-08 14:39:22 +01:00
Guillaume Desmottes
78a8306955
validate: scenario: fix dropped checking when terminating scenario
...
We want to early return if either no max value has been set for the
scenario or if we didn't receive any QoS information.
2019-02-08 14:25:52 +01:00
Guillaume Desmottes
916bf5cdf1
validate: properly namespace config related checks
2019-02-08 13:32:12 +01:00
Alicia Boya García
e96f2ca714
New validate plugin: validateflow
...
validateflow can be used to check the buffers and events flowing through
a custom pipeline match an expectation file. This can be used to test
non-regular-playback use cases like demuxers handling adaptive streaming
fragment pushing.
This patch includes also new actions used for these cases:
`appsrc-push`, `appsrc-eos` and `flush` (plus `checkpoint`, which is
only available with validateflow).
2019-02-07 18:19:22 +00:00
Guillaume Desmottes
0c83ff56dd
baseclass: add_validate_config: don't use self.proc_env
...
self.proc_env is created when starting the test but this API can be call
by generator when creating the test.
2019-02-07 17:13:02 +01:00
Guillaume Desmottes
921a073bdf
validate: allow scenarios to define a max nb of dropped buffers
...
The 'max-dropped' description field can now be used to specify the max
number of buffers than can be dropped by the QoS system.
2019-02-07 14:12:59 +00:00
Thibault Saunier
e8162cc957
validate:launcher: Error out in the check testsuite if rebuilding failed
2019-02-06 21:14:13 +00:00
Guillaume Desmottes
2d8ef6e81c
validate: allow scenarios to define max pipeline latency
...
The 'max-latency' description field can now be used to specify the max
latency allowed for the running pipeline.
2019-02-06 16:07:02 +01:00
Mathieu Duponchelle
90c2d32030
Scenarios: override seek flags for RTSP tests
...
Our RTSP server is not accurate, it makes no sense to perform
accuracy checks on the client-side segments.
2019-02-02 02:08:58 +01:00
Thibault Saunier
49102316df
validate:scenario: Set variables on all action fields
2019-02-01 23:46:21 +00:00
Thibault Saunier
e50d41420e
validate: Handle G_LOG_ERROR in our glog handler
2019-02-01 23:46:21 +00:00
Thibault Saunier
2f957ab932
validate:scenario: Rename action 'define-consts' to 'set-vars'
...
Those are not consts are they can be modified at runtime
2019-02-01 23:46:21 +00:00
Thibault Saunier
d0ee26e950
validate: Cleanup flags/enum_from_string
2019-02-01 23:46:21 +00:00
Mathieu Duponchelle
f9190236af
scenario: prioritize SCENARIOS_PATH when including
2019-02-01 23:08:16 +01:00
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
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
Alicia Boya García
2c1d8433bd
validate: fix bug monitor subscriptions on pads by name
...
gst_validate_override_register_by_name() was not working when using a
pad name because by the time gst_validate_pad_monitor_do_setup()
was called to set the name of the monitor it was too late for overrides
to have any effect.
Patch written by Thibault.
2018-11-14 17:10:28 +01:00
Matthew Waters
b6b3815dad
Update git locations to gitlab
2018-11-05 05:54:43 +00:00
Thibault Saunier
288258c366
validate: Allow connecting reporters by name for overrides
...
Using the element that owns the pad on which we are connecting
was not making sense.
2018-10-28 14:54:47 +00:00
Wonchul Lee
955fc5fcce
validate: Update for g_type_class_add_private() deprecation in recent GLib
...
https://gitlab.gnome.org/GNOME/glib/merge_requests/7
2018-09-20 15:16:16 -03:00
Thibault Saunier
6457690e1c
Update for g_type_class_add_private() deprecation in recent GLib
2018-09-08 19:24:41 -03:00
Thibault Saunier
64afff0c3e
launcher:scenario: Fix the way we compute scenario path/name when paths supplied
...
We were just iterating over the list without any check and could end
up with a patch that was not corresponding to the actual scenario.
2018-09-08 11:13:19 -03:00
Thibault Saunier
1623f7111c
validate:launcher: Just wait for a while before considering Xvfb is ready if xset is not present
...
This is what xvfb-run so let's consider it good enough
2018-09-07 16:19:50 -03:00
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
Thibault Saunier
cd1c4eb44d
launcher: Minor indentation issue fixes
2018-03-23 18:12:16 -03:00
Thibault Saunier
2b40c6c306
launcher: Clean up outpout
...
Make our stdout output simpler to follow by:
- Not printing the tests we launch (it is not really useful in the end)
- Using `\r` when printing the passed tests
- Not reprinting all the test in a now useless summary
2018-03-23 18:12:16 -03:00
Thibault Saunier
3f66772fa1
check: Use meson introspect to list meson tests
2018-03-20 08:51:04 -03:00
Tim-Philipp Müller
dede83a542
Back to development
2018-03-20 10:57:53 +00:00
Tim-Philipp Müller
207c447a40
Release 1.14.0
2018-03-19 20:29:08 +00:00
Tim-Philipp Müller
8e82a9dd43
Release 1.13.91
2018-03-13 19:30:44 +00:00
Tim-Philipp Müller
34d56abedd
validate: GST_EXPORT -> GST_VALIDATE_API
...
We need different export decorators for the different libs.
For now no actual change though, just rename before the release,
and add prelude headers to define the new decorator to GST_EXPORT.
2018-03-13 14:00:01 +00:00
Tim-Philipp Müller
da907da8e4
Release 1.13.90
2018-03-03 22:54:59 +00:00
Tim-Philipp Müller
9fdfb2d7b7
validate: tools: fix build dependencies for validate-rtsp-server
...
In file included from ../subprojects/gst-devtools/validate/tools/gst-validate-rtsp-server.c:21:0:
.../gst/gst.h:31:10: fatal error: gst/gstenumtypes.h: No such file or directory
2018-02-19 12:02:04 +00:00
Sebastian Dröge
0b9218f23f
validategtk: Stop using deprecated keymap API
...
gstvalidategtk.c:184:7: error: ‘gdk_keymap_get_default’ is deprecated: Use 'gdk_keymap_get_for_display' instead [-Werror=deprecated-declarations]
gdk_keymap_get_entries_for_keyval (gdk_keymap_get_default (),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2018-02-18 12:21:34 +02:00
Tim-Philipp Müller
32d146b7de
Fix versions
2018-02-15 21:04:21 +00:00
Tim-Philipp Müller
41abaf99a9
Back to development
2018-02-15 19:44:37 +00:00
Tim-Philipp Müller
dab15df5eb
Release 1.13.1
2018-02-15 18:28:13 +00:00
Tim-Philipp Müller
4906612269
validate: dist enum types templates
2018-02-15 18:28:13 +00:00
Edward Hervey
55274bc89f
validate-pad-monitor: Use GST_SEQNUM_INVALID
...
Instead of 0 (which is valid)
2018-02-10 14:20:44 +01:00
Wonchul Lee
0235ad6d03
tools: gst-validate-images-check: Fix typo
...
https://bugzilla.gnome.org/show_bug.cgi?id=792035
2018-01-31 17:40:56 +00:00
Edward Hervey
d71d28523d
validate/baseclasses: Release un-needed data when test ends
...
This was keeping around 500-700kB of data for each test, which was
gradually raising memory usage of a full run by 100MB+
The reports are definitely not needed, and we only need to keep
information from the subprocess env variable that we might need
later on for final reporting
2017-12-18 10:51:05 +01:00
Edward Hervey
cb04515cbd
validate/baseclasses: Don't leak several hundred MB of XML
...
The xml-based MediaDescriptor were keeping open the XML file and the
associated ElementTree structures, resulting in memory usage of several
hundred megabytes.
Instead cache the information we need immediately and release the
XML structure
2017-12-18 09:48:21 +01:00
Nicolas Dufresne
aa8e27f2a3
meson: Add missing force_rtsp2 scenario
...
Without this file, gst-validate installed using meson will fail all
RTSP2 tests
2017-12-17 16:22:51 -05:00
Edward Hervey
01a54641f9
validate: Remove protocol-specific timeouts
...
Since we now check position/status of pipeline at regular intevals,
we no longer need to impose a different timeout based on the
protocol used.
Avoids having 4min long timeouts for no reason (30s is enough)
2017-12-03 12:23:51 +01:00
Edward Hervey
92285ef261
validate: Use a single TCPServer for subprocess communication
...
Instead of creating a separate TCPServer for each test, just create
one which handles all connections in a threaded fashion.
Shaves off ~500ms per test
https://bugzilla.gnome.org/show_bug.cgi?id=791159
2017-12-03 12:23:29 +01:00
Edward Hervey
58e62f651c
validate-launcher: Allow running tests out-of-order
...
When the --shuffle option is used, the tests will be run out of order.
This optimizes CPU utilization since it allows running synchronized
and unsynchronized tests at the same.
2017-12-03 11:42:18 +01:00
Edward Hervey
1a95559045
validate: Reduce time waiting for subprocess to stop
...
stopping the subprocess is done from the main thread, this would
throttle starting/stopping any tests by one second.
Start with 50ms, and gradually increase the wait between iterations
2017-12-03 11:38:08 +01:00
Edward Hervey
65e2c1567a
gstvalidate: Lower timeout to check for rtsp-server to be up
...
Check every 100ms, avoids throttling all rtsp tests by 500ms
2017-12-03 11:38:08 +01:00
Thibault Saunier
f16b900643
validate:launcher: Launch tests in _TestsLauncher
not in TestsManagaer
...
So that Test from several TestManager can run in parallel and thus avoid
waiting for tests from one TestManager to run the following one.,
Also by design TestsLauncher should always have been the responsible for
... launching tests.
2017-12-02 09:42:19 -03:00
Edward Hervey
9acfa7fe4b
validate: Don't leak strings
...
We only use them in the error/debug case anyway
2017-11-25 13:10:41 +01:00
Edward Hervey
c33b2e240c
validate-report: Plug leaks
...
The trace was never freed, nor were the output of g_str_split
2017-11-25 12:46:05 +01:00
Edward Hervey
b5bb7d7016
validate-scenario: Don't assume element have factories
...
Some elements might not originate from factories (like custom/internal
elements).
Avoids dereferencing a NULL pointer
2017-11-23 12:27:11 +01:00
Edward Hervey
ff6055b195
validate-scenario: Handle non-relative switch
...
Make sure we stay within the number of present streams (and avoid
out-of-bound read).
CID #1415470
2017-11-22 16:37:44 +01:00
Edward Hervey
81c3ab0b12
validate-scenario: Handle switching stream of type not present
...
Unlikely to happen, but at least don't end up doing unsafe calculation
with n == 0 afterwards
CID #1415453
2017-11-22 16:37:44 +01:00
Nirbheek Chauhan
aa7f753f8a
meson: Always require the latest gst-rtsp-server
...
In the worst case, when building with gst-uninstalled, we will try to
link against an older gst-rtsp-server provided by the system. Found by
philn.
2017-11-12 20:09:53 +05:30
Edward Hervey
9658e12086
validate: Call g-ir-scanner with the same toolchain as the rest
2017-11-08 17:22:47 +01:00
Edward Hervey
2eb3df74b5
validate-analyze: Update for xml format changes
2017-10-27 10:00:07 +02:00
Thibault Saunier
4fac7bf9fd
validate: launcher: Run rtsp tests against both V1 and V2
...
https://bugzilla.gnome.org/show_bug.cgi?id=781446
2017-09-22 16:31:56 -03:00
Thibault Saunier
e9862b9fda
validate:launcher: Allow disabling using the number of failed tests as exitcode
...
This is usefull on CI servers where the test results will be inspected
and the status of the build built from it.
2017-09-06 16:38:39 -03:00
Jimmy Ohn
bd0e8e410e
validate: launcher: Modify the order of the parser argument
...
Modify the order of the parser argument before setting dir_group
https://bugzilla.gnome.org/show_bug.cgi?id=786715
2017-08-28 17:01:39 -03:00
Thibault Saunier
4dc95f0fc2
launcher: Automatically disable output coloration if not supported
2017-08-26 10:52:25 -03:00
Thibault Saunier
598128fc0c
meson: Fix the way we set the testsuite version
2017-08-26 09:28:51 -03:00
Thibault Saunier
2c6c25d4bf
validate:launcher: Use the number of failed test as exit code
...
We used to always return 0, which was not right!
2017-08-18 11:37:28 -03:00
Thibault Saunier
cb99482b9a
launcher: Avoid exceptions when inspecting renders files
...
We were a bit to strict on the Exception types which lead to
the launcher failling itself when it shouldn't
2017-08-14 16:57:50 -03:00
Tim-Philipp Müller
8b91fef492
validate: hide some private symbols
2017-08-12 12:04:42 +01:00
Thibault Saunier
8393a3d5ca
validate: Plug a potential leak when retrieving peer pad
2017-08-10 21:44:14 -04:00
Thibault Saunier
7be8ecd628
validate: Fix going over ghostpads/proxypads
2017-08-10 19:29:07 -04:00
Tim-Philipp Müller
6b661f394f
meson: fix a few meson warnings
...
WARNING: The variable(s) 'DATADIR', 'LIBDIR' in the input file
'subprojects/gst-devtools/validate/launcher/config.py.in' are not
present in the given configuration data
WARNING: Passed invalid keyword argument "scanobj_args". This will
become a hard error in the future.
WARNING: Keyword argument "install" defined multiple times. This
will be a an error in future Meson releases.
2017-08-10 14:35:09 +01:00
Thibault Saunier
7a83d2aed7
validate:win32: Update .def file.
2017-08-07 16:00:53 -04:00
Thibault Saunier
74a560163a
validate: Mark symbols explicitly for export with GST_EXPORT
...
With an exception:
* gst_validate_monitor_setup
which was never declared in headers and should always have been static.
2017-08-07 15:56:21 -04:00
Thibault Saunier
823c9ca834
validate: Fix building the tracer
...
It fails on some platforms, I guess this is the reason
2017-07-26 17:25:25 -04:00
Thibault Saunier
8ef1050d1e
validate: Also mkenums with autotools
...
And fix the build with stricter gcc arguments.
2017-07-26 16:18:02 -04:00
Thibault Saunier
b9d6f9df9e
validate: Add a way to print information about pipeline status
...
Similare to what is done with gst-launch.
And finally generate GTypes for our flags and enums.
2017-07-26 15:45:37 -04:00
Edward Hervey
40eb48d21f
validate-scenario: Fix NULL pointer usage
...
for good this time ...
CID #1415570
2017-07-26 15:22:49 +02:00
Edward Hervey
1b48ffdff5
validate-report: Fix a leak in error cases
...
CID #1415494
2017-07-26 15:18:57 +02:00
Edward Hervey
9ae20ee3e0
validate: Re-enable mxf op2b tests
...
https://bugzilla.gnome.org/show_bug.cgi?id=785119
2017-07-25 09:55:02 +02:00
Thibault Saunier
be95f623b7
wind32: Update .def file.
2017-07-21 10:30:37 -04:00
Edward Hervey
6ad8bd3e7c
validate-scenario: Protect against priv NULL usage
...
CID #1415570
2017-07-20 14:21:59 +02:00
Thibault Saunier
2fb3545aa7
validate: Do not install now removed setup_sink_props_max_lateness.scenario file
2017-07-19 12:16:53 -04:00
Thibault Saunier
8ab723b153
validate:launcher:check: Make sure to register tests from the testsuite
...
Instead of having them listed from the app manager. This is needed
to avoid backtrace as tests now have to be register when setting up
the testsuite.
2017-07-19 11:49:54 -04:00
Thibault Saunier
1a28e7b043
validate: Factor out a method to set properties on elements in utils
...
Make sure to use it where appropriate and add some logging when
setting an object property from an action.
And use the valgrind.conf to set all the properties instead of having
a mixture of a config scenario and the config file (making sure the
max-lateness is set on any sink)
2017-07-19 11:34:19 -04:00
Thibault Saunier
1d568ff11f
validate:scenario: Allow not config action to be executed from config files
...
When those are special cased to support that, such as the `set-property`
action.
This special handling was added in
4927c65710
validate: disable QOS features when running with valgrind
before we started to support executing arbitrary config action from
configuration files.
2017-07-19 11:34:12 -04:00
Thibault Saunier
b3134e89d9
validate: scenario: Fix running config action from the config file
2017-07-19 10:23:34 -04:00
Edward Hervey
1cfe980044
validate: Blacklist op2b mxf files
...
See https://bugzilla.gnome.org/show_bug.cgi?id=785119
2017-07-19 15:47:28 +02:00
Edward Hervey
8b9b6ead3f
validate: Cast GList data content before usage
...
Apart from code readability, it allows compilers to detect wrong usages,
such as the call to gst_validate_action_new() which was using the wrong
argument
2017-07-19 11:02:44 +02:00
Thibault Saunier
2177d8589c
validate:launcher: Error out if no testsuite could be loaded
2017-07-18 12:09:13 -04:00
Thibault Saunier
2cf93f491b
validate: launcher: Namespace test name with the testsuite name
...
Also allowing users to pass test names directly
2017-07-18 10:54:53 -04:00
Thibault Saunier
f9ef2bc56a
validate: launcher: Properly use TestsLauncher.list_test to load tests
...
Otherwise we might skip check_defined_tests.
2017-07-18 10:54:21 -04:00
Thibault Saunier
f7252cbd48
validate: Remove some dead code
...
CID 1415457
2017-07-18 10:47:00 -04:00
Thibault Saunier
e70557dc3e
validate: Plug a minor string leak
...
CID 1415459
2017-07-18 10:45:29 -04:00
Thibault Saunier
9ee7b4483c
validate: Don't create scenario on a monitor which has no target
...
Not very probable but avoids a potential NULL pointer dereferencing.
CID 1415460
2017-07-18 10:42:00 -04:00
Thibault Saunier
6572af916b
validate: Always only use the first description in scenarios
...
Also pluging a leak of the descrption copied structure
CID 1415463
2017-07-18 10:38:24 -04:00
Thibault Saunier
7463819969
validate: ssim: Do not compare unsigned to < 0
...
CID 1415473
2017-07-18 10:27:49 -04:00
Thibault Saunier
c7483a90f0
validate: Plug a string leak
...
CID 1415475
2017-07-18 10:23:31 -04:00
Thibault Saunier
566adba269
validate:ssim: Let user know when no file have been compared
...
Fixing a possible division by zero issue.
CID 1415482
2017-07-18 10:19:23 -04:00
Thibault Saunier
28f8787c17
validate: Add missing break statement
...
CID 1415485
2017-07-18 10:16:07 -04:00
Thibault Saunier
7eb9746adc
Check g_file_set_contents() return value
...
CID 1415486
2017-07-18 10:14:59 -04:00
Thibault Saunier
44260d70bd
validate: Plug leak of copy of a va_list
...
CID 1415490
2017-07-18 10:12:07 -04:00
Thibault Saunier
11ef28f3dc
validate: Do not check NULL pointer uselessly
...
CID 141593
2017-07-18 10:10:06 -04:00
Thibault Saunier
fc49d18425
validate: Plug minor leak in issue creation error path
...
CID 1415494
2017-07-18 10:10:06 -04:00
Thibault Saunier
54e35bb082
validate: Remove some dead code
...
Next will never be NULL as `done` is always set to TRUE when next is
set.
CID 1415503
2017-07-18 10:00:03 -04:00
Thibault Saunier
5c537bd627
validate: monitor: Add missing break; statement
...
Fixes CID 1415500
2017-07-18 09:59:42 -04:00
Edward Hervey
4f1242968e
validate-scenario: Fix wrong return value
...
We were always returning ok ...
CID #1415484
2017-07-18 15:50:35 +02:00
Edward Hervey
3904f2523b
validate-scenario: Check g_file_set_contents() return value
...
CID #1415487
2017-07-18 15:48:01 +02:00
Edward Hervey
e6073a411c
validate-scenario: Fix copy/paste error
...
CID #1415502
2017-07-18 15:45:13 +02:00
Edward Hervey
e5903f1d05
validate-scenario: Fix string usage
...
Use the string representation of the index if it *IS* present (and
not the opposite).
CID #1415506
2017-07-18 15:43:26 +02:00
Edward Hervey
5b54127c5a
validate-utils: Add NULL check
...
Unlikely to be triggered. And fix typo at the same time
CID #1415464
2017-07-18 15:38:04 +02:00
Sebastian Dröge
c8cd695bb9
validate: Un-blacklist scrub_forward_seeking.op2b-mpeg2-wave_hd_mxf
...
It works now after various mxfdemux changes.
https://bugzilla.gnome.org/show_bug.cgi?id=764025
2017-07-14 10:37:31 +03:00
Edward Hervey
ee72ae8913
gstvalidate: Re-allow tests that should be fixed
2017-07-13 08:46:05 +02:00
Edward Hervey
58d1d1a0c8
check: Remove dead assignments
2017-07-12 14:46:36 +02:00
Thibault Saunier
40a08e6080
validate: launcher: Add some missing env variables in command to launch test
2017-07-11 10:11:49 -04:00
Thibault Saunier
edd789cfb7
validate: Recalculate latency on LATENCY messages
2017-06-30 12:32:56 -04:00
Thibault Saunier
c1f613d8e7
validate:scenario: Allow setting properties by element factory name
2017-06-30 12:30:40 -04:00
Thibault Saunier
f2fc6a4550
validate:scenario: Enhance the set_property action to handle enum props
...
User needs to specify the enum value as a string, to be used
as with gst_util_set_object_arg.
Also enhance reporting and verify that the set value has actually
been taken into account.
2017-06-30 09:46:57 -04:00
Thibault Saunier
dbc598b378
validate: Use Gst printing utils in our reporting system
...
Allowing us to use GST_PTR_FORMAT and friends!
2017-06-30 09:45:02 -04:00
Thibault Saunier
c540601ed0
validate:launcher: Do not check ModuleNotFound exception
...
It is a subclass of ImportError and is avalaible only since 3.6
https://ci.gstreamer.net/job/pitivi-flatpak/626/console
2017-06-28 15:54:13 -04:00
Thibault Saunier
3b20a1ccde
validate:launcher: Disable seek with stop on RTSP streams
...
It is actually not supported
2017-06-28 13:02:33 -04:00
Thibault Saunier
831464d96f
validate:launcher: Avoid useless and expensive deep copies
2017-06-27 16:50:35 -04:00
Thibault Saunier
8ea68e9e06
validate:launcher: Speed up xml parsing using lxml if avalaible
2017-06-27 16:50:35 -04:00
Thibault Saunier
c0c5f95232
validate: make swicthing subtitle track while paused require prerolling
2017-06-27 16:50:16 -04:00
Thibault Saunier
5924441633
validate: Fix the change_state_intensive scenario
...
The scenario was in no way certified that the pipeline was in PAUSED
state when starting on an stream that does not preroll
2017-06-22 11:53:51 -04:00
Thibault Saunier
6a8b0111cd
validate:scenario: Enhance playbin3 stream selection error message
2017-06-22 11:52:26 -04:00
Thibault Saunier
eac403f87c
validate: Add missing space in segment mismatch issue description
2017-06-20 15:51:27 -04:00
Thibault Saunier
2f35acf558
validate:launcher: Enhance command printing when using a server
...
So it can be copy pasted and work
2017-06-20 15:46:15 -04:00
Thibault Saunier
82dd230ef1
validate:launcher: No need to use -validate as a tracer for RTSP server
...
It is now linked into the server app
2017-06-20 10:43:09 -04:00
Thibault Saunier
335c14bf5b
validate:launcher: Fix launching testsuite with relative paths
2017-06-16 17:36:34 -04:00
Thibault Saunier
b1b696017c
validate: Add a plugin with potential extra checks
...
And add a way to check that a configured number of instances of a particular
element is used, this is useful to make sure for example that playing a
particular stream doesn't lead to several decoders being instanciated.
2017-06-16 17:36:34 -04:00
Thibault Saunier
a728a7df49
validate: Fix the way we check if _CONFIG is a list of structures
2017-06-16 17:36:34 -04:00
Thibault Saunier
6439494f40
validate: overrides: Add a hook about newly added elements in a bin
2017-06-16 17:36:34 -04:00
Thibault Saunier
e0484a7cdd
validate: Attach overrides before calling monitor.setup()
2017-06-16 17:36:34 -04:00
Reynaldo H. Verdejo Pinochet
9c5fb0c058
validate: libs: video: improve ssim's action registrations
2017-06-08 13:44:10 -07:00
Thibault Saunier
a43a6191c0
validate: Do not link the rtsp server against validatevideo
...
It is not needed
https://bugzilla.gnome.org/show_bug.cgi?id=783554
2017-06-08 12:32:01 -04:00
Thibault Saunier
543e7a983a
validate:launcher: Do not which(None), the rtsp-server command is unset if not avalaible
...
https://bugzilla.gnome.org/show_bug.cgi?id=783551
2017-06-08 12:18:19 -04:00
Thibault Saunier
905a15c014
meson: Make dependency on rtsp-server really optionnal
2017-06-07 16:18:59 -04:00
Thibault Saunier
9a45cd41a9
validate:launcher: Handle test that can't be run in parralel
2017-06-07 15:23:26 -04:00
Thibault Saunier
58cbc9fbfb
meson: Do not use path separator in test names
...
Avoiding warnings like:
WARNING: Target "elements/audioamplify" has a path separator in its name.
2017-06-07 12:29:17 -04:00
Thibault Saunier
6772fa7d27
validate: Add 'our own' RTSP server implementation
2017-06-07 11:17:53 -04:00
Thibault Saunier
0e163ffae8
validate:launcher: Handle optional tests
...
For example RTSP tests might not be avalaible if gst-rtsp-server-example-uri is not avalaible
2017-06-07 11:17:53 -04:00
Thibault Saunier
0beb8647ce
validate:launcher: Print logfiles when printing test result
...
It was often annoying to check wrong logs because the result are
not printed near the reference to logs.
2017-06-07 11:17:53 -04:00
Thibault Saunier
237a976d07
validate: Add a way to use config actions in GST_VALIDATE_CONFIG files
...
The synthax is:
core, action=action-name, param1=1, param2=param2
2017-06-07 11:17:53 -04:00
Thibault Saunier
8d251f12d9
scenario: Fallback to using media_info to determine stream duration
...
In the case the query duration return CLOCK_TIME_NONE.
2017-06-07 11:17:53 -04:00
Thibault Saunier
37de89e6db
validate:launcher: Do not run scenarios that need prerolling on RTSP stream
2017-06-07 11:17:53 -04:00
Thibault Saunier
b9774b14b5
validate: Do not print \r in actual files
2017-06-07 11:17:53 -04:00
Thibault Saunier
3c62c315a9
validate: Implement RTSP support
2017-06-07 11:17:53 -04:00
Reynaldo H. Verdejo Pinochet
a18cef9c3f
validate: reporter: add doc entry for gst_validate_report()'s varargs
...
Avoids GTK-Doc parser warnings
2017-06-07 00:04:34 -07:00
Reynaldo H. Verdejo Pinochet
4349e11cb0
validate: scenario: fix typo/grammar issues in function documentation
2017-06-07 00:04:34 -07:00
Reynaldo H. Verdejo Pinochet
018ca98fd9
validate: actions: drop needless newline before feature-rank and wait
...
Stale new-lines messed the help output of gst-validate -t
2017-06-07 00:02:54 -07:00
Reynaldo H. Verdejo Pinochet
7f396ec660
validate: actions: add info on mandatory fields for set-property
...
Additionally, drop a comment that becomes redundant after adding this
info to the action description
2017-06-06 23:04:52 -07:00
Reynaldo H. Verdejo Pinochet
89fff02bb3
validate: scenario: fix description for 'seek' and 'stop'
2017-06-06 23:04:28 -07:00
Reynaldo H. Verdejo Pinochet
4b57c0bbb4
validate: fix documentation for gst_validate_init()
2017-06-06 18:50:47 -07:00
Thibault Saunier
7b7692d70b
validate: Update win32 def file
2017-06-02 16:51:35 -04:00
Thibault Saunier
9d3b760cf3
validate: Make Reporter.runner a MT safe weak reference
...
It can be used in any thread!
2017-06-01 16:57:50 -04:00
Thibault Saunier
4a38efb6a0
validate:launcher: Add missing is_live implementation for FakeMediaDescriptor
2017-06-01 16:57:50 -04:00
Thibault Saunier
e27367f040
validate: Fix json serialized object leaks
2017-06-01 16:57:50 -04:00
Thibault Saunier
02d716d6d8
validate:launcher: Handle not redirecting valgrind output
2017-06-01 16:57:50 -04:00
Thibault Saunier
dba5675d81
validate:launcher: Add a way to pass arguments to the leak tracer
2017-06-01 16:57:50 -04:00
Thibault Saunier
86e9135b56
validate: Use GWeakRefs on monitor target and pipeline
...
Making it thread safe and more future proof (though having them point
to NULL might not be handled all around).
https://bugzilla.gnome.org/show_bug.cgi?id=782784
2017-06-01 16:57:50 -04:00
Thibault Saunier
8cc1b39919
validate: monitor: Unref our weak reference to the pipeline
2017-05-31 14:53:05 -04:00
Thibault Saunier
8f123cbc6f
validate: Make accessing Scenario.pipeline thread safe
...
The fact that Scenario.pipeline was not accessible in a thread way lead
to the fact that all users had to take the unref the last pipeline ref
in the main thread, otherwise we were crying. This was an ugly
restriction which lead to issue when using scenario on gst-rtsp-server.
This break the API as this commit remove the GstValidateScenario.pipeline
field but it is worth it.
2017-05-31 14:53:05 -04:00
Edward Hervey
2dd729ccf9
scenarios: Add/Update scenarios for live contents
2017-05-25 16:08:42 +02:00
Edward Hervey
400d1f9326
validate: Implement Scenario.__repr__
...
Allows better debugging when looking at logs
2017-05-25 15:50:23 +02:00
Edward Hervey
9188968f5c
validate: Add live-related features to scenarios and medias
...
Note: The notion of "live" here is in the *content* sense and not in the
GStreamer sense.
Ex:
* A rtsp stream is always "live" in the GStreamer sense but might not always
provide live content.
* HLS/DASH streams are not "live" in the GStreamer sense but might
provide "live" content.
Some scenarios might:
* require live content
* not be compatible with live content
This patch adds two new properties for scenarios:
* live_content_required (default False) for scenarios that can only work with
live content.
* live_content_compatible (default False) for scenarios that can work with
both live and non-live content.
This patch adds support for reading a "live" property from stream_info
2017-05-25 14:04:00 +02:00
Víctor Manuel Jáquez Leal
29480d006c
validate: g_object_newv() is deprecated
...
Since glib version 2.54, g_object_newv() is deprecated.
This patch changes that function with a simpler g_object_new(),
since no properties are set.
https://bugzilla.gnome.org/show_bug.cgi?id=782860
2017-05-20 12:40:26 +02:00
Edward Hervey
a4b16d54a0
validate-report: Don't leak GError
2017-05-05 15:27:37 +02:00
Edward Hervey
506e537f82
validate-scenario: Don't end up with invalid action name
...
When replacing an action structure, also update the action name with
the (new) name from the new structure. Otherwise we end up with
a bogus name from the previous (deleted) structure.
2017-05-05 15:27:37 +02:00
Edward Hervey
790e78c4f8
validate-scenario: Avoid invalid memory access
...
The name of the action comes directly (i.e. not copied) from the
contained GstStructure field. Therefore make sure to take that
name from the proper structure field (copied just before) and
not from an outside one.
2017-05-05 14:43:25 +02:00
Reynaldo H. Verdejo Pinochet
540200bd0a
validate: drop superfluous whitespace from cmd description
2017-05-04 14:47:16 -07:00
Scott D Phillips
e1bf823e0c
validate: remove const from outfolder
...
GOptionEntry's arg_data is of type gpointer which differs in
constness from const gchar*, so remove constness from outfolder.
This fixes a build issue with msvc.
https://bugzilla.gnome.org/show_bug.cgi?id=782031
2017-05-04 14:34:34 -07:00
Sebastian Dröge
c2d86243ce
Back to development
2017-05-04 18:59:14 +03:00
Sebastian Dröge
e122285b62
Release 1.12.0
2017-05-04 15:48:44 +03:00
Thibault Saunier
40a31b05b6
launcher: Allow using the base launcher as a test manager
...
No reason to force people to subclass it in simple cases.
2017-04-30 14:36:16 -03:00
Thibault Saunier
bf71c93e84
tools: Fix dotfile name
2017-04-27 16:46:22 -03:00
Sebastian Dröge
4b61eb4b41
Release 1.11.91
2017-04-27 17:54:05 +03:00
Thibault Saunier
f34c7db3e4
validate: Fix update_stop.scenario seek property naming
2017-04-21 11:16:37 -03:00
Thibault Saunier
e9db1c19d0
launcher:check: Ensure to set build dir before rebuilding
2017-04-20 10:13:00 -03:00
Edward Hervey
325c1b37dd
baseclasses: Add method to set a specific list of scenarios
...
https://bugzilla.gnome.org/show_bug.cgi?id=781314
2017-04-14 16:55:06 +02:00
Reynaldo H. Verdejo Pinochet
9d33d0ec9c
validate: drop unneeded break+concat in some string literals
...
Perform other related improvements while at it.
2017-04-12 10:31:21 -07:00
Thibault Saunier
26b388c349
validate: Do not expect track switch to be synchronous for playbin3
...
And let following actions to be executed (setting the action as
INTERLACED) which will make sure the track switch happened at some
point. It means the user has to set the pipeline to PLAYING so we can
make it works but we do not have choice here I think
https://bugzilla.gnome.org/show_bug.cgi?id=781213
2017-04-12 11:28:50 -03:00
Edward Hervey
1f5a900bce
validate-pad-monitor: Fix previous commit
...
Post-send handling was only meant for seek events
2017-04-10 11:43:28 +02:00
Edward Hervey
b156616b5c
pad-monitor: Safely store expected seek values
...
Protect the expected seek values with the same lock as the one
that will be used to read/validate the resulting segments and flush
values.
Avoids races with duplicated seeks (i.e. a seek that was already
sent and handled via another pad, such as in demuxers).
https://bugzilla.gnome.org/show_bug.cgi?id=781112
2017-04-10 09:15:50 +02:00
Sebastian Dröge
a4da90b8db
Release 1.11.90
2017-04-07 16:36:04 +03:00
Reynaldo H. Verdejo Pinochet
22d99ac89c
validate: scenario: fix error message on scenario parsing failure
2017-04-05 15:26:31 -07:00
Reynaldo H. Verdejo Pinochet
4ec6bda043
validate: report: avoid pointless var & associated dup/free
...
Just pass the replacement string literal to _regex_replace().
2017-04-05 14:40:32 -07:00
Reynaldo H. Verdejo Pinochet
38440a5931
validate: report: avoid _strdup_printf() if not needed
...
g_strdup() is enough for this string literal.
2017-04-05 14:36:10 -07:00
Reynaldo H. Verdejo Pinochet
c8478b87f8
validate: report: fix description for timestamp out of range
...
Additionally: Fix nits in the descriptions for
SCENARIO_ACTION_EXECUTION_ISSUE and CONFIG_ACTION_TYPE
2017-04-05 12:24:06 -07:00
Edward Hervey
330ae663dc
validate: Improve video fakesink properties
...
Try to emulate a bit better a real video sink by making the video
fakesink handle/calculate/report QoS.
Also use the same lateness value as default videosink
2017-04-04 14:53:30 +02:00
Reynaldo H. Verdejo Pinochet
d5da8682b2
validate: scenario: improve description blurb for execute-on-idle
...
Additionally: Fix issues in _register_action_type() documentation.
2017-03-28 15:03:54 -07:00
Reynaldo H. Verdejo Pinochet
eb2353f037
validate: scenario: fix msg on _lookup_feature() failure
2017-03-28 15:03:54 -07:00
Reynaldo H. Verdejo Pinochet
d6169ccb9f
validate: scenario: fix documentation for GstValidateAction
...
Additionally:
Improve GstValidatePrepareAction documentation
Correct one-off use of 'eos' instead of EOS.
2017-03-28 15:03:54 -07:00
Reynaldo H. Verdejo Pinochet
fd796d2976
validate: scenario: fix type field in description parameter
...
Nothing wrong with Sting though :)
Additionally: Fix typo in need-clock-sync's description
2017-03-28 15:03:47 -07:00
Reynaldo H. Verdejo Pinochet
b2ec10ace3
validate: do not check for NULL before g_free()
...
g_free() is NULL-safe.
2017-03-23 15:21:58 -07:00
Reynaldo H. Verdejo Pinochet
51a921b34b
validate: fix issues with a couple of string constants
...
Fix missing and/or dupplicated separators, bogus breaks, typos, etc.
2017-03-23 15:20:05 -07:00
Reynaldo H. Verdejo Pinochet
9ea012de22
validate: fix whitespace separators in multi-line string constants
...
Drop dupplicated & add missing ones
Additionally: typo fixes
2017-03-20 15:02:43 -07:00
Nicolas Dufresne
bdd152484c
Rename plugin filenames to match plugin names
...
- libgstvalidateplugin.so -> libgstvalidatetracer.so
- faultinjection -> validatefaultinjection
- gstvalidategtk -> validategtk
- ssim -> validatessim
https://bugzilla.gnome.org/show_bug.cgi?id=779344
2017-03-08 20:04:29 -05:00
Reynaldo H. Verdejo Pinochet
7f5d22f616
validate: report: avoid unnecessary calls to _append_printf
...
Additionally: simplify %format magic used for padding
2017-03-02 17:15:20 -08:00
Reynaldo H. Verdejo Pinochet
9588ccd02b
validate: report: clarify misleading message on skipped actions
...
Intention is to notify that not all actions were
executed but previous message suggested none were.
Additionally: fix problems in two others
2017-03-02 17:14:37 -08:00
Reynaldo H. Verdejo Pinochet
c62e33a7b8
validate: report: fix _issue_new()'s parameter description
2017-03-02 17:04:16 -08:00
Edward Hervey
99cade5ba4
validate: Make the HTTP server multi-threaded
...
Avoids having one test blocking all other tests
2017-03-02 17:40:18 +01:00
Thibault Saunier
49271bc721
validate:launcher: Add information on media info files parsing failures
2017-02-27 12:12:38 -03:00
Thibault Saunier
95a5a3a62c
validate: Ignore more parser related fields when comparing media caps
2017-02-27 12:12:38 -03:00
Thibault Saunier
fbde653a0c
validate: launcher: Fix the way we retrieve command name
...
We are now using a list of args for subprocess so just using it is simple now
2017-02-27 12:12:38 -03:00
Thibault Saunier
bf21c2f64e
validate:launcher: Fix typo in meson build definitions
2017-02-27 12:12:38 -03:00
Thibault Saunier
9caee62bc6
validate: Fix call to decode() on a string
2017-02-27 12:12:38 -03:00
Reynaldo H. Verdejo Pinochet
58b3a232b2
validate: fix mention to nonexistent option
2017-02-24 15:59:33 -08:00
Reynaldo H. Verdejo Pinochet
3d13f21be6
validate: improve set-config option description
2017-02-24 15:59:33 -08:00
Thibault Saunier
b97c13d0a7
validate:launcher: Fix setting meson build dir
2017-02-24 17:33:08 -03:00
Sebastian Dröge
cc0a848c30
Back to development
2017-02-24 15:37:52 +02:00
Sebastian Dröge
78b5ec4a91
Release 1.11.2
2017-02-24 15:10:12 +02:00
Thibault Saunier
f2b42cbaf8
validate:launcher: Various fixes to make the Test class directly usable
...
And the launcher installed with meson usable
2017-02-21 13:40:28 -03:00
Thibault Saunier
a39ef816a6
validate: launcher: Do not force using current module dir to run check tests
2017-02-21 13:40:28 -03:00
Reynaldo H. Verdejo Pinochet
158507585c
validate: fix multiple occurrences of 'parametter'
2017-02-17 14:05:00 -08:00
Reynaldo H. Verdejo Pinochet
b0610dcc9a
validate: fix unbalanced quotation mark in set-subtitle description
...
+ Remove pointless split in string literal
2017-02-17 14:05:00 -08:00
Thibault Saunier
54a1fc8b30
validate:launcher: Take ValidateAction execution as a marker of test update
2017-02-17 15:29:41 -03:00
Thibault Saunier
40016b9956
validate:scenario: Report action done with the execution duration
2017-02-17 15:29:41 -03:00
Reynaldo H. Verdejo Pinochet
f92569724a
validate: runner: fix error msg for duplicated runner
...
- Add trailing whitespace to avoid accidental concatenation
- Fix bunch of typos and some grammar while at it
2017-02-16 14:34:33 -08:00
Reynaldo H. Verdejo Pinochet
606ac60704
validate: fix message on runner errors
...
- Add newline char to avoid accidental concatenation with
actual error message
- Fix grammar while at it
2017-02-16 14:31:25 -08:00
Thibault Saunier
aa006f78c4
meson: Fix Gir *_prefix value to be the sames as with autotools
...
We want to be able to do GstValidate.Monitor and not
GstValidate.ValidateMonitor.
And do not pass header to the list of sources to build libraries as
it is not needed.
2017-02-15 18:36:55 -03:00
Thibault Saunier
53e878ea8b
meson: Do not forget to install headers
2017-02-15 18:03:36 -03:00
Tim-Philipp Müller
fe49fd0d56
validate: pkgconfig: fix libtool-ism in uninstalled .pc file
2017-02-15 18:13:14 +00:00
Thibault Saunier
cd78d29c56
validate:scenario: Do not switch relative track when no track of type avalaible
...
This case was not handled and leaded to a division by zero.
2017-02-15 13:52:35 -03:00
Thibault Saunier
446c619dea
validate: meson: Add a way to disable documentation generation
2017-02-15 12:39:18 -03:00
Thibault Saunier
e810eb4f5f
validate:meson: Build gst-validate-image-check if possible
2017-02-10 15:56:11 -03:00
Thibault Saunier
7773ca7765
validate:launcher: Add a way to specify a set of tests to run under the leak tracer
...
https://bugzilla.gnome.org/show_bug.cgi?id=767856
2017-02-10 15:56:11 -03:00
Guillaume Desmottes
1cebf3a24f
valdate: fix element leak in overide-registry
...
The elements were never released once created.
https://bugzilla.gnome.org/show_bug.cgi?id=778279
2017-02-08 17:00:08 -03:00
Guillaume Desmottes
ca7f0912c4
validate: fix leak in overrides test
...
The runner was never released.
https://bugzilla.gnome.org/show_bug.cgi?id=778279
2017-02-08 17:00:08 -03:00
Guillaume Desmottes
2b33489a2c
validate: fix leaks in pad monitor test
...
- monitors were never released
- reports were leaked
- GstValidateMediaDescriptor was leaked
- caps were leaked: gst_check_setup_events_with_stream_id() and
gst_event_new_caps() don't consume the caps
- srcpad were never released
https://bugzilla.gnome.org/show_bug.cgi?id=778279
2017-02-08 17:00:08 -03:00
Guillaume Desmottes
4c5ba39bfe
validate: pad-monitor: fix caps leaks
...
These caps were not released when disposing the pad monitor.
https://bugzilla.gnome.org/show_bug.cgi?id=778279
2017-02-08 17:00:08 -03:00
Thibault Saunier
addd76fc85
validate: Mark tests as SKIPPED when installation is missing a GStreamer plugin
2017-02-07 13:12:09 -03:00
Thibault Saunier
9790823d2a
validate: Do not fail media check when fields are related to (decoding) elements
...
In the case of h264 the stream might very well be in `nal` format but the decoder
might not accept it thus the parser converts to `byte-stream`, leading
to a correct stream detection but a failure in the validate-media-check
tool.
2017-02-06 16:02:55 -03:00
Thibault Saunier
823ce95d70
validate:launcher: Add an option for user to modify timeout values
...
Allowing to expand the test timeout when running on slow platforms
2017-02-06 12:16:41 -03:00
Thibault Saunier
5d1d8e6971
validate:launcher: Verify that Gst supression file could be found
2017-02-03 11:02:49 -03:00
Thibault Saunier
775564187d
validate:meson: Add pbutils as a dependency on the video library
2017-02-02 15:47:30 -03:00
Guillaume Desmottes
765cf8679f
validate: meson: fix --validate-tools-path argument
...
The path passed to --validate-tools-path was wrong when building using
gst-build, preventing the launcher to find the validate tools.
https://bugzilla.gnome.org/show_bug.cgi?id=777982
Differential Revision: https://phabricator.freedesktop.org/D1634
2017-02-02 11:01:11 -03:00