Commit graph

529 commits

Author SHA1 Message Date
Thibault Saunier
86efbffa32 validate:scenario: Stop scenario execution on stop action
And document it properly.

Summary:
The stop action was defined as "setting state to NULL" but
its actual goal is to stop the execution of the scenario. Make sure
that the scenario will not try to execute other actions when that
one has been executed.

Reviewers: Mathieu_Du

Differential Revision: http://phabricator.freedesktop.org/D103
2015-04-17 19:31:07 +02:00
Thibault Saunier
5d6fcb5727 validate: Gracefully handle absence of TAG on streams
Summary: And do not segfault when it happens!

Reviewers: Mathieu_Du

Differential Revision: http://phabricator.freedesktop.org/D99
2015-04-16 13:43:33 +02:00
Guillaume Desmottes
abb9e0ff2a validate: don't pass NULL to gst_caps_copy() 2015-04-16 12:41:25 +02:00
Guillaume Desmottes
36e69f305a validate: use GstMediaDescriptorWriter as log handler
Allow us to catch warnings when running gst-validate-media-check-1.0.
2015-04-16 12:41:25 +02:00
Guillaume Desmottes
2133207113 validate: media-descriptor-writer: fix string leaks 2015-04-16 12:41:25 +02:00
Ramiro Polla
6bb04c037c validate:scenario: Add support for waiting on signals and messages
Reviewers: Mathieu_Du

Differential Revision:
http://phabricator.freedesktop.org/D88
2015-04-13 11:27:02 +02:00
Thibault Saunier
774dbf9346 validate:scenario: Report disabling plugin issues
Summary:
+ typedef GstValidateActionReturn so it can be used in the introspection
+ Add GST_VALIDATE_EXECUTE_ACTION_ERROR_REPORTED which should be used
  to tell Validate that something wrong happened so the sub action
  won't be executed, but that it should not report an error itself
  as it has already been handled in the action function.

Reviewers: Mathieu_Du

Differential Revision: http://phabricator.freedesktop.org/D81
2015-04-10 16:53:41 +02:00
Thibault Saunier
69ca5c69cc validate:scenario: Allow execution of disable-plugin as a config action
Summary:
And fix a bug where config actions were added to the list of action even
if they had already been executed

Reviewers: Mathieu_Du

Differential Revision: http://phabricator.freedesktop.org/D80
2015-04-10 16:53:41 +02:00
Thibault Saunier
5d7403a6a5 validate: Add a method to easily get plugin configuration
Reviewers: Mathieu_Du

Differential Revision: http://phabricator.freedesktop.org/D77
2015-04-10 16:53:41 +02:00
Thibault Saunier
4dce5054de validate:plugins: Add support to all GApplication as a test apps
Summary:
Add a very simple plugin that will allow any GApplication to easily be
used with GstValidate using the LD_PRELOAD feature

Reviewers: Mathieu_Du

Differential Revision: http://phabricator.freedesktop.org/D75
2015-04-10 16:53:41 +02:00
Mathieu Duponchelle
23bb7dfdcc validate: let structs_from_filename be exported.
Summary: It is useful for plugins too

Reviewers: Mathieu_Du

Differential Revision: http://phabricator.freedesktop.org/D74
2015-04-10 16:53:41 +02:00
Thibault Saunier
0159c96ab0 validate:scenario: Update Action.repeat field when needed
Summary: And print the current repeat value of the action that have such a field

Reviewers: Mathieu_Du

Differential Revision: http://phabricator.freedesktop.org/D73
2015-04-10 16:53:41 +02:00
Thibault Saunier
1e6b188d78 validate:scenario: Alway execute a 'quit' action on EOS
Summary: Making scenario more usable with LD_PRELOAD

Reviewers: Mathieu_Du

Differential Revision: http://phabricator.freedesktop.org/D72
2015-04-10 16:53:41 +02:00
Thibault Saunier
460bf61345 validate:scenario: Set the main action structure in fill_structure
Reviewers: Mathieu_Du

Differential Revision: http://phabricator.freedesktop.org/D71
2015-04-10 16:53:40 +02:00
Guillaume Desmottes
2f643bde2c validate: scenario: fix caps leak 2015-03-31 09:45:06 +02:00
Guillaume Desmottes
37d0ea4335 validate: media-descriptor: fix filenode->caps leak 2015-03-31 09:45:06 +02:00
Guillaume Desmottes
c8e6b90f4b validate: pad-monitor: fix caps leak
Don't create othercaps when early returning.
2015-03-31 09:45:06 +02:00
Guillaume Desmottes
625fe7b5df validate: media-descriptor-writer: don't leak info and streaminfo 2015-03-26 15:42:11 +01:00
Guillaume Desmottes
32eac4db44 validate: media-descriptor: fix caps leak
gst_pad_get_current_caps() returns a reffed caps.
2015-03-26 10:32:09 +01:00
Guillaume Desmottes
a35614d108 validate: call gst_bus_remove_signal_watch()
We are supposed to call gst_bus_remove_signal_watch() for each gst_bus_add_signal_watch() call to prevent leaks.
2015-03-23 13:41:03 +01:00
Guillaume Desmottes
6e776b8f0f validate: media-descriptor-parser: fix string leak
_set_content() doesn't actually consume @content so the caller is responsible
freeing it.
2015-03-23 13:41:03 +01:00
Guillaume Desmottes
d9a13b5563 validate: pad-monitor: fix buffers list leak 2015-03-23 13:41:03 +01:00
Guillaume Desmottes
3f0cb5fedf validate: pad-monitor: fix caps leak 2015-03-23 13:41:03 +01:00
Guillaume Desmottes
81a33d5f6a validate: fix a bunch of GstBus leaks 2015-03-23 13:41:03 +01:00
Guillaume Desmottes
2aeaa1b279 validate: report: fix invalid read when destroying Report
Summary:
@report was invalid when we were trying to clear the mutex.

validate: scenario: remove weak pointer when destroying action

Free an invalid read when the scenario is destroyed after the action.

Differential Revision: http://phabricator.freedesktop.org/D44
2015-03-20 15:13:30 +01:00
Guillaume Desmottes
7aa5f85ccd validate: report: fix invalid read when destroying Report
@report was invalid when we were trying to clear the mutex.
2015-03-20 14:49:24 +01:00
Guillaume Desmottes
ba175368d1 validate: scenario: don't borrow @structure in _fill_action()
@structure was borrowed in some code path and wasn't in some other. Make it
clearer, and fix a leak, by always copying it.
2015-03-20 11:39:32 +01:00
Guillaume Desmottes
9691136887 validate: override-registry: fix structs list leak
The list returned by _lines_get_strutures() needs to be deeply freed.
2015-03-20 11:33:01 +01:00
Guillaume Desmottes
a99c13da4b validate: scenario: fix scenarios leak 2015-03-20 11:27:29 +01:00
Guillaume Desmottes
38342dfe2e validate: reporter: fix message leak 2015-03-20 11:25:39 +01:00
Guillaume Desmottes
e9aeca28a8 validate: report: don't shadow the GString variable
We were leaking the GString as it's freed outside of the block.
2015-03-20 11:24:27 +01:00
Guillaume Desmottes
3a275d2212 validate: report: fix GStrv leak 2015-03-20 11:24:04 +01:00
Guillaume Desmottes
7373286968 validate: report: fix GStrv leak
We borrow the content of the GStrv but were leaking the array itself.
2015-03-20 11:23:29 +01:00
Guillaume Desmottes
2778e501c4 validate: move scenarios to validate/scenarios/
https://bugzilla.gnome.org/show_bug.cgi?id=746465
2015-03-20 10:34:48 +01:00
Thibault Saunier
b8c085b319 validate: keep executing actions even after linking up following execution
When linking actions execution without waiting on execution context, then
idle callback should keep being called so following action keep being
executed.
2015-03-13 18:04:42 +00:00
Thibault Saunier
49b2ed5d7a validate:scenario: Rename get_position to execute_next_action
That function was wrongly called and did not correspond to what it
actually does.
2015-03-10 11:32:15 +01:00
Vincent Penquerc'h
3bb6ecd6fa Revert "validate: add non flushing seek support"
This reverts commit 3ff55dcc31.

Regressions on the test server, apparently linked to this patchset.
2015-03-09 18:26:37 +00:00
Vincent Penquerc'h
09988a97bf Revert "validate: use segments to detect success of flushing seeks too"
This reverts commit c47cc7ba90.

Regressions on the test server, apparently linked to this patchset.
2015-03-09 18:26:33 +00:00
Vincent Penquerc'h
d78c20322f Revert "validate: expect a buffer with discontinuity after a seek"
This reverts commit 87064b6994.

Regressions on the test server, apparently linked to this patchset.
2015-03-09 18:26:06 +00:00
Vincent Penquerc'h
87064b6994 validate: expect a buffer with discontinuity after a seek
https://bugzilla.gnome.org/show_bug.cgi?id=744783
2015-03-09 10:06:34 +00:00
Vincent Penquerc'h
c47cc7ba90 validate: use segments to detect success of flushing seeks too
https://bugzilla.gnome.org/show_bug.cgi?id=744783
2015-03-09 10:06:34 +00:00
Vincent Penquerc'h
3ff55dcc31 validate: add non flushing seek support
and a couple scenarios using them

https://bugzilla.gnome.org/show_bug.cgi?id=744783
2015-03-09 10:06:34 +00:00
Thibault Saunier
d5ddeaf8c2 validate:scenario: Handle not mandatory action types
Summary:
There is currently no way to handle the fact that action types
might be handled only by a specific application but not handling
this action types would not cause any difference for the good execution
of the scenario as a whole

Differential Revision: http://phabricator.freedesktop.org/D33
2015-03-05 14:55:39 +01:00
Thibault Saunier
88da04e0a0 validate:report: Allow registering of issue types through the introspection
Fixing annotations and make GstValidateIssue refcounted

We break the ABI in that commit but I do not expect anyone to register
issue type outside GstValidate yet.

Add padding in the structures so we can avoid breaking the ABI again later.
2015-03-04 17:28:50 +01:00
Thibault Saunier
433c8676dc validate:monitor: Do not requiere a GstObject as target
We can work with any GObject and that allows applications to write
monitors for other aspects too
2015-03-04 17:24:52 +01:00
Thibault Saunier
8b261599e4 validate:scenario: Alway execute sub action on action running SYNC
Move methods around to avoid needing on top prototypes
2015-03-03 12:31:37 +01:00
Thibault Saunier
34394b0c7a validate:scenario: Do not execute last sub action twice when ASYNC 2015-03-03 11:33:06 +01:00
Thibault Saunier
7888293f8f validate:scenario: Properly print sub action as if they were main actions 2015-03-03 10:39:52 +01:00
Thibault Saunier
ec27b86fa9 validate: Build the preload so when possible 2015-02-26 11:09:23 +01:00
Thibault Saunier
f3adc999f1 validate:scenario: Fix GstValidateAction ABI adding a private structure
This way we can easily extend the structure and avoid needing using
a union and such
2015-02-19 13:57:30 +01:00