Thibault Saunier
9dfb2016a2
validate: scenario: Add a GstValidateScenario::action-done signal
...
Allowing application to know when a specific action is done.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/233 >
2020-12-16 22:00:37 -03:00
Thibault Saunier
b32debe06c
validate: Enhance printing action execution information
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/233 >
2020-12-15 18:00:58 -03:00
Thibault Saunier
920c12390f
validate: Add an API to get the bin monitor scenario
...
This is useful for applications that use Validate directly.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/233 >
2020-12-15 17:58:51 -03:00
Thibault Saunier
373071a743
scenario: Ensure that messages are handled from the right thread
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/233 >
2020-12-10 18:31:43 -03:00
Thibault Saunier
9eb7df7fef
validate:scenario: Fix the refcount management for actions in structures
...
Handling the refcounting the same whether the action is blocking or not
as we were leaking a ref for non-blocking waits.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/231 >
2020-12-08 16:47:15 +00:00
Thibault Saunier
aca781f981
validate:scenario: Minor cleanup
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/231 >
2020-12-08 16:47:15 +00:00
Thibault Saunier
0a7cc6a56e
validate: Use gst_validate_action_*ref everywhere.
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/231 >
2020-12-08 16:47:15 +00:00
Thibault Saunier
d974b0b5d5
validate: Add support to check properties of object properties
...
And recursively
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/231 >
2020-12-08 16:47:15 +00:00
Thibault Saunier
f5c3a0c9a0
scenario: Add a 'non-blocking' flag to the wait
signal
...
This way we can execute actions that will lead to the signal
emission later in the execution.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/228 >
2020-11-25 00:25:16 +00:00
Thibault Saunier
3da3e8825b
validate:scenario: Rename 'interlaced' action to 'non-blocking'
...
It is a better and more understandable naming.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/228 >
2020-11-25 00:25:16 +00:00
Stéphane Cerveau
dbf7dbe830
meson: update glib minimum version to 2.56
...
In order to support the symbol g_enum_to_string in various
project using GStreamer ( gst-validate etc.), the glib minimum
version should be 2.56.0.
Remove compat code as glib requirement
is now > 2.56
Version used by Ubuntu 18.04 LTS
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/224 >
2020-10-30 19:01:24 +00:00
Thibault Saunier
33a6cf5234
validate: Use pad.last_flowret instead of trying to compute it ourselves
...
Which makes it more accurate
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/172 >
2020-10-23 12:18:40 -03:00
Thibault Saunier
779817cb91
report: Add a way to force backtraces on reports
...
And stop report simple debug message
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/172 >
2020-10-23 12:18:40 -03:00
Xavier Claessens
31efd7a11c
Meson: Use pkg-config generator
2020-09-13 17:32:12 -04:00
Thibault Saunier
c45e2612a9
validate: flow: Plug some leaks
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/219 >
2020-08-14 11:29:06 -04:00
Thibault Saunier
4177f0995e
validate:scenario: Plug some leaks
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/219 >
2020-08-13 21:52:59 -04:00
Tim-Philipp Müller
426f3e96ac
validate: silence g-ir-scanner warnings about GST_IS_VALIDATE_*
...
Which it complains about because we say our prefix is 'gst_validate'
so it should really be GST_VALIDATE_IS_* instead.
Hide the boilerplate defines from g-ir-scanner, it doesn't need
to process them.
Fixes #46
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/214 >
2020-07-27 09:53:16 -04:00
Thibault Saunier
a848fdc464
Revert "validate: fix up gir namespace and symbol prefix"
...
This reverts commit b73e816140
.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/214 >
2020-07-27 09:06:39 -04:00
Tim-Philipp Müller
b73e816140
validate: fix up gir namespace and symbol prefix
...
Change gir namespace and symbol prefix from
GstValidate / gst_validate to Gst / gst, same
as we do for other libs like GstVideo etc.
Helps with warnings about GST_IS_VALIDATE_*
Fixes #46 , Closes !214
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/215 >
2020-07-25 23:17:50 +00:00
Thibault Saunier
bab10bd05f
validate: Fix media descriptor mp3 like formats
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/216 >
2020-07-25 22:51:07 +00:00
Tim-Philipp Müller
56b745f4f8
validate-scenario: reflow #ifdef to work around bogus g-ir-scanner warning
...
Looks like a scanner bug.
The endif comments are the wrong way round too, but that's not it.
gst-validate-scenario.c:126: mismatched #endif /* G_HAVE_GNUC_VARARGS */
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/213 >
2020-07-25 20:29:39 +01:00
Thibault Saunier
4c83b468d6
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 >
2020-06-27 03:54:54 -04:00
Thibault Saunier
ae3a45d1b6
validate: Print errors on action failures
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207 >
2020-06-22 17:20:32 +00:00
Thibault Saunier
7003d692ca
validate: Plug some leaks
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207 >
2020-06-22 17:20:32 +00:00
Thibault Saunier
8650c47cd3
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 >
2020-06-22 17:20:32 +00:00
Thibault Saunier
9c08bfcaca
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 >
2020-06-22 17:20:32 +00:00
Thibault Saunier
e7355ea039
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 >
2020-06-22 17:20:32 +00:00
Thibault Saunier
521245fabd
validate:scenario: Round results of expressions in a sensible way
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207 >
2020-06-22 17:20:32 +00:00
Thibault Saunier
758790ffc9
validate: Add private action type to check number of action type calls
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207 >
2020-06-22 17:20:32 +00:00
Thibault Saunier
800cc245e8
validate:scenario: Avoid dereferencing NULL structure
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207 >
2020-06-22 17:20:32 +00:00
Thibault Saunier
02339bd8bb
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 >
2020-06-22 17:20:32 +00:00
Thibault Saunier
b23cb6236d
validate: Add a way to use the expression parser in any field
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207 >
2020-06-22 17:20:32 +00:00
Thibault Saunier
f7aba41380
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 >
2020-06-22 17:20:32 +00:00
Thibault Saunier
598ec0a5d4
scenario: Add an action to remove a feature/plugin from the registry
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207 >
2020-06-22 17:20:32 +00:00
Thibault Saunier
dda8e7217c
valiadate: Add a test for setting/checking (timed) properties
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207 >
2020-06-22 17:20:32 +00:00
Thibault Saunier
fc440c3ab3
validate:scenario: Add action to set and check several properties at once
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207 >
2020-06-22 17:20:32 +00:00
Thibault Saunier
302e9e1123
validate: Add an action type to set timed value properties
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/207 >
2020-06-22 17:20:32 +00:00
Vivek R
a2bca5de37
validate: flow: record GstRegionOfInterestMeta
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/206 >
2020-06-16 16:23:33 +00:00
Thibault Saunier
f5b44d3128
validateflow: Plug leak
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/205 >
2020-06-10 17:30:34 -04:00
Thibault Saunier
c7630833df
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 >
2020-06-10 17:30:34 -04:00
Thibault Saunier
ec41001c80
scenario: Add an option to set properties on all instances
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/205 >
2020-06-10 17:30:33 -04:00
Thibault Saunier
83ebecef5c
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 >
2020-06-10 17:30:33 -04:00
Thibault Saunier
3b69b73299
validate: Cleanup implementation of appsrc-push
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/205 >
2020-06-10 17:30:33 -04:00
Thibault Saunier
f6e45c8c90
validate: Ensure Scenario isn't NULL when preparing action
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/192 >
2020-06-06 06:00:11 +00:00
Thibault Saunier
88fcc580be
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 >
2020-06-03 11:07:15 -04:00
Thibault Saunier
6a305b1e23
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 >
2020-05-29 21:12:53 -04:00
Thibault Saunier
774a4a8704
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 >
2020-05-29 18:16:23 -04:00
Thibault Saunier
ca8cdfd736
validate: Fix mixup in quarks usages
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/200 >
2020-05-28 17:17:10 -04:00
Thibault Saunier
0f1dffdcc0
validate: Add missing return func when GLib < 2.50
...
CID 1463854
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/200 >
2020-05-28 17:17:10 -04:00
Thibault Saunier
012288910b
validate: Update documentation
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/200 >
2020-05-28 17:17:10 -04:00