Thibault Saunier
3cfa480eba
valdate:launcher: Do not refer to self in @staticmethod
...
There is no self in there.
2014-07-17 17:04:59 +02:00
Thibault Saunier
d7d1445e67
validate: Add a set-debug-threshold scenario action
...
Allowing users to activate the debug only at the interesting time
2014-07-17 17:04:59 +02:00
Thibault Saunier
cd55381a5f
validate: Add Gst debugging when using gst-validate printing feature
...
Giving usefull debugging informations in the GSt debug logs
2014-07-17 17:04:59 +02:00
Thibault Saunier
f6884a5a54
validate: Do not auto flush pipeline bus
...
We want to see all messages in our async handler
And flush it when we are done.
2014-07-17 12:17:31 +02:00
Thibault Saunier
fcb8a77e17
validate:launcher: Avoid using sync=true on fakesinks
...
Making the test run much faster!
2014-07-16 19:38:01 +02:00
Thibault Saunier
b075646451
validate: Launcher: Print total time spent in the final report
2014-07-16 19:37:35 +02:00
Thibault Saunier
71ae6d3816
validate: Make switch_subtitle_track_while_paused handle states
2014-07-16 18:21:16 +02:00
Thibault Saunier
e07e7cd43e
vaildate: Make disable_subtitle_track_while_paused handle states
2014-07-16 15:47:59 +02:00
Thibault Saunier
ded4bec35a
validate: Make scrub_forward_seeking handle states
2014-07-16 15:47:59 +02:00
Thibault Saunier
f5454f07f0
validate:launcher: Properly check that encoded files have the exact wanted format
2014-07-16 15:47:58 +02:00
Thibault Saunier
fe9ed41d6c
validate:launcher: Add a method to create a GstValidateMediaDescriptor from a uri
2014-07-16 15:47:58 +02:00
Thibault Saunier
265688fcd6
validate:launcher: Move MediaFormatCombination to baseclasses.py
...
+ Add some simple helpers
2014-07-16 15:47:58 +02:00
Thibault Saunier
f1163d61ba
validate:launcher: Implement a GstValidateEncodingTestInterface class
...
Allowing code to be shared between apps that run rendering tests
2014-07-16 15:47:58 +02:00
Thibault Saunier
a735b9eb99
validate:launcher: Implement a MediaDescriptor subclass for xges project files
2014-07-16 15:47:58 +02:00
Thibault Saunier
d61c0d6166
validate:launcher: Make a MediaDescriptor baseclass to be used by any application
2014-07-16 15:47:58 +02:00
Thibault Saunier
89aa70545a
validate:launcher: Give information to users when cloning asset failed
...
It might not be obvious from the stacktrace so it is better to clearly
explain what the failure was when we know it
2014-07-16 15:47:58 +02:00
Thibault Saunier
6beb346aa3
validate:launcher: Fixup the default asset update command
2014-07-16 15:47:58 +02:00
Thibault Saunier
9a69c21acc
validate:launcher: Generate proper EncodingProfiles for audio/video only media files
2014-07-16 15:47:58 +02:00
Thibault Saunier
87cc7da213
validate:launcher: Move the MediaDescriptor class to the baseclasses.py file
2014-07-16 15:47:58 +02:00
Thibault Saunier
58256ab135
validate:launcher: Allow transcoding audio only files 5 time longer than long_limit
...
Transcoding audio is a lot shorter so we can concider that transcoding files that are only
only is 5 time shorter than the actual file (empirical number)
2014-07-16 15:47:58 +02:00
Thibault Saunier
f925c0c1be
validate:media-check: Pass the GError where needed.
2014-07-16 15:47:58 +02:00
Thibault Saunier
822c7eaa6e
validate: Avoid segfault in the error path
2014-07-16 15:47:58 +02:00
Thibault Saunier
f8a37a1c80
validate:media-descriptor-writer: Handle medias with 1 single stream
2014-07-16 15:47:58 +02:00
Thibault Saunier
fa35a10779
validate: Check that after a seek in PAUSED position is perfect
...
In case of ACCURATE seeking, the position after a SEEK in PAUSED state
should be *exactly* the one requested by the user.
2014-07-16 15:47:58 +02:00
Thiago Santos
db21883c0c
scenario: add set_property scenario action
...
Allows setting element's properties during a scenario. Very useful
for testing that elements behave correctly when changing properties
during playing state
https://bugzilla.gnome.org/show_bug.cgi?id=733070
2014-07-11 19:43:20 -03:00
Thibault Saunier
bed0f51d6c
validate: Execute actions if we get seeked in ready state
2014-07-07 11:27:35 +02:00
Thibault Saunier
87ae465c77
validate: Let scenarios tell the apps about whether it handles states
...
The user only needs to add handles-states=true in the description line
of the scenario
2014-07-07 11:27:34 +02:00
Thibault Saunier
52e39a4fcb
validate:scenario: Do not care about the position if we are not at least in PAUSED state
...
At that time the position query will be meaningless so we should just go to the next
action.
2014-07-07 11:27:34 +02:00
Thibault Saunier
4227655db1
validate: Handle MXF files
2014-07-07 11:27:34 +02:00
Thibault Saunier
1c2d31dd2f
validate:media-check: Changes in tags detection are not fatal issues
2014-07-07 11:27:34 +02:00
Thibault Saunier
7d23d75edb
validate:launcher Add video mixing tests
...
+ Move default_testsuite.py to validate_testsuite.py as we are now
exposing tests that are not enabled by default
2014-07-07 11:27:34 +02:00
Thibault Saunier
af383ad0c0
validate:launcher: Move the notion of test generator to the baseclasses
...
This can be very usefull for all the TestManager and thus exposes a
higher level API for test writers.
2014-07-07 11:27:34 +02:00
Thibault Saunier
aeec108c88
validate:launcher: Move default testsuite to a dedicated file
...
Making the separation cleaner between the launcher and the test
implementation
2014-07-07 11:27:34 +02:00
Thibault Saunier
00719fb07e
validate: Properly handle CLOCK_TIME_NONE position and duration values
...
In the value parser.
2014-07-07 11:27:34 +02:00
Thibault Saunier
3607fd8deb
validate: Print the return value at the end
...
Making it easier to know whether the test passed or not.
2014-07-07 11:27:34 +02:00
Thibault Saunier
f708156ff6
validate:scenario: Move the check about whether we are still seeking upper in the function
...
Avoiding to try to get position and do operations on a pipeline that is seeking
2014-07-07 11:27:34 +02:00
Vincent Penquerc'h
4dc3f5171e
validate-scenario: only use valid position/duration
...
Position/duration query may fail, or yield unknown values (eg,
unknown duration for live streams). In these cases, we must ensure
we do not use those invalid values.
https://bugzilla.gnome.org/show_bug.cgi?id=715160
2014-07-07 11:27:34 +02:00
Thibault Saunier
71cd2a8ce7
validate:launcher: Not concider all scenarios by default with --wanted-test
...
Instead let the users activate that with -t ALL
2014-07-07 11:27:34 +02:00
Thibault Saunier
5266fee48c
validate:launcher: Let the user set user options in the config file
2014-07-07 11:27:34 +02:00
Thibault Saunier
b9389c85c2
validate:launcher: Use RawTextHelpFormatter to (not) format user help
2014-07-07 11:27:34 +02:00
Thibault Saunier
f10ff2b610
validate:launcher: Add a way to create test suite outside the three
...
+ Make sure to namespace the API
+ Remove cruft about G_V_PROTOCOL_VIDEO_RESTRICTION_CAPS
2014-07-07 11:27:34 +02:00
Thibault Saunier
150c5bc6b2
validate:scenario: We are not changing state if the set_state failed.
2014-07-07 11:27:34 +02:00
Thibault Saunier
b3a168ed73
validate:scenario: Add a debug category and add some debug
2014-07-07 11:27:34 +02:00
Thibault Saunier
a4d3971709
validate: media-descirptor: Add more infos about discoverer error
2014-07-07 11:27:34 +02:00
Thibault Saunier
5983df47c5
validate:launcher: Cleanup the way we generate tests adding the notion of TestGenerator
...
Making it easier to extend the testsuite.
2014-07-07 11:27:34 +02:00
Thibault Saunier
5c85e4500d
validate:tools: Dot the pipeline on usefull places
...
Meaning on warning and state changes.
2014-07-07 11:27:34 +02:00
Sebastian Dröge
b6c439ee88
validate: Don't call gst_debug_log_valist() if debugging is disabled
...
And also stop leaking a string every time.
2014-06-28 12:33:45 +02:00
Sebastian Dröge
3ecd8352eb
gst-validate: Add $(GIO_LIBS) and $(GIO_CFLAGS) as required
2014-06-28 11:36:27 +02:00
Thibault Saunier
bbe56a4fd9
validate: Fix launcher when running installed
2014-06-17 15:10:41 +02:00
Thibault Saunier
c7c879fc1c
validate: scenarios: Install play_15s.scenario
2014-06-17 14:17:21 +02:00
Thibault Saunier
4f01b2bd8a
validate:launcher:reporter: Sort Final report by results
2014-06-16 16:47:18 +02:00
Thibault Saunier
b8e1c3e64c
validate:launcher:ges: Fix rendered duration checking
2014-06-16 16:46:21 +02:00
Thibault Saunier
e847d7061a
validate: pad-monitor: Do not compare not fixed sinkpad caps fields
...
We are only able to check that the sink pad caps values are inside the src pad
value.
2014-06-16 16:43:02 +02:00
Thibault Saunier
93d9032712
scenario: Do not be so tolerant about seek drift
2014-06-16 08:56:30 +02:00
Edward Hervey
0693805e9c
pad-monitor: Handle out-of-segment first buffer
...
If the initial buffer is before segment.start, we don't want to raise
the "first buffer doesn't have 0 running-time" issue.
Also add debug for tracking issues
2014-06-03 10:05:25 +02:00
Edward Hervey
ca44a11429
validate: Run gst-indent on all code
...
so whitespace. much indent. spacing !
2014-06-03 10:05:25 +02:00
Thibault Saunier
90f5dae534
validate: Depend at least on GLib 2.36
2014-05-27 12:33:08 +02:00
Thibault Saunier
0bde7bcacb
validate: Add a scrub_backward_seeking scenario
...
+ Make use of it in ges-launch and do not try to seek while playing in
GES as it is not supported yet
2014-05-27 12:33:08 +02:00
Nicolas Dufresne
fea3893686
validate: Don't pass NULL to g_strsplit
2014-05-24 01:28:36 -04:00
Edward Hervey
ebde58f1d1
validate-utils: Fix unitialized variable
...
gst-validate-utils.c:413:7: error: variable 'v0' is used uninitialized whenever 'if' condition is true [-Werror,-Wsometimes-uninitialized]
if (c == '!') {
^~~~~~~~
gst-validate-utils.c:424:10: note: uninitialized use occurs here
return v0;
^~
gst-validate-utils.c:413:3: note: remove the 'if' if its condition is always false
if (c == '!') {
^~~~~~~~~~~~~~~
gst-validate-utils.c:411:13: note: initialize the variable 'v0' to silence this warning
gdouble v0;
^
= 0.0
1
2014-05-22 16:13:31 +02:00
Thibault Saunier
1a2f4a3cd3
validate: Move overrides and preload libraries to dedicated folders
...
This way it is cleaner and it is simpler to handle the various compilation dependencies.
2014-05-21 12:00:26 +02:00
Lubosz Sarnecki
1043aa3f55
python: change shebangs to python2
2014-05-19 10:21:07 +02:00
Thibault Saunier
9660a8bd3a
validate: Properly use boolean in XML
2014-05-15 09:46:24 +02:00
Thibault Saunier
92d390bc5d
validate: Improve perf when writing the XML file
...
+ Pass the file into gst-indent
2014-05-08 17:48:39 +02:00
Thibault Saunier
dae0c4ef81
validate: Add a scenario that switches state many intensively
...
+ Use it by default in the launcher tests
2014-05-07 16:45:27 +02:00
Thibault Saunier
384686a7f7
validate: Minor fix for blacklisted test output formatting
2014-05-07 12:44:51 +02:00
Thibault Saunier
0b4bd7940a
validate:launcher: Add an option to only launch the http server
2014-05-07 12:44:51 +02:00
Thibault Saunier
8a295da795
validate: Keep scenario discovering logs in a file
2014-05-07 12:44:51 +02:00
Thibault Saunier
7590148e20
validate: Avoid using stop value in the fast_forward scenario
2014-05-07 12:44:39 +02:00
Thibault Saunier
720b9eff47
validate: Properly check that outputed videos have a correct duration
2014-05-07 11:30:39 +02:00
Thibault Saunier
cdb8822ae3
validate: Add the notion of "long" tests so that we can avoid some test to be run if they are too long
2014-05-07 11:30:09 +02:00
Thibault Saunier
ac6e463009
scenario: Add a general action to set state
2014-05-07 09:51:19 +02:00
Thibault Saunier
08898ff219
validate: Properly set the pre commit hook
2014-05-07 09:50:28 +02:00
Thibault Saunier
7d55065277
validate:scenario: Pass into gst-indent
2014-05-07 09:46:28 +02:00
Thibault Saunier
cd8000994b
validate: The wait mandatory field is duration
2014-05-07 09:15:34 +02:00
Thibault Saunier
0aff591b2f
validate: Make sure mandatory fields are present when parsing scenarios
2014-05-07 09:11:12 +02:00
Mathieu Duponchelle
7d4abf31e7
scenarios: add a stateless property.
...
This property enables the user to have actions executed independently
of the state of the pipeline.
Conflicts:
validate/gst/validate/gst-validate-scenario.c
2014-05-06 15:37:26 +02:00
Mathieu Duponchelle
1332e9fc4f
scenario: make sure to not execute actions when changing state.
...
Conflicts:
validate/gst/validate/gst-validate-scenario.c
2014-05-05 17:21:06 +02:00
Thibault Saunier
49ab41743b
validate: The 'buffering' variable needs to be static
...
We need its value between bus_callback calls to be the same
2014-05-04 09:30:16 +02:00
Luis de Bethencourt
eabcf8f106
gst-validate: some static variables can be local
...
buffering is only used inside the bus_callback, so it can have that local
scope. same thing with ret which is only used in the main function.
2014-05-02 17:25:07 -04:00
Luis de Bethencourt
0b01b578ce
gst-validate: small typo in usage summary
2014-05-02 16:53:51 -04:00
Thibault Saunier
aceba228ce
validate: Wait for the PAUSED state to be reached before executing actions
2014-05-02 20:05:28 +02:00
Thibault Saunier
bb42d287e7
validate: Fix the name of the sintel blacklisting
2014-05-02 19:00:49 +02:00
Thibault Saunier
15cceffcf1
validate: Add a scenario to disable subtitle track while paused
2014-05-02 18:50:41 +02:00
Thibault Saunier
fbcee57902
validate: Implement frame by frame writing in the media descriptor writer
...
+ Add an option to fully parse media files in the gst-validate-media-check tool
2014-05-02 18:30:23 +02:00
Thibault Saunier
ba38d09961
validate: Execute position right when the pipeline reaches PAUSED
...
We might go to PAUSED SYNC if nothing happens in the pipeline
2014-05-02 18:30:23 +02:00
Thibault Saunier
5d200f8819
validate: Add a scenario that disable subtitles
...
+ Clean the sythax to define switch-track action that actually
desactivate the track
2014-05-02 18:30:23 +02:00
Thibault Saunier
efb40d9778
validate: Do not execute action when buffering
...
While buffering we should no try to execute anything as we would not be
controlling properly the execution.
+ Activate scrub forward seeking for HTTP streams
2014-05-02 18:30:23 +02:00
Thibault Saunier
867bfec188
validate: Add a scenario that switches subtitle track while paused
...
+ Integrate it in the launcher
2014-05-02 18:30:23 +02:00
Thibault Saunier
872472feb3
validate:launcher: Sensibly simplify scenario handling
2014-05-02 18:30:23 +02:00
Thibault Saunier
b37fafa1e6
validate: Plug a minor leak
2014-05-02 18:30:23 +02:00
Thibault Saunier
9c5009c724
validate: Use ges-launch recursing path new feature
...
And fix path to URI conversion
2014-05-02 18:30:23 +02:00
Thibault Saunier
2077e76aa2
validate: Add a gst-validate-launcher documentation
2014-05-02 18:30:23 +02:00
Thibault Saunier
447b299dab
validate:launcher: Port OptionParser to ArgParse
2014-05-02 18:30:23 +02:00
Thibault Saunier
5e2b577372
validate: Can not do reverse playback on sintel sample
...
+ Minor improvement in the CLI
2014-05-02 18:30:23 +02:00
Thibault Saunier
97482e2512
validate:launcher: Do not except meaningless argument in ges-launch
2014-05-02 18:30:23 +02:00
Thibault Saunier
804cdb5ad2
validate: Handle per file special scenarios
...
When a file is int the same folder as a media file and has a name like:
mediafilename.mkv.scenarios_name.scenario we run that scenario on that
particular file
2014-05-02 18:30:23 +02:00
Thibault Saunier
1ffb6b4e1c
validate: Allow specifying scenarios to parse when lisiting them
...
It used to only handle the scenario present in proper paths, we
also need to handle special scenarios provided by users on the fly
2014-05-02 18:30:22 +02:00
Thibault Saunier
f165fb41d0
validate: Handle ERROR on the bus when monitoring the pipeline
...
This way the user get a clear information in the report about the issue
+ sensibly cleanup code
2014-05-02 18:30:22 +02:00
Thibault Saunier
da42500df7
validate: Add a scenarios that switchs subtitle track
...
+ Make it easier and cleaner to tell that a switch is actually disabling
a track type.
And run the scenario in gst-validate-launcher by default
2014-05-02 18:30:22 +02:00
Thibault Saunier
3281add6b5
validate: Add a switch_audio_track_while_paused scenario
...
And run it as a default
2014-05-02 18:30:22 +02:00
Thibault Saunier
a62560bc81
validate: Add an action to set an external URI file on playbin at runtime
2014-05-02 18:30:22 +02:00
Thibault Saunier
2a9e0824b2
validate: Override switch_track action when using a playbin
...
And use the playbin feature for that when the pipeline is based on playbin
2014-05-02 18:30:22 +02:00
Thibault Saunier
3a1db22188
validate: Do not g_strrstr with a NULL pointer as needle
2014-05-02 18:30:22 +02:00
Thibault Saunier
3402d5556a
validate: Print more details when executing the switch_track action
...
+ Fix some issue in the memory freeing codepath of GstValidateAction
2014-05-02 18:30:22 +02:00
Thibault Saunier
93bd46dbc2
validate: Do not try to use a NULL iter
2014-05-02 18:30:22 +02:00
Thiago Santos
385d6d4ccd
pad-monitor: check that no buffers are pushed after a pad is EOS
...
Make sure no resources are wasted after elements are done with the
current segment
2014-05-02 12:07:53 -03:00
Thibault Saunier
28bd6ee17a
launcher: Now using git annex to handle media files
2014-04-28 13:08:17 +02:00
Thibault Saunier
676602644c
validate: Expose a seeking method so other actions types can seek
...
Other action types might need to seek and we GstValidateScenario need
to know about it, add a method others can use to do the seeking
2014-04-26 09:52:37 +02:00
Thibault Saunier
a3a132489a
Revert "validate:launcher: Always put gst-validate result as stderr in reports"
...
This reverts commit 925ff7542b
.
Actually jenkins never truncates on failure stacktrace... we do not
want to set gst-validate as failure stacktrace in our results. That
commit was not usefull.
2014-04-26 09:16:26 +02:00
Thibault Saunier
925ff7542b
validate:launcher: Always put gst-validate result as stderr in reports
...
This way jenkins will always keep the information in its database even
if the test passes
2014-04-26 08:11:20 +02:00
Thibault Saunier
4f920dc405
validate: Pass -scenario.c into gst-indent and fix some docs
2014-04-25 18:33:33 +02:00
Thibault Saunier
0c4216d005
validate: Add a "dot-pipeline" action
2014-04-25 18:27:30 +02:00
Thibault Saunier
eb4a70a263
validate: Return a boolean when parsing an enum string
2014-04-25 18:26:50 +02:00
Thibault Saunier
8852633dfc
validate:scenarios: Prefer stop action instead of EOS when appropriate
2014-04-25 14:51:28 +02:00
Thibault Saunier
bd936dae4c
validate:launcher: Properly set error message when sending EOS did not work
2014-04-25 14:51:28 +02:00
Thibault Saunier
da6dc3882b
validate:launcher: Add a way to specify tests filtering only on defaults
2014-04-25 14:51:28 +02:00
Thibault Saunier
be72ec5f6a
validate:launcher: Add support for audio track switching scenario
2014-04-25 14:51:28 +02:00
Thibault Saunier
8b4542540c
validate:launcher: Make it possible to run any scenario test in gst-validate
2014-04-25 14:33:06 +02:00
Thibault Saunier
8035094128
validate:launcher: Do not run reverse playback on mpegts files
2014-04-25 14:33:06 +02:00
Thibault Saunier
fba15f71c6
validate:launcher: Cleanup media descriptor usage
2014-04-25 14:33:06 +02:00
Thibault Saunier
81b0c74bfa
validate:launch: Port to the new media_info format
2014-04-25 14:33:06 +02:00
Thibault Saunier
d280d0dbc9
validate: Add a media-descriptor parser and writer
2014-04-25 14:33:06 +02:00
Thibault Saunier
f6c6043317
validate: Minor printing cleanup
2014-04-25 14:33:06 +02:00
Thibault Saunier
2d7d03d2f7
validate: Add a 'stop' action to stop a pipeline
...
It uses the GST_MESSAGE_REQUEST state with the scenario as a source
so that application can stop running when they receive it on the bus.
2014-04-25 14:33:06 +02:00
Thibault Saunier
7133e4b4e0
validate:launcher: Use the new validatelog file
...
Making the output cleaner and clearer in junit XML file
2014-04-25 14:33:06 +02:00
Thibault Saunier
38eda37341
validate: Handle position printing at the monitor level
...
Instead of replicating that code all around
2014-04-23 11:27:44 +02:00
Thibault Saunier
810e432da2
validate: Add printing utilities
...
Allowing the user to print everyting in a file through the
GST_VALIDATE_FILE env variable
2014-04-23 11:16:32 +02:00
Thibault Saunier
cac53e9078
validate: Add an action to wait for a given amout of time
...
During that time we will just not execute any new action
+ Lower WARNING to DEBUG when no playbcak_time is provided for an
action, it should just be 0.
2014-04-23 09:37:22 +02:00
Thibault Saunier
21a4888ae7
validate: Check that for raw, buffers are strictly contained in segment
...
For encoded data we might need buffers that have timestamp <
segment.start to make sure that we have the keyframe, etc... but for raw
data, buffer end should strictly be inside the segment, be more strict
about that.
2014-04-22 16:57:21 +02:00
Thibault Saunier
8527d91737
validate: PAR is not a mandatory field
...
Also make it possible to check other not mandatory fields in the future
2014-04-22 16:57:21 +02:00
Thibault Saunier
279625a541
validate: Do not use GST_PTR_FORMAT when reporting
...
It will not work now that we have our own implementation of printf for that in Gst and
thus provide us with pretty useless infos
2014-04-22 16:57:21 +02:00
Thibault Saunier
02abb60a67
validate:launcher: Send SIGINT signal instead of killing the subprocess
...
This way we get the result from GstValidate even on timeouts
2014-04-22 10:49:13 +02:00
Thibault Saunier
7f54c5dba8
validate:launcher: Always set sync=True on fakesink on playback pipelines
...
This way we are in closer condition of real sink playback.
+ some minor cleanup in gst-validate.c
2014-04-22 09:42:59 +02:00
Thibault Saunier
bbbd5fe2d0
validate:launcher: ring-buffer-max-size is in bytes
2014-04-17 12:58:48 +02:00
Thibault Saunier
ad25b4d160
validate: Handle g_log errors at the gst-validate level
2014-04-17 12:23:04 +02:00
Thibault Saunier
8899ad004c
validate: Allow comments in scenario files
...
Comment are per line only and start with #
2014-04-17 11:23:27 +02:00
Thibault Saunier
f45524a3cc
validate:launcher: Fix default blacklist management
2014-04-15 15:26:36 +02:00
Thibault Saunier
f1851235d5
validate:launcher: Print the number of the test being run
2014-04-02 19:17:24 +02:00
Thibault Saunier
6104ed184f
validate: Avoid segfault when discovering fails
...
In that case the x->stream_info might not be set
2014-04-02 19:17:24 +02:00
Thibault Saunier
86df60e16f
validate:launcher: Fix mixup in media_check tests expected file path
2014-04-02 12:12:11 +02:00
Thibault Saunier
78f91ae8da
validate:launcher: Flush stdout each time we print
...
So everything gets printed on time on windows and jenkins
2014-03-31 14:37:51 +02:00
Thibault Saunier
36a0f6a674
validate: launcher: Use the ConfigPraser object everywhere for file_infos
2014-03-31 11:03:48 +02:00
Thibault Saunier
3d8201d52b
validate:launcher: Properly handle missing scenarios on the system
2014-03-28 15:41:30 +01:00
Thibault Saunier
339703d2eb
validate:launcher: Handle windows path to construct arguments
2014-03-28 15:00:45 +01:00
Thibault Saunier
bc40235600
validate:launcher: Handle the fact that win32 apps end with .exe
2014-03-28 15:00:01 +01:00
Thibault Saunier
7e1c83b5b9
validate: Do not build LD_PRELOAD related code on windows
...
And do not forget to link against gst-pbutils
2014-03-28 12:17:25 +01:00
Thibault Saunier
083d303d69
validate: Use GModule to 'dlopen' ovverrides
...
We want gst-validate to be cross platform so use cross platform tools
2014-03-28 10:40:19 +01:00
Thibault Saunier
3408869f49
validate:launcher: Put gst logs in a specific file
...
+ Make default timeout 30seconds just in case.
2014-03-28 10:40:19 +01:00
Thibault Saunier
8fdf84b084
validate: launcher: Let the use debug on test fail
...
When a test timeouts, let the user know about the subprocess etc,
and let him possibly connect gdb to it.
2014-03-26 20:08:43 +01:00
Thibault Saunier
870df6e4e2
validate:launcher: Do not set sample path to letter in ges-launch
2014-03-26 11:46:48 +01:00
Thibault Saunier
5510b96639
validate:launcher: Start the server only when actually needed to run filtered tests
2014-03-26 11:00:32 +01:00
Thibault Saunier
ff4879c749
validate: Do not query pad caps to check if caps are properly fowarded
...
Query caps will actually get the caps from downstream and those caps
might be different in case there is a Filter in between. What we want is
to check that the caps set on the internally linked pads are correct.
2014-03-26 10:57:04 +01:00
Thibault Saunier
36f9ba8f52
launcher: Allow user to set media-files directory
...
That was broken by 71dee6c384
2014-03-19 18:43:38 +01:00
Thibault Saunier
6d8ff8a92a
tools:validate: Start printing position on ASYNC_DONE
...
As this is what is done in the scenarios.
2014-03-19 17:45:36 +01:00
Edward Hervey
12ccebe0a9
launcher: Don't hardcode option defaults
...
Since they are relative to other options, we need to post-process them
to get the proper value.
Fixes using the launcher with non-default MAIN_DIR
2014-03-19 18:09:09 +01:00
Edward Hervey
c39a44441e
launcher: Warn if MAIN_DIR isn't present
...
And move blacklist file listing to further down
2014-03-19 17:13:14 +01:00
Edward Hervey
e62a2ce4c4
launcher: No need to start a web server when listing tests
...
It's not needed and makes listing faster.
Also sort the list of tests
2014-03-19 17:04:14 +01:00
Edward Hervey
71dee6c384
launcher: --sync: Only update/clone git repo if specified
...
Allows:
* handling non-git-based asset directory
* working offline
* working without forcing updates
2014-03-19 17:03:05 +01:00
Edward Hervey
34a5946e6b
validate-scenario: Handle non-set env variable
...
Nothing guarantees it's present/set
2014-03-19 17:02:03 +01:00
Thibault Saunier
50d3d08ab5
validate:scenario: Do not be strict about position after not accurate seek
2014-03-12 15:23:33 +01:00
Thibault Saunier
fbf787889f
validate:scenario: Cleanup output and pass into gst-indent
2014-03-12 14:24:02 +01:00
Thibault Saunier
1bc0a687ee
validate:scenario: Cleanup output of --list-scenarios
2014-03-12 12:21:38 +01:00
Thibault Saunier
e355a17f71
validate: scenario: Load scenario if the name is actually a path to a file
2014-03-12 12:04:52 +01:00
Thibault Saunier
e75e7df0ac
validate: tools: Fix path to media folder
2014-02-19 14:39:30 +01:00
Thibault Saunier
07b968a4f6
validate:tools: Clean test between runs when running forever
2014-02-19 14:34:10 +01:00
Thibault Saunier
f6bf92cbc9
validate: Do not check result furthers if alredy set as passing
2014-02-19 14:34:10 +01:00
Thibault Saunier
33aae792f6
validate:scenario: Pass into gst-indent
2014-02-19 14:34:08 +01:00
Thibault Saunier
5e0e092112
validate: Add actions to the actions list only when they are fully parsed
...
Otherwize in some corner cases they can be executed before they are actually parsed
2014-02-19 14:32:47 +01:00
Thibault Saunier
2f44d15e0b
validate: Ignore EOS actions that can not be executed
2014-02-19 14:32:47 +01:00
Thibault Saunier
68cbc15f35
validate: Handle various paths in GST_VALIDATE_SCENARIOS_PATH
2014-02-18 21:07:31 +01:00
Thibault Saunier
63f8034bec
validate:scenario: Make GstValidateAction a GstMiniObject
2014-02-18 21:07:31 +01:00
Thibault Saunier
04029cb065
validate: Move enums and flags deserialization from scenario to utilities
...
This way it can be reused.
2014-02-18 21:07:31 +01:00
Thibault Saunier
5cfafb4910
validate:scenario: Make the pipeline puiblic
...
This way people can access it from outside the main action implementation.
2014-02-18 21:07:31 +01:00
Thibault Saunier
1189c48ff8
validate:launcher: Avoid running useless tests
...
For example we should not check if duration are equal when transcoding
with scenario set.
Also checking if position is in the seeked segment should be done at
a lower level
2014-02-18 21:07:31 +01:00
Thibault Saunier
d377158b42
validate:launcher: Avoid seeking in output files to parse them
...
Tihs creates issue and missing content.
2014-02-18 21:07:31 +01:00
Thibault Saunier
32d9d5dc44
validate:launcher: Properly classify test for media check
2014-02-18 21:07:31 +01:00
Thibault Saunier
0449817c11
validate:launcher: Handle issue with unknown framerate in HLS while transcoding
2014-02-18 21:07:31 +01:00
Thibault Saunier
c3adb05b2a
validate:tools: Handle cases were EOS does not stop the pipeline in the launcher
...
+ Fix parsing of GstClockTime
+ Avoid using play_15s scenario when not necessary
2014-02-18 21:07:31 +01:00
Thibault Saunier
90d9a686d7
validate: tools: Use the new scenario discovering fearure in the launcher
2014-02-18 21:07:31 +01:00
Thibault Saunier
ba717f6237
validate: Update all scenario to use the new description feature
...
+ Fix minor issues in scenario files
2014-02-18 21:07:31 +01:00
Thibault Saunier
4467b27b9f
validate: Add a way to save details about avalaible scenarios in a file
2014-02-18 21:07:31 +01:00
Thibault Saunier
9e66ac00f6
validate: Add a way to add a "description" to scenario files
...
Print details about the descriptions when listing scenario in a KeyFile
format
The description can contain any information about the scenario such as its duration before
EOS, how long the pipeline needs to be so the scenario can be applied...etc
2014-02-18 21:07:31 +01:00
Thibault Saunier
efc6938d01
validate: tools: Init gst-validate before listing scenarios
...
And return 0 when only listing scenarios
2014-02-18 21:07:31 +01:00
Thibault Saunier
6ab7f17386
validate:scenario: Handle backslashes in scenario files
2014-02-18 21:07:31 +01:00
Thibault Saunier
904cdd6411
validate:tools: Rework the way we handle options
...
Make groups so it is easier for users to find what they look for
By default have 1 single directory where everything is oututed
(main-dir)
Add a way to specify how and where to look for remote assets
2014-02-18 21:07:31 +01:00
Thibault Saunier
ead3eb98a4
validate:tools:launcher: Take into account the position value when rendering
...
When rendering a files we try to use the size of the outputed file to
determine wether we are timeout or not, but if that fails
try to check the position
2014-02-18 21:07:31 +01:00
Thibault Saunier
10c192f693
validate: Better organize rendered files
2014-02-18 21:07:31 +01:00
Thibault Saunier
ca12b78be3
validate:tools: Use regex for parsing when appropriate
2014-02-18 21:07:31 +01:00
Thibault Saunier
df712e9404
validate:toold: Add a --output-dir parametter
2014-02-18 21:07:31 +01:00
Thibault Saunier
27e3758918
validate:tools: Keep file extension in test classnames
...
+ add test "namespace" in transcoded files
2014-02-18 21:07:31 +01:00
Thibault Saunier
2718923ae5
validate:tools: Add a class to back pipeline creation in gst-validate
2014-02-18 21:07:31 +01:00
Thibault Saunier
5927a6d8d8
validate:tools: Define supported protocols in an enum
2014-02-18 21:07:31 +01:00
Thibault Saunier
2f689fab73
validate: toold: Properly define scenario properties
2014-02-18 21:07:30 +01:00
Thibault Saunier
cd18609763
validate: Rename simple_backward to reverse_playback as this is what it does
2014-02-18 21:07:30 +01:00
Thibault Saunier
1ecd26eef6
validate:tools: Add namespace in apps global variables
...
Avoiding conflicts
2014-02-18 21:07:30 +01:00
Thibault Saunier
932fcaf9b8
validate:tools: Allow user to append paths to medias
2014-02-18 21:07:30 +01:00
Thibault Saunier
5e96c79000
validate:tools: Make use of the new seek_with_stop scenario
2014-02-18 21:07:30 +01:00
Thibault Saunier
cd098eb28c
validate:tools: Implement the logic of validate ouput parsing in the baseclass
...
+ Add some logic to check that we are mot playing outside wanted segment
2014-02-18 21:07:30 +01:00
Thibault Saunier
2c52d6374c
tools:validate: Make default blacklist handled by managers themselves
2014-02-18 21:07:30 +01:00
Thibault Saunier
7eb1ebde6d
validate: data: Avoid using seek.stop time when not necessary
...
Instead send an EOS.
And add a seek_with_stop scenario to test that particular feature
2014-02-18 21:07:30 +01:00
Thibault Saunier
7ab0447227
validate:tools: Only discover files with media-check
2014-02-18 21:07:30 +01:00
Thibault Saunier
a406ebb4c2
validate:tools: Add a 'discover-only' option to media-check
2014-02-18 21:07:30 +01:00
Thibault Saunier
a61ebe671e
data: Let playback until the end on last seek of seek_forward if duration < 30s
2014-02-18 21:07:30 +01:00
Thibault Saunier
1a9119cb33
validate: tools: Add a --fatal-error option to the launcher
2014-02-12 11:23:25 +01:00
Thibault Saunier
2520f4f110
validate: tools: Implement the notion of hard timeout
...
Allowing to define timeout that is not relative to the last observed number.
2014-02-12 11:23:25 +01:00
Thibault Saunier
2391a56714
validate: tools: Create a class for scenarios
2014-02-12 11:23:25 +01:00
Thibault Saunier
ba1f428351
validate: tools: Change timeouts depending on used protocol
2014-02-12 11:23:25 +01:00
Thibault Saunier
8b8562ea85
validate:tools: Implement Buffering support in the various tools
2014-02-12 11:23:23 +01:00
Thibault Saunier
b3c71bba02
validate:tools: Blacklist some scenario/protocol combinations
...
And add the option for user to easilly blacklist tests
2014-02-06 12:02:59 +01:00
Thibault Saunier
a88d54aec2
validate: Plug a leak in validate-reporter
2014-02-06 12:02:59 +01:00
Thibault Saunier
7b236c96bf
validate:tools: Do not forget to give a ref for reporter's reports
...
Also enhance a bit report 'wording'
2014-02-06 12:02:59 +01:00
Thibault Saunier
3bce8f8966
validate:tools: Print test result in the terminal after the end of each test
2014-02-06 12:02:59 +01:00
Thibault Saunier
5d172e159e
scenario: Enhance explanation about seek execution failure
2014-02-06 12:02:59 +01:00
Thibault Saunier
299a677f09
validate:tools: Add an option to run testforever
2014-02-06 12:02:59 +01:00
Thibault Saunier
d9386f7542
validate: tools: Cleanup the way we return code in position query
2014-02-06 12:02:59 +01:00
Thibault Saunier
d000ca62a4
validate:tools: Use the same semantic for all tests classnames
2014-02-06 12:02:59 +01:00
Thibault Saunier
ac92d5b428
scenario: Do not remove GSource if it has never been set
2014-02-06 12:02:59 +01:00
Thibault Saunier
705f8e7766
data: Add a scenario where we send EOS after 15secs if the duration is > to that
2014-02-06 12:02:59 +01:00
Thibault Saunier
c0673d7eea
validate:tools: Add support for testing http streams locally
2014-02-06 12:02:59 +01:00
Thibault Saunier
c2e5c10767
validate:tools: Some cleanup in gst-validate test launcher
2014-02-06 12:02:59 +01:00
Thibault Saunier
33a744b688
validate:tools: Add actuall tests for media checking
2014-02-06 12:02:58 +01:00
Thibault Saunier
a3e7342eef
validate: tools: media-check: When comparing with a file just compare
...
We do not want to know if the file is seekable etc, but in that case we
want to see that the results are stable throughout the various runs
Also make sure to report an understandable error if the media file info
could not be parsed
2014-02-06 12:02:58 +01:00
Thibault Saunier
677e111f0b
validate: tools: Do not dot the pipeline every 50ms, it is a bit exessive
2014-02-06 12:02:58 +01:00
Thibault Saunier
d485180074
validate:tools: Return an exit code != 0 if pipeline can't go to playing
...
And give some information to the user about why the return code is !=0
everywhere it happens
2014-02-06 12:02:58 +01:00
Thibault Saunier
1c614b9ed9
validate:tools: Add informations about the test in the log files
2014-02-06 12:02:58 +01:00
Thibault Saunier
a6f3d5270c
validate:tools: Remove reference to get_backtrace which is not implemented
...
+ Enhance Message about launched apps
2014-02-06 12:02:58 +01:00
Thibault Saunier
26e3a9e3c5
validate:tools: Do not duplicated name in the classname in xunit reports
2014-02-06 12:02:58 +01:00
Thibault Saunier
654bacebc9
validate:tools: Do not check if position > duration
...
This is actually done by the scenario themselve. Instead if it is the
case, we return 0, this way it will timeout if it happens too many times
concecutively
2014-02-06 12:02:58 +01:00
Thibault Saunier
6bd9177205
validate:tools: Properly inform the user about the log location when test fails
2014-02-06 12:02:58 +01:00
Thibault Saunier
eb23274a5b
validate:tools: Add an option to generate .media_info files
...
So we can properly choose what media should be tested only placing
media_file as needed.
2014-02-06 12:02:58 +01:00
Thibault Saunier
32e1acbf88
validate:tools: use more scenarios in gst-validate launcher
...
And ensure that the list does not get mixed up with as we are sharing
"symboles" between all the files
2014-02-06 12:02:58 +01:00
Thibault Saunier
49cca6a329
validate:tools: Play the entire file in simple_backward
2014-02-06 12:02:58 +01:00
Thibault Saunier
6fcd2173eb
validate:tools: Fix the fast forward scenario to handle any file duration
2014-02-06 12:02:58 +01:00
Thibault Saunier
8e81727b87
validate:tools: Do not try to transcode images
2014-02-06 12:02:58 +01:00
Thibault Saunier
9eb665dddf
validate: Properly handle images in the media-info helper
...
In the case of images we should not check reverse playback, fast
forward etc...
We also should keep the information
2014-02-06 12:02:58 +01:00
Thibault Saunier
32e7b9a55e
validate:tools: Minor cleanups
2014-02-06 12:02:58 +01:00
Thibault Saunier
38615bcae2
validate:tools: Fix classname in gst-launch transcoding tests
2014-02-06 12:02:58 +01:00
Thibault Saunier
dc29cc2857
validate:tools: Properly name the project launcher in the report
2014-02-06 12:02:58 +01:00
Thibault Saunier
0b3b456f6a
validate:tools: Create the rendering directory if it does not exist
2014-02-06 12:02:58 +01:00
Thibault Saunier
8697dd3da4
validate:tools: Add an option to desativate ANSI colors
...
And enhance some debugging output
2014-02-06 12:02:58 +01:00
Thibault Saunier
eae7e94f44
validate:tools: Remove our dependency to PyGobject
2014-02-06 12:02:58 +01:00
Thibault Saunier
0c535ef9cf
validate:tools: Do not forget to add Makefile.am and main.py
2014-02-06 12:02:58 +01:00
Thibault Saunier
bd3aaded49
validate:tools: Enhance the way we detect if ges-launch can be used
...
We make sure it has been compiled against gst-validate
2014-02-06 12:02:58 +01:00
Thibault Saunier
c7aa259c78
validate:tools: Set video/webm instead of video/x-matroska as caps for webm
...
+ some mirore indentation cleanups
2014-02-06 12:02:58 +01:00
Thibault Saunier
384dd33843
validate:tools: Do not forget to keep our ref to file_info g-v-transcode
2014-02-06 12:02:57 +01:00
Thibault Saunier
446e5c88c2
validate:tools: Cleanup how we check result of rendering test
...
Factor out a method in the utils, and make use of it for both ges-launch and
gst-validate-transcode
2014-02-06 12:02:57 +01:00
Thibault Saunier
ff30c6ba3c
validate:tools: Don't give file duration as timeout for gst-validate
...
We use the other mean letting us actually control the process
advancement.
2014-02-06 12:02:57 +01:00
Thibault Saunier
cdff1c93ca
validate:tools: Veryfy test manager are operationnal before using them
2014-02-06 12:02:57 +01:00
Thibault Saunier
e30f6372f9
validate:tools: Move the main function in a dedictaed file
2014-02-06 12:02:57 +01:00