Commit graph

563 commits

Author SHA1 Message Date
Luis de Bethencourt
ab65b1e743 validate-utils: clean error handling in _file_get_lines () 2015-05-29 17:40:26 +01:00
Luis de Bethencourt
0cfff156b1 validate-utils: simplify _read_builtin () 2015-05-29 16:47:48 +01:00
Vineeth T M
1e3084aa95 validate-utils: sqrt(-1.0) leads to undefined result
Using sqrt of -1 is not valid and leads to undefined results.
When comparing the return value of the fucntion in validate-scenario,
it is being checked with ret == -1, so it makes sense to just return -1 in error case.

https://bugzilla.gnome.org/show_bug.cgi?id=748389
2015-05-29 15:40:55 +01:00
Thibault Saunier
e832785604 validate:scenario: Make sure to actually test position to execute actions 2015-05-20 14:16:14 +02:00
Thibault Saunier
4829e44147 validate:gtk: Use event->type directly
gdk_event_get_event_type was introduced in Gtk 3.10 only

https://bugzilla.gnome.org/show_bug.cgi?id=749421
2015-05-18 10:15:33 +02:00
Thibault Saunier
817ef82bb0 validate: overrides: Allow using regex for named overrides
Summary:
And minor fixes

Depends on D172

Reviewers: Mathieu_Du, gdesmott

Differential Revision: http://phabricator.freedesktop.org/D173
2015-05-14 15:56:57 +02:00
Thibault Saunier
d90f17a5b1 validate:scenario: Handle action execution after pipeline destruction
Summary:
It is possible to keep executing actions after the pipeline
has been destroyed.

API:
  GST_VALIDATE_ACTION_TYPE_DOESNT_NEED_PIPELINE

Depends on D171

Reviewers: Mathieu_Du

Differential Revision: http://phabricator.freedesktop.org/D172
2015-05-14 15:56:56 +02:00
Thibault Saunier
92732c9f24 validate:scenario: Add a macro to get ActionType from an Action
Summary: Depends on D170

Reviewers: Mathieu_Du

Differential Revision: http://phabricator.freedesktop.org/D171
2015-05-14 15:56:56 +02:00
Thibault Saunier
53628bd7f2 validate:scenario: Factor out code to check position
Summary:
Making simpler to follow the execute_next_action function.

Depends on D169

Reviewers: Mathieu_Du

Differential Revision: http://phabricator.freedesktop.org/D170
2015-05-14 15:56:56 +02:00
Thibault Saunier
0f1f1db171 validate:pipeline-monitor: Stop printing position when not possible
Summary:
If from anything >= PAUSED to anything <= READY we can not query
pipeline position, so do not try to.

Depends on D168

Reviewers: Mathieu_Du

Differential Revision: http://phabricator.freedesktop.org/D169
2015-05-14 15:56:56 +02:00
Thibault Saunier
2ccae6e500 validate:scenario: Rename 'get_position_id' to 'execute_actions_source_id'
Summary: Depends on D167

Reviewers: Mathieu_Du

Differential Revision: http://phabricator.freedesktop.org/D168
2015-05-14 15:56:56 +02:00
Thibault Saunier
319e86c81c validate: Do not unref twice the same list
Summary: Depends on D166

Reviewers: Mathieu_Du

Differential Revision: http://phabricator.freedesktop.org/D167
2015-05-14 15:56:56 +02:00
Thibault Saunier
2e8552eff0 validate:scenario: Add a way to specify the pipeline on which a scenario applies
Summary:
From within the scenario itself.

Depends on D165

Reviewers: Mathieu_Du

Differential Revision: http://phabricator.freedesktop.org/D166
2015-05-14 15:56:56 +02:00
Thibault Saunier
2548eafd11 validate: Avoid depending on Gst 1.4
Summary: Depends on D117

Reviewers: Mathieu_Du

Differential Revision: http://phabricator.freedesktop.org/D165
2015-05-14 15:56:56 +02:00
Thibault Saunier
b5d3622b31 validate: Add a gtk plugins that implements action types relative to Gtk
Summary:
Currently the only supported action is gtk-put-event allowing press and
release keyboard keys.

Reviewers: Mathieu_Du

Differential Revision: http://phabricator.freedesktop.org/D117
2015-05-14 15:56:56 +02:00
Guillaume Desmottes
4927c65710 validate: disable QOS features when running with valgrind
Reviewers: thiblahute

Differential Revision: http://phabricator.freedesktop.org/D156
2015-05-11 21:55:24 +02:00
Guillaume Desmottes
b54a22c9bc validate: move element_has_klass() to utils
Reviewers: thiblahute

Differential Revision: http://phabricator.freedesktop.org/D163
2015-05-11 21:55:24 +02:00
Guillaume Desmottes
2760da33a3 validate: allow to pass more than one file to GST_VALIDATE_CONFIG
Reviewers: thiblahute

Differential Revision: http://phabricator.freedesktop.org/D161
2015-05-11 21:55:24 +02:00
Guillaume Desmottes
e5e7afd86f validate: gst_validate_plugin_get_config() return 'core' conf if plugin is NULL
Reviewers: thiblahute

Differential Revision: http://phabricator.freedesktop.org/D160
2015-05-11 21:55:24 +02:00
Guillaume Desmottes
92fa2b5681 validate: add gst_validate_deinit()
Reviewers: thiblahute

Differential Revision: http://phabricator.freedesktop.org/D159
2015-05-11 21:55:24 +02:00
Guillaume Desmottes
596daaed74 validate: don't leak not maching config structures
Reviewers: thiblahute

Differential Revision: http://phabricator.freedesktop.org/D158
2015-05-11 21:55:24 +02:00
Guillaume Desmottes
c2fef15266 validate: factor out create_config()
Reviewers: thiblahute

Differential Revision: http://phabricator.freedesktop.org/D157
2015-05-11 21:55:24 +02:00
Guillaume Desmottes
63ca026b03 validate: display debug info when stopping because EOS
Summary:
Useful to know if we are executing the 'stop' command provided by the scenario
or not.

Reviewers: thiblahute

Differential Revision: http://phabricator.freedesktop.org/D155
2015-05-11 21:55:24 +02:00
Guillaume Desmottes
0417e47e50 validate: unref last_caps when destroying pad monitor
Reviewers: thiblahute

Reviewed By: thiblahute

Differential Revision: http://phabricator.freedesktop.org/D150
2015-05-07 11:19:57 +02:00
Guillaume Desmottes
c2128e45af validate: initialize position
Summary: Fix invalid read when executing without having the actual position.

Reviewers: thiblahute

Differential Revision: http://phabricator.freedesktop.org/D147
2015-05-06 11:32:30 +02:00
Guillaume Desmottes
4a8d4ddbf6 validate: add 'target-element-klass' property on set-property action
Summary:
This allows us to set a property on all the elements of the pipeline matching
a specific klass name.

Reviewers: thiblahute

Differential Revision: http://phabricator.freedesktop.org/D140
2015-05-04 14:13:45 +02:00
Guillaume Desmottes
316a7bb74d validate: add 'optional' action keyword
Reviewers: thiblahute

Differential Revision: http://phabricator.freedesktop.org/D139
2015-05-04 13:24:21 +02:00
Guillaume Desmottes
d0a02df6e5 validate: scenario: call _element_added_cb() on existing children
Summary:
We want to have a chance to set property on all the elements of the pipelines,
including the existing children when the element is added.

Reviewers: thiblahute

Differential Revision: http://phabricator.freedesktop.org/D138
2015-05-04 13:24:21 +02:00
Guillaume Desmottes
db366e0a37 Fix 'stoped' typo
Reviewers: thiblahute

Differential Revision: http://phabricator.freedesktop.org/D137
2015-05-01 18:19:39 +02:00
Thibault Saunier
9bba59d9ba validate:scenario: Fix 'duration' property of the pause action
We preparse it into and set it as GstClockTime in the
structures so make sure to use them as such.
2015-04-29 13:22:11 +02:00
Guillaume Desmottes
8c4a3de701 move scenarios to data/scenarios
Differential Revision: http://phabricator.freedesktop.org/D115
2015-04-20 15:31:26 +02:00
Guillaume Desmottes
60498f73b3 validate: scenario: fix structure and action leak 2015-04-20 08:35:58 +02:00
Guillaume Desmottes
308fa194a7 validate: report: fix GString leak when early returning 2015-04-20 08:35:58 +02:00
Thibault Saunier
848d660603 validate:pipelinemonitor: Print position only when in state >= PAUSED
Reviewers: Mathieu_Du

Reviewed By: Mathieu_Du

Differential Revision: http://phabricator.freedesktop.org/D86
2015-04-19 11:58:01 +02:00
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