Thibault Saunier [Thu, 18 Jun 2020 16:46:39 +0000 (12:46 -0400)]
validate: Always check if scenario is done from the right thread
Action will be set_done from the right thread and we will check if the action is done from there
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/212>
Thibault Saunier [Tue, 16 Jun 2020 19:34:04 +0000 (15:34 -0400)]
validate: Print errors on action failures
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207>
Thibault Saunier [Mon, 15 Jun 2020 21:32:13 +0000 (17:32 -0400)]
validate: Plug some leaks
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207>
Thibault Saunier [Mon, 15 Jun 2020 20:17:55 +0000 (16:17 -0400)]
validate: Move action finalization to _set_done where it belongs
gst_validate_action_set_done is the place where we should finalize the
action, not in `execute_next`, this way we better handle printing
interlaced action finalization too.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207>
Thibault Saunier [Mon, 15 Jun 2020 14:50:14 +0000 (10:50 -0400)]
validate:scenario: Replace the `sub-action` with a `foreach` action type
Sub-actions were really hard to use and conceptually weird. The
implementation was ugly and made the code complex for nothing.
Instead this commit introduces a `foreach` action type which allows
repeating actions passed in an `actions` array the number of time
specified by any `GstIntRange` value defined in the structure or its
`repeat` field.
This commit also makes sure that all action got through
gst_validate_action_set_done upon finalization.
+ Cleanup surrounding code
+ Add tests
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207>
Thibault Saunier [Mon, 15 Jun 2020 13:17:55 +0000 (09:17 -0400)]
validate: scenario: Implement 'repeat' by copying actions
Instead of trying to reuse the same action structure and deal with
that in a complex way, copy the action the required number of times.
And add a simple test
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207>
Thibault Saunier [Mon, 15 Jun 2020 13:32:23 +0000 (09:32 -0400)]
validate:scenario: Round results of expressions in a sensible way
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207>
Thibault Saunier [Mon, 15 Jun 2020 14:54:20 +0000 (10:54 -0400)]
launcher: Keep running tests forever on KNOWN_ERROR
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207>
Thibault Saunier [Mon, 15 Jun 2020 13:37:21 +0000 (09:37 -0400)]
validate: Add private action type to check number of action type calls
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207>
Thibault Saunier [Mon, 15 Jun 2020 13:14:16 +0000 (09:14 -0400)]
validate:scenario: Avoid dereferencing NULL structure
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207>
Thibault Saunier [Mon, 15 Jun 2020 13:08:51 +0000 (09:08 -0400)]
validate: Fix marking expected issues as criticals
And never mark a repeat expected reports as repeated
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207>
Thibault Saunier [Fri, 12 Jun 2020 14:08:25 +0000 (10:08 -0400)]
validate: Add a way to use the expression parser in any field
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207>
Thibault Saunier [Fri, 12 Jun 2020 14:05:57 +0000 (10:05 -0400)]
validate: Allow variables to be set with other types than strings
And use value serialization from GStreamer to convert
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207>
Thibault Saunier [Fri, 12 Jun 2020 13:58:24 +0000 (09:58 -0400)]
scenario: Add an action to remove a feature/plugin from the registry
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207>
Thibault Saunier [Wed, 10 Jun 2020 21:18:49 +0000 (17:18 -0400)]
valiadate: Add a test for setting/checking (timed) properties
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207>
Thibault Saunier [Wed, 10 Jun 2020 20:44:04 +0000 (16:44 -0400)]
validate:scenario: Add action to set and check several properties at once
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207>
Thibault Saunier [Wed, 10 Jun 2020 19:39:12 +0000 (15:39 -0400)]
validate: Add an action type to set timed value properties
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207>
Philippe Normand [Fri, 19 Jun 2020 09:26:17 +0000 (10:26 +0100)]
debug-viewer: Add screenshot
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/210>
Tim-Philipp Müller [Fri, 19 Jun 2020 23:28:39 +0000 (00:28 +0100)]
Back to development
Tim-Philipp Müller [Fri, 19 Jun 2020 18:27:58 +0000 (19:27 +0100)]
Release 1.17.1
Vivek R [Fri, 12 Jun 2020 14:01:41 +0000 (19:31 +0530)]
validate: flow: record GstRegionOfInterestMeta
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/206>
Thibault Saunier [Mon, 15 Jun 2020 22:37:51 +0000 (18:37 -0400)]
validate:launcher: Ensure that the main directory exists
Fixes https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/issues/53 part 1
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/209>
Thibault Saunier [Mon, 15 Jun 2020 22:06:33 +0000 (18:06 -0400)]
validate:tests: Cleanup the way set environment vars
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/209>
Thibault Saunier [Mon, 15 Jun 2020 21:56:54 +0000 (17:56 -0400)]
validate: Stop trying to support uninstalled autotools
Fix https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/issues/53 part 2
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/209>
Thibault Saunier [Tue, 9 Jun 2020 21:29:08 +0000 (17:29 -0400)]
validateflow: Plug leak
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/205>
Thibault Saunier [Mon, 8 Jun 2020 18:01:49 +0000 (14:01 -0400)]
scenario: Fix waiting for signal
The signal callback signature was just wrong and not generic leading to
crash if waiting for any signal that didn't match it. This commit fixes
it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/205>
Thibault Saunier [Mon, 8 Jun 2020 18:00:44 +0000 (14:00 -0400)]
scenario: Add an option to set properties on all instances
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/205>
Thibault Saunier [Mon, 8 Jun 2020 17:45:26 +0000 (13:45 -0400)]
validate:flow: Add a way to dump buffer content as hex
Useful in unit tests with very small buffers
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/205>
Thibault Saunier [Tue, 2 Jun 2020 23:10:14 +0000 (19:10 -0400)]
validate: Cleanup implementation of appsrc-push
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/205>
Thibault Saunier [Thu, 7 May 2020 13:16:11 +0000 (09:16 -0400)]
validate: Remove useless condition
CID 1462652
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/192>
Thibault Saunier [Thu, 7 May 2020 13:09:14 +0000 (09:09 -0400)]
validate:ssim: Avoid dereferencing NULL pointer
CID 1462650
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/192>
Thibault Saunier [Thu, 7 May 2020 13:06:32 +0000 (09:06 -0400)]
validate: Give a proper argv[0] when running test files
Fixes CID 1462613
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/192>
Thibault Saunier [Thu, 7 May 2020 13:05:06 +0000 (09:05 -0400)]
validate:transcoding: Exit after printing the help
Fixes CID 1455575
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/192>
Thibault Saunier [Thu, 7 May 2020 12:49:34 +0000 (08:49 -0400)]
validate: Ensure Scenario isn't NULL when preparing action
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/192>
Thibault Saunier [Wed, 3 Jun 2020 18:29:22 +0000 (14:29 -0400)]
validate: Update documentation now core plugins are integrated
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/204>
Thibault Saunier [Wed, 3 Jun 2020 14:55:22 +0000 (10:55 -0400)]
validate: Make extracheck and flow part of core instead plugins
It makes things more complex and doesn't bring anything!
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/204>
Edward Hervey [Wed, 3 Jun 2020 07:32:32 +0000 (09:32 +0200)]
launcher: Limit copies of massive debug logs in markdown file
When debugging is activated, we could end up with log files ranging in the
multi-megabyte or even gigabyte range. Copying those is expensive from a cpu/io
point of view in addition to clobbering the storage.
Instead of always copying those files, check if they are smaller than 500kB. If
not, don't copy them and instead provide a link to their location.
Fixes #52
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/203>
Thibault Saunier [Sat, 30 May 2020 19:54:31 +0000 (15:54 -0400)]
validateflow: Allow specifying checksum type
And add an extra mode 'checksum-as-id' which basically numerate
buffers checksums as they are being received so that it is simpler
to compare expectations when you are tracking buffers from both
sinkpads and srcpads.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/202>
Thibault Saunier [Fri, 29 May 2020 22:11:54 +0000 (18:11 -0400)]
validate: Add a parameter to force waiting on the test clock
This allows to wait for a new buffer to reach the sink without
actually cranking that buffer, allowing to quite the test without
waiting for EOS in a 100% reproducible way
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/201>
Thibault Saunier [Fri, 29 May 2020 22:11:11 +0000 (18:11 -0400)]
validate: Error out when a config hasn't been used at all
It probably means a plugin is not available
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/201>
Tim-Philipp Müller [Wed, 27 May 2020 23:16:57 +0000 (00:16 +0100)]
Ship validate as part of a gst-devtools tarball
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/199>
Tim-Philipp Müller [Wed, 27 May 2020 19:59:41 +0000 (20:59 +0100)]
meson: make debug_viewer a feature option
... and disable by default.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/199>
Thibault Saunier [Thu, 28 May 2020 21:04:20 +0000 (17:04 -0400)]
validate: Fix mixup in quarks usages
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/200>
Thibault Saunier [Wed, 27 May 2020 23:35:26 +0000 (19:35 -0400)]
validate: Add missing return func when GLib < 2.50
CID 1463854
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/200>
Thibault Saunier [Wed, 27 May 2020 03:25:48 +0000 (23:25 -0400)]
validate: Update documentation
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/200>
Thibault Saunier [Tue, 5 May 2020 22:09:08 +0000 (18:09 -0400)]
validateflow: Add a way to configure when to generate expectations
By default, generate them whenever the file is missing but adding a way
to override that with `validateflow,generate-expectations=true` to force
regenerating them or setting `validateflow,generate-expectations=false`
to disallow generating them (on CI servers for example)
Also update the validateflow documentation to take that into account
and remove references to pipeline.json file which is now gone!
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/200>
Thibault Saunier [Thu, 14 May 2020 23:22:18 +0000 (19:22 -0400)]
scenario: Minor cleanup around pipeline change state management
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/198>
Thibault Saunier [Thu, 14 May 2020 22:45:11 +0000 (18:45 -0400)]
scenario: Mark seek as done only when reaching next state
There is a race where following actions could generate a
flush-start/flush-stop dance but the state change resulting from the
seek hasn't been committed yet, leading to the ASYNC_START being
ignored by GstBin since its pending_state is not VOID when receiving
the ASYNC_START message.
Conceptually it is totally correct to consider an action done when
the state change of the pipeline is stabilized..
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/198>
Thibault Saunier [Tue, 26 May 2020 19:55:55 +0000 (15:55 -0400)]
validate:launcher: Stop wrongly erroring on testsuite loading failure
When the testsuite was actually already loaded as the .py
file was explicitly passed in
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/197>
Thibault Saunier [Tue, 26 May 2020 19:53:47 +0000 (15:53 -0400)]
validate: Fix loading configs from a caps
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/197>
Thibault Saunier [Sat, 23 May 2020 04:38:32 +0000 (00:38 -0400)]
flow: Use bat to color diffs when possible
Adding a function to check if can output colored logs
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/197>
Thibault Saunier [Fri, 15 May 2020 15:27:12 +0000 (11:27 -0400)]
launcher: check: Properly set PLUGIN_PATH and registry when running in gst-build
This makes registry
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/197>
Thibault Saunier [Wed, 13 May 2020 22:25:00 +0000 (18:25 -0400)]
launcher: Ensure that -j tests run in parallel when running forever
So that you can reproduce the issue you want faster!
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/197>
Thibault Saunier [Tue, 12 May 2020 13:26:40 +0000 (09:26 -0400)]
docs: Update gst-validate-launcher documentation
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/197>
Thibault Saunier [Tue, 10 Mar 2020 14:52:35 +0000 (11:52 -0300)]
launcher: Add support for running tests inside rr
Allowing us to easily run the tests forever and then replay the
failures!
https://rr-project.org/
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/197>
Guillaume Desmottes [Thu, 14 May 2020 10:35:40 +0000 (12:35 +0200)]
validate: add missing gir annotation
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/194>
Edward Hervey [Fri, 22 May 2020 16:00:04 +0000 (18:00 +0200)]
validate-scenario: Initialize variable correctly
ret needs to be always reset to FALSE *before* checking attempting to load the
individual files. Otherwise there's the possibility it would silently accept an
invalid scenario name
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/196>
Edward Hervey [Fri, 22 May 2020 15:56:40 +0000 (17:56 +0200)]
validate-scenario: Remove unused variable
We only need to check whether the field is present and of a given type
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/196>
Thibault Saunier [Fri, 15 May 2020 15:26:10 +0000 (11:26 -0400)]
validate: Stop using g_file_peek_path
It was introduced in 2.56 so is too recent
Fixes https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/issues/51
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/195>
Thibault Saunier [Tue, 5 May 2020 17:52:52 +0000 (13:52 -0400)]
validate: Add including support in the structure file parser
Adding proper error reporting support
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/191>
Thibault Saunier [Fri, 8 May 2020 21:35:59 +0000 (17:35 -0400)]
validate: utils: Do not try to replace vars in debug info fields
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/190>
Thibault Saunier [Fri, 8 May 2020 21:35:39 +0000 (17:35 -0400)]
validate: Fix parsing validate tests files with vars on windows
And ensure that we escape windows path in variables
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/190>
Thibault Saunier [Sun, 3 May 2020 05:24:32 +0000 (01:24 -0400)]
validate:launcher:check: Add support for gst-tester-1.0
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/189>
Thibault Saunier [Thu, 7 May 2020 04:23:07 +0000 (00:23 -0400)]
validate: Add support for known-issues in the .validatetest
And add some tests about remaining actions failures
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/189>
Thibault Saunier [Thu, 7 May 2020 02:36:59 +0000 (22:36 -0400)]
validate: Ensure a meta structure is found in test files
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/189>
Thibault Saunier [Thu, 7 May 2020 02:20:58 +0000 (22:20 -0400)]
validate:scenario: Check remaining action on stop, not EOS
When ignoring EOS, on addition action could end up not being executed
and no error was reported which was wrong.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/189>
Thibault Saunier [Mon, 4 May 2020 21:59:28 +0000 (17:59 -0400)]
validate: Fix rendering destination directory path creation
We were ending up creating file:/some/path in cwd
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/187>
Thibault Saunier [Mon, 4 May 2020 20:59:54 +0000 (16:59 -0400)]
validate: Plug some leaks
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/187>
Thibault Saunier [Sun, 3 May 2020 05:22:04 +0000 (01:22 -0400)]
validate: Add details on all g_log message reports.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/187>
Thibault Saunier [Sun, 3 May 2020 05:20:19 +0000 (01:20 -0400)]
validate: Add a mechanism to mark tests as skipped
And use it when a plugin is missing and the user didn't ask for
failure when it happens
And use the TAP[0] synthax to report it
[0]: https://testanything.org
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/187>
Thibault Saunier [Sun, 3 May 2020 04:54:56 +0000 (00:54 -0400)]
validate: Enhance issue reporting from structures
And properly bail out when required
This is preparatory work for gst-test in core which will use the TAP
protocol
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/187>
Thibault Saunier [Wed, 6 May 2020 02:57:08 +0000 (22:57 -0400)]
validate:flow: Handle some more segment fields filtering
Those slept through when implementing filtering
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/188>
Thibault Saunier [Thu, 9 Apr 2020 20:04:53 +0000 (16:04 -0400)]
ssim: Minor improvements on the way we attach to pads
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/174>
Edward Hervey [Tue, 5 Jun 2018 15:56:36 +0000 (17:56 +0200)]
validate-scenario: Refactor seek handling
* Store all seek values into a list of pending seeks instead
of hardcoding some values
* Store all segments that sinks received
* Match segments to seeks when all sinks received segments with
the same seqnum
* Detect when a seek did *not* result in segments with identical
matching seqnums
Should allow checking for all types of seek handling, including
flush-less seeks
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/174>
Edward Hervey [Fri, 15 Jun 2018 08:52:46 +0000 (10:52 +0200)]
validate-report: Add new check for top-level seek
This issue is to detect seeks that don't result in segments
with identical seqnums. This check can be done at the top-level
scenario
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/174>
Edward Hervey [Tue, 5 Jun 2018 15:55:29 +0000 (17:55 +0200)]
validate-pad-monitor: Post GstBaseSink SEGMENT on the bus
Allows higher-level bin or app (like validate-scenario) to know
what each sink currently has in terms of SEGMENT.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/174>
Edward Hervey [Tue, 5 Jun 2018 15:53:51 +0000 (17:53 +0200)]
validate-element-monitor: Detect basesink elements
And add a macro
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/174>
Edward Hervey [Tue, 5 Jun 2018 15:51:44 +0000 (17:51 +0200)]
validate-scenario: Add logging for scenario lock taking/releasing
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/174>
Thibault Saunier [Thu, 30 Apr 2020 16:39:44 +0000 (12:39 -0400)]
pad-monitor: Reliably track pending seeks
Instead of overriding all values when receiving a seek, store
them as a list of expected values.
This allows handling several seeks in a row, like non-flushing
seeks.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/174>
Thibault Saunier [Wed, 29 Apr 2020 03:06:24 +0000 (23:06 -0400)]
validate: Allow overidding issue severity from configs
Refactoring sensibly to allow getting configs outside the `core` namespace
and outside plugin names.
The `GST_VALIDATE_OVERRIDE` env variable should probably be removed
all together at some point.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/185>
Thibault Saunier [Wed, 29 Apr 2020 03:26:13 +0000 (23:26 -0400)]
validate: Add an option to describe issue types
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/185>
Thibault Saunier [Tue, 28 Apr 2020 16:51:21 +0000 (12:51 -0400)]
validate: Show the exact file line when error out in structure files
And minor stdout enhancements
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/185>
Thibault Saunier [Wed, 29 Apr 2020 01:30:29 +0000 (21:30 -0400)]
validate:launcher: Mark some more tests as too long for valgrind
Bilal Elmoussaoui [Mon, 27 Apr 2020 21:46:02 +0000 (21:46 +0000)]
Apply suggestion to debug-viewer/org.freedesktop.GstDebugViewer.appdata.xml.in
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/155>
Bilal Elmoussaoui [Thu, 23 Jan 2020 15:53:03 +0000 (15:53 +0000)]
Metainfo: backport flathub fixes
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/155>
Thibault Saunier [Thu, 19 Mar 2020 21:25:28 +0000 (18:25 -0300)]
validate: Do not check pulling thread when thread is paused
With decodebin3 we have cases where a task has been started in
the `typefind` element but the demuxer is the one pulling (from
its own thread)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/183>
Thibault Saunier [Sat, 25 Apr 2020 03:33:16 +0000 (23:33 -0400)]
validate: Add a check-position action type
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/182>
Thibault Saunier [Sat, 25 Apr 2020 03:32:59 +0000 (23:32 -0400)]
validate:scenario: Enhance failures messages
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/182>
Thibault Saunier [Mon, 13 Apr 2020 20:23:32 +0000 (16:23 -0400)]
validate: Add a way to run a TestClock in scenarios
A TestClock will be used automatically when a scenario has a
`crank-clock` action.
And make `validate` and `debug-viewer` options features in meson,
no reason they weren't and now we require gst-check to build validate
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/182>
Thibault Saunier [Fri, 24 Apr 2020 19:41:10 +0000 (15:41 -0400)]
validate: Introduce the concept of "Test files"
This way we can have a single file that wraps scenarios,
`gst-validate-1.0` arguments, as well as a configuration.
It changes the name of `description` of scenarios to use `meta`
The goal is to replace tests describes in python with dictionary
to fully self contained `.validatetest` files which look like:
```
meta,
handles-states=true,
ignore-eos=true,
gst-validate-args = {
"videotestsrc pattern=blue ! video/x-raw,format=I420,framerate=1/1 ! timeoverlay ! $(videosink) name=videosink allocation-meta-flags=0",
},
configs = {
"$(validateflow), pad=videosink:sink, buffers-checksum=true, ignored-fields={\"buffers=meta\", }",
}
play
seek, start=0.0, stop=5.0, flags=accurate+flush, rate=1.0
crank-clock, expected-elapsed-time=0.0
crank-clock, repeat=4, expected-elapsed-time=1.0
crank-clock, expected-elapsed-time=1.0
stop, on-message=eos
```
Thibault Saunier [Fri, 24 Apr 2020 00:11:14 +0000 (20:11 -0400)]
validate:flow: Sensibly improve stdout
Thibault Saunier [Fri, 24 Apr 2020 00:10:48 +0000 (20:10 -0400)]
validate: Fix criticals around NULL structure usage
Thibault Saunier [Fri, 24 Apr 2020 00:09:53 +0000 (20:09 -0400)]
validate: Fix 'repeat' parameter on non ASYNC action types
Thibault Saunier [Thu, 23 Apr 2020 01:13:06 +0000 (21:13 -0400)]
validate:scenario: Do not consider action with 'on-message' as on addition
Thibault Saunier [Thu, 9 Apr 2020 20:01:25 +0000 (16:01 -0400)]
validate: report: Handle when reporting NULL action
And add information about the action repeat state.
Thibault Saunier [Wed, 22 Apr 2020 17:02:29 +0000 (13:02 -0400)]
validate: Handle comments in multiline expressions
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/179>
Thibault Saunier [Wed, 22 Apr 2020 15:27:16 +0000 (11:27 -0400)]
validate: Fix multi variable in a single structure field
We were keeping using the GMatchInfo even after modifying the string
which is explicitly stated as invalid in the GRegex documentation
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/179>
Thibault Saunier [Tue, 21 Apr 2020 19:48:20 +0000 (15:48 -0400)]
validate:scenario: Fix 'on-message' actions execution
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/177>
Thibault Saunier [Tue, 21 Apr 2020 19:28:00 +0000 (15:28 -0400)]
validate: Add { and [ as line continuation markers
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/177>
Nicolas Dufresne [Mon, 13 Apr 2020 19:38:05 +0000 (15:38 -0400)]
validate-launcher: Fix syntax error
This error prevents downloading assets from scratch. This regression was
introduced by MR !145 / commit
2581fef6843bfb53f3fc6f629577c1f013ef84e7