Commit graph

649 commits

Author SHA1 Message Date
Mathieu Duponchelle
c542d9c6bc validate-report / reporter: rework the way we repeat issues.
+ runner: update reports count algorithm.
2014-10-21 20:13:51 +02:00
Mathieu Duponchelle
5690a02e0a pad-monitor: mark the peer pad as EOS too.
When a sink pad gets EOS, its src pad monitor should also
be marked as EOS (helpful with issue concatenation).
2014-10-21 20:13:51 +02:00
Mathieu Duponchelle
0b1d00df25 validate-pad-monitor / runner: Check per-object reporting levels. 2014-10-21 20:13:51 +02:00
Mathieu Duponchelle
167c29125d validate-report: Set conditions in which a report can't be master. 2014-10-21 20:13:51 +02:00
Mathieu Duponchelle
582cebeae6 validate-report: Add a reporting level field and setter. 2014-10-21 20:13:51 +02:00
Mathieu Duponchelle
030e7e8ba8 validate-runner: implement synthetic report.
+ Fix criticals logic in validate_runner_printf
+ Update padmonitor tests
+ Split validate_report_printf function.
2014-10-21 20:13:51 +02:00
Mathieu Duponchelle
1993229993 validate-runner: Implement REPORT_NONE for global reporting.
Yeah that was tough. Helpful already though, for example:
GST_VALIDATE_REPORT_LEVEL=none,x:all gst-validate src name=x ! sink
will only report issues reported by the source.

+ Add test.
2014-10-21 20:13:51 +02:00
Mathieu Duponchelle
0a1cdb2164 tests: Check monitors correctly determine their reporting level.
+ [API] gst_validate_reporter_get_reporting_level
2014-10-21 20:13:51 +02:00
Mathieu Duponchelle
5cb60060dc validate-runner / monitor: Let the user single out pads.
That's some pretty specific code but it should be helpful.
The following syntax can be used : element-name::pad-name.

+ Free return of gst_object_get_name.
2014-10-21 20:13:51 +02:00
Mathieu Duponchelle
b21bb1ff34 validate-runner / reporter: Sanitize reports refcounting.
The previous code worked but was confusing, the runner didn't actually
take the ref it was releasing later.

+ Fix indentation.
2014-10-21 20:13:51 +02:00
Mathieu Duponchelle
de554ba417 tests: Test reports refcounts.
+ Set the element monitor on the element as qdata.
2014-10-21 20:13:51 +02:00
Mathieu Duponchelle
c943a75766 validate-monitor: Determine the reporting level at setup. 2014-10-21 20:13:51 +02:00
Mathieu Duponchelle
1d7f15598f validate-runner: Add code to parse GST_VALIDATE_REPORT_LEVEL.
+ Extend the tests.
+ [API] gst_validate_runner_get_default_reporting_level
+ [API] gst_validate_runner_get_reporting_level_for_name
2014-10-21 20:13:51 +02:00
Mathieu Duponchelle
6ed125bfb1 validate-runner: report-level initial work.
+ Defines reporting levels and document them.
+ Add API to get the default level.
+ fix indentation.
+ fix some typos.
+ Add the beginning of a reporting test.
2014-10-21 20:13:51 +02:00
Mathieu Duponchelle
6e08079f8b validate-pad-monitor: concatenate issues.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=735665

The process is to check for a similar report in intercept_report on
the pads of the upstream element, set that report as the master report
of the intercepted report, and return REPORTER_KEEP instead
of REPORTER_REPORT.
2014-10-21 20:13:51 +02:00
Mathieu Duponchelle
d747e1cd05 test-utils: add a create_and_monitor element function. 2014-10-21 20:13:51 +02:00
Mathieu Duponchelle
f001777cc6 validate-reporter: Add some methods
+ gst_validate_reporter_get_reports
+ gst_validate_reporter_get_reports_count
2014-10-21 20:13:51 +02:00
Mathieu Duponchelle
222a517384 validate-report: Add the notion of master / shadow reports.
A master report is a report that has been detected by a monitor
to stem from the same issue. It thus contains a list of
"shadow reports" which it will browse when printing itself.
2014-10-21 20:13:51 +02:00
Mathieu Duponchelle
b8ac717297 validate-report: Make the ref / unref functions safer. 2014-10-21 20:13:51 +02:00
Mathieu Duponchelle
1fcaf8918f tests/padmonitor: Correcly strdup the result of get_metadata.
The const pointer was becoming invalid after the first call to add_metadata,
and we ended up setting corrupted data on the second call.
2014-10-21 20:13:51 +02:00
Mathieu Duponchelle
3e557ca92b validate-reporter: Add return value to intercept_report.
It will allow to drop, keep or report reports.
2014-10-21 20:13:51 +02:00
Mathieu Duponchelle
6104701268 validate-pad-monitor: Reimplement reporter interface.
+ Do nothing there for now, except chain up.
2014-10-21 20:13:51 +02:00
Mathieu Duponchelle
fb90aa2ead validate-reporter: add gst_validate_reporter_get_report.
+ Add locking.
2014-10-21 20:13:51 +02:00
Thibault Saunier
1cc89414f1 Back to development 2014-10-20 13:38:20 +02:00
Thibault Saunier
ad415424a1 Release 1.4.0 2014-10-20 13:24:29 +02:00
Thibault Saunier
26ef55d622 validate: Print position if it could properly be queried
Otherwize we will print meaningless garbage.
2014-10-13 16:30:05 +02:00
Thibault Saunier
4823d998fc validate:launcher: Minor enhancement in the documentation 2014-10-13 10:32:07 +02:00
Thibault Saunier
99045f7dbb validate: Rename action type playback_time to playback-time
Keeping backward compatiblity with the old naming
2014-10-12 20:19:42 +02:00
Thibault Saunier
02ab99fcbb validate: Rename gst_validate_add_action_type to gst_validate_register_action_type
The _register naming corresponds much better to what the method does
and makes it more similar to how we refer to this kind of action in
GStreamer.

It is a last minute API change, but that API should not change anymore
after 1.4 is released.
2014-10-12 20:10:19 +02:00
Thibault Saunier
9158bb36e3 validate: Fix the addition of playback_time in the parameter types 2014-10-12 20:00:03 +02:00
Thibault Saunier
8289f64904 validate: Rename --list-action-types to --inspect-action-type
Making clearer the meaning of the parameter and closer to the
usual naming in the GStreamer land.
2014-10-12 19:46:39 +02:00
Thibault Saunier
ce87de95ea validate: Add the 'flags' for the seek action type
This was always a mandatory field but was not documented
2014-10-12 19:16:08 +02:00
Anuj Jaiswal
83c0453d81 validate: mishandled pointer criticals
Free glist of criticals

Signed-off-by: Anuj Jaiswal <anuj.jaiswal@samsung.com>

https://bugzilla.gnome.org/show_bug.cgi?id=736313
2014-10-09 20:38:12 -03:00
Thibault Saunier
17bf802515 validate:docs: Add documentation about the default testsuite 2014-10-01 11:02:17 +02:00
Mathieu Duponchelle
8cfffb4a3a validate-runner: switch to using a GList for the reports.
+ Return a copy of that list in get_reports.
+ update tests.
2014-09-30 11:42:42 +02:00
Mathieu Duponchelle
1f1cf83af8 validate-runner: Hide implementation. 2014-09-30 11:42:42 +02:00
Mathieu Duponchelle
855f141453 gst-validate-runner: Add locking for the reports list. 2014-09-30 11:42:42 +02:00
Thibault Saunier
e7315aa78e Release 1.3.90 2014-09-29 15:37:40 +02:00
Thibault Saunier
b856d5985c validate:launcher: Factorize code to get a MediaDescriptor name for classname
Instead of copy/pasting that code badly
2014-09-12 11:26:48 +02:00
Edward Hervey
490a8f1ed9 validate/docs: Add location of Scenario/Action defines 2014-09-12 10:22:15 +02:00
Anuj Jaiswal
c98f7e7b38 validate: (performance issue)refactor to remove duplicate assignment
Signed-off-by: Anuj Jaiswal <anuj.jaiswal@samsung.com>

https://bugzilla.gnome.org/show_bug.cgi?id=736412
2014-09-12 09:57:05 +02:00
Thibault Saunier
1649b49f1c validate: docs: Always dist the launcher directoty
Fixing make distcheck
2014-09-12 09:57:05 +02:00
Thibault Saunier
332a51d1f0 validate: Get the Runner reports in order of arrival
Making sure they are printed in the right order
2014-09-12 09:57:05 +02:00
Thibault Saunier
7e85c9b0b5 validate: Start a testsuite
Currently implemented tests are:
  * Settup and cleanup on monitor is done properly
  * Some tests in the PadMonitor are done properly, namely:
        - Buffer before segment
        - Buffer outside segment
        - First buffer running time is always 0
        - The Demuxer flow aggregation is properly checked

https://bugzilla.gnome.org/show_bug.cgi?id=736379
2014-09-12 09:57:05 +02:00
Edward Hervey
80de4392ce validate/private: Avoid double typdef
Instead just include required (public and local) header

gst-validate-scenario.h:43:44: error: redefinition of typedef 'GstValidateActionParameter' is a C11 feature [-Werror,-Wtypedef-redefinition]
2014-09-12 09:49:35 +02:00
Thibault Saunier
07391578c9 validate: Make sphinx documentation generation optionnal 2014-09-06 12:37:30 +02:00
Thibault Saunier
3ff59368f0 validate:launcher: Add needed files to build documentation with sphinx 2014-09-06 12:22:48 +02:00
Thibault Saunier
b843ead1f8 validate: launcher: Cleanup and rename apps to avoid '-' in their name 2014-09-06 11:38:38 +02:00
Thibault Saunier
7838f3ebae validate:launcher: Avoid '.' before media file extension in test classnames 2014-09-06 10:02:13 +02:00
Felix Schwarz
1a8b460d23 validate:docs: fix spelling mistakes
https://bugzilla.gnome.org/show_bug.cgi?id=736160
2014-09-05 23:21:21 +02:00