validate:launcher: Sensibly simplify scenario handling

This commit is contained in:
Thibault Saunier 2014-05-01 11:32:42 +02:00
parent b37fafa1e6
commit 872472feb3

View file

@ -157,7 +157,7 @@ G_V_ENCODING_TARGET_COMBINATIONS = [
# List of scenarios to run depending on the protocol in use # List of scenarios to run depending on the protocol in use
G_V_SCENARIOS = {Protocols.FILE: ["play_15s", G_V_SCENARIOS = ["play_15s",
"reverse_playback", "reverse_playback",
"fast_forward", "fast_forward",
"seek_forward", "seek_forward",
@ -166,25 +166,7 @@ G_V_SCENARIOS = {Protocols.FILE: ["play_15s",
"switch_audio_track", "switch_audio_track",
"switch_audio_track_while_paused", "switch_audio_track_while_paused",
"switch_subtitle_track", "switch_subtitle_track",
"scrub_forward_seeking"], "scrub_forward_seeking"]
Protocols.HTTP: ["play_15s",
"fast_forward",
"seek_forward",
"seek_backward",
"seek_with_stop",
"switch_audio_track",
"switch_audio_track_while_paused",
"switch_subtitle_track",
"reverse_playback"],
Protocols.HLS: ["play_15s",
"fast_forward",
"seek_forward",
"seek_with_stop",
"switch_audio_track",
"switch_audio_track_while_paused",
"switch_subtitle_track",
"seek_backward"],
}
G_V_PROTOCOL_VIDEO_RESTRICTION_CAPS = { G_V_PROTOCOL_VIDEO_RESTRICTION_CAPS = {
# Handle the unknown framerate in HLS samples # Handle the unknown framerate in HLS samples
@ -192,22 +174,33 @@ G_V_PROTOCOL_VIDEO_RESTRICTION_CAPS = {
} }
G_V_BLACKLISTED_TESTS = \ G_V_BLACKLISTED_TESTS = \
[("validate.hls.playback.fast_forward.*", [# HLS known issues:
("validate.hls.playback.fast_forward.*",
"https://bugzilla.gnome.org/show_bug.cgi?id=698155"), "https://bugzilla.gnome.org/show_bug.cgi?id=698155"),
("validate.hls.playback.seek_with_stop.*", ("validate.hls.playback.seek_with_stop.*",
"https://bugzilla.gnome.org/show_bug.cgi?id=723268"), "https://bugzilla.gnome.org/show_bug.cgi?id=723268"),
("validate.hls.playback.reverse_playback.*",
"https://bugzilla.gnome.org/show_bug.cgi?id=702595"),
("validate.hls.*scrub_forward_seeking.*", "This is not stable enough for now."),
# Matroska/WEBM known issues:
("validate.*.reverse_playback.*webm$", ("validate.*.reverse_playback.*webm$",
"https://bugzilla.gnome.org/show_bug.cgi?id=679250"), "https://bugzilla.gnome.org/show_bug.cgi?id=679250"),
("validate.*.playback.reverse_playback.*ts|validate.*.playback.reverse_playback.*MTS", ("validate.*Sintel.*reverse.*mkv",
"https://bugzilla.gnome.org/show_bug.cgi?id=702595"), "TODO in matroskademux: FIXME: We should build an index during playback or "
"when scanning that can be used here. The reverse playback code requires "
" seek_index and seek_entry to be set!"),
("validate.http.playback.seek_with_stop.*webm", ("validate.http.playback.seek_with_stop.*webm",
"matroskademux.gst_matroska_demux_handle_seek_push: Seek end-time not supported in streaming mode"), "matroskademux.gst_matroska_demux_handle_seek_push: Seek end-time not supported in streaming mode"),
("validate.http.playback.seek_with_stop.*mkv", ("validate.http.playback.seek_with_stop.*mkv",
"matroskademux.gst_matroska_demux_handle_seek_push: Seek end-time not supported in streaming mode"), "matroskademux.gst_matroska_demux_handle_seek_push: Seek end-time not supported in streaming mode"),
("validate.*Sintel.*reverse.*mkv",
"TODO in matroskademux: FIXME: We should build an index during playback or " # MPEG TS known issues:
"when scanning that can be used here. The reverse playback code requires " ('(?i)validate.*.playback.reverse_playback.*(?:_|.)(?:|m)ts$',
" seek_index and seek_entry to be set!") "https://bugzilla.gnome.org/show_bug.cgi?id=702595"),
# HTTP known issues:
("validate.http.*scrub_forward_seeking.*", "This is not stable enough for now."),
] ]
class GstValidateLaunchTest(GstValidateTest): class GstValidateLaunchTest(GstValidateTest):
@ -496,7 +489,7 @@ use --wanted-tests defaults_only""")
protocol = minfo.media_descriptor.get_protocol() protocol = minfo.media_descriptor.get_protocol()
if self._run_defaults: if self._run_defaults:
scenarios = [self._scenarios.get_scenario(scenario_name) scenarios = [self._scenarios.get_scenario(scenario_name)
for scenario_name in G_V_SCENARIOS[protocol]] for scenario_name in G_V_SCENARIOS]
else: else:
scenarios = self._scenarios.get_scenario(None) scenarios = self._scenarios.get_scenario(None)