Bug 935343 - Convert content/media/tests to manifest format. r=doublec

This commit is contained in:
Matthew Gregan 2013-11-06 15:49:44 +13:00
parent 6fa5919e3f
commit 2b9e4e9e32
3 changed files with 327 additions and 401 deletions

View File

@ -1,401 +0,0 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
# Media tests should be backend independent, i.e., not conditioned on
# MOZ_OGG, MOZ_WAVE etc. (The only exception is the can_play_type tests,
# which necessarily depend on the backend(s) configured.) As far as possible,
# each test should work with any resource type. This makes it
# easy to add new backends and reduces the amount of test duplication.
# For each supported backend, resources that can be played by that backend
# should be added to the lists in manifest.js. Media tests that aren't
# testing for a bug in handling a specific resource type should pick one of
# the lists in manifest.js and run the test for each resource in the list
# that is supported in the current build (the canPlayType API is useful
# for this).
# To test whether a valid resource can simply be played through correctly,
# and optionally that its metadata is read correctly, just
# add it to gPlayTests in manifest.js. To test whether an invalid
# resource correctly throws an error (and does not cause a crash or hang),
# just add it to gErrorTests in manifest.js.
# To test for a specific bug in handling a specific resource type,
# make the test first check canPlayType for the type, and if it's not
# supported, just do ok(true, "Type not supported") and stop the test.
# Disabled for too many intermittent failures (bug 897108)
# test_playback_rate_playpause.html \
MOCHITEST_FILES = \
allowed.sjs \
can_play_type_ogg.js \
can_play_type_wave.js \
can_play_type_webm.js \
can_play_type_dash.js \
can_play_type_mpeg.js \
cancellable_request.sjs \
dynamic_redirect.sjs \
dynamic_resource.sjs \
file_access_controls.html \
fragment_play.js \
fragment_noplay.js \
manifest.js \
reactivate_helper.html \
redirect.sjs \
referer.sjs \
seek1.js \
seek2.js \
seek3.js \
seek4.js \
seek5.js \
seek6.js \
seek7.js \
seek8.js \
seek9.js \
seek10.js \
seek11.js \
seek12.js \
seek13.js \
seekLies.sjs \
test_access_control.html \
test_audio1.html \
test_audio2.html \
test_autoplay.html \
test_bug448534.html \
test_bug463162.xhtml \
test_bug495145.html \
test_bug495300.html \
test_bug654550.html \
test_bug686942.html \
test_bug883173.html \
test_bug895305.html \
test_bug895091.html \
test_bug919265.html \
test_can_play_type.html \
test_can_play_type_mpeg.html \
test_closing_connections.html \
test_constants.html \
test_controls.html \
test_currentTime.html \
test_decode_error.html \
test_defaultMuted.html \
test_delay_load.html \
test_error_on_404.html \
test_info_leak.html \
test_invalid_reject.html \
test_load.html \
test_load_candidates.html \
test_load_same_resource.html \
test_load_source.html \
test_loop.html \
test_metadata.html \
test_no_load_event.html \
test_networkState.html \
test_new_audio.html \
test_paused.html \
test_paused_after_ended.html \
test_play_events.html \
test_play_events_2.html \
test_playback_errors.html \
test_seekable1.html \
test_preload_actions.html \
test_preload_attribute.html \
test_progress.html \
test_reactivate.html \
test_readyState.html \
test_replay_metadata.html \
test_seek2.html \
test_seek_out_of_range.html \
test_source.html \
test_source_write.html \
test_source_null.html \
test_standalone.html \
test_volume.html \
test_video_to_canvas.html \
test_audiowrite.html \
test_mediarecorder_avoid_recursion.html \
test_mediarecorder_creation.html \
test_mediarecorder_record_audiocontext.html \
test_mediarecorder_record_immediate_stop.html \
test_mediarecorder_record_no_timeslice.html \
test_mediarecorder_record_nosrc.html \
test_mediarecorder_record_session.html \
test_mediarecorder_record_stopms.html \
test_mediarecorder_record_timeslice.html \
test_mediarecorder_reload_crash.html \
test_mediarecorder_state_transition.html \
test_mozHasAudio.html \
test_source_media.html \
test_autoplay_contentEditable.html \
test_decoder_disable.html \
test_playback.html \
test_seekLies.html \
test_media_sniffer.html \
contentType.sjs \
test_streams_srcObject.html \
test_reset_src.html \
test_streams_autoplay.html \
test_streams_element_capture.html \
test_streams_element_capture_reset.html \
test_streams_element_capture_createObjectURL.html \
test_streams_gc.html \
test_streams_tracks.html \
$(filter disabled-for-intermittent-failures--bug-608634, test_error_in_video_document.html) \
test_texttrack.html \
test_texttrackcue.html \
test_trackevent.html \
test_texttrackregion.html \
test_timeupdate_small_files.html \
test_unseekable.html \
test_VideoPlaybackQuality.html \
test_VideoPlaybackQuality_disabled.html \
test_webvtt_disabled.html \
$(NULL)
# Don't run in suite
ifndef MOZ_SUITE
MOCHITEST_FILES += test_play_twice.html
else
$(filter disabled-pending-investigation--bug-598252, test_play_twice.html)
endif
# These tests are disabled until we figure out random failures.
# When these tests are fixed, we should also make them backend-independent.
# test_resume.html \
# Bug 492821:
# test_videoDocumentTitle.html
# Bug 493692:
# test_preload_suspend.html
# Bug 567954 and Bug 574586:
# test_mixed_principals.html
# Disabled since we don't play Wave files standalone, for now
# test_audioDocumentTitle.html
# Bug 751539:
# test_played.html
# Disabled since it causes random memory corruption, bug 921622, so
# the best-case scenario is that it results in random crashes while it
# runs, like bug 918417, bug 920827, bug 923996, bug 928225, bug 929521
# bug 930982, bug 932193. Worst-case but quite likely, it causes random
# crashes and failures in other tests which run after it. Don't even think
# about reenabling it on any platform unless you *know* that you have fixed
# that. Then don't think about reenabling it on Windows until you know that
# you have fixed the timeouts of bug 832768, bug 814533, bug 840742
# test_playback_rate.html \
# The below tests are disabled on Windows due to frequent timeouts.
# Bug 832768 and Bug 864682:
# test_buffered.html
# test_bug465498.html
# Bug 707777:
# test_bug493187.html
# Bug 897843:
# test_media_selection.html
# Bug 832678, bug 795271, and bug 857424
# test_seek.html
ifneq ($(OS_ARCH), WINNT)
MOCHITEST_FILES += \
test_buffered.html \
test_bug465498.html \
test_bug493187.html \
test_media_selection.html \
test_seek.html \
$(NULL)
endif
# sample files
MOCHITEST_FILES += \
320x240.ogv \
448636.ogv \
audio-overhang.ogg \
audio-gaps.ogg \
badtags.ogg \
beta-phrasebook.ogg \
big-buck-bunny-unseekable.mp4 \
bogus.ogv \
bug495129.ogv \
bug495794.ogg \
bug461281.ogg \
bug482461.ogv \
bug482461-theora.ogv \
bug498380.ogv \
bug498855-1.ogv \
bug498855-2.ogv \
bug498855-3.ogv \
bug499519.ogv \
bug500311.ogv \
bug500311.ogv^headers^ \
bug501279.ogg \
bug504613.ogv \
bug504644.ogv \
bug504843.ogv \
bug506094.ogv \
bug516323.ogv \
bug516323.indexed.ogv \
bug520493.ogg \
bug520500.ogg \
bug520908.ogv \
bug520908.ogv^headers^ \
bug523816.ogv \
bug533822.ogg \
bug557094.ogv \
bug556821.ogv \
bug580982.webm \
bug603918.webm \
bug604067.webm \
chain.ogv \
chain.ogg \
chain.opus \
variable-samplerate.ogg \
variable-samplerate.opus \
variable-channel.ogg \
variable-channel.opus \
chained-video.ogv \
chained-audio-video.ogg \
variable-preskip.opus \
dirac.ogg \
multiple-bos.ogg \
no-cues.webm \
owl.mp3 \
owl-funnier-id3.mp3 \
owl-funny-id3.mp3 \
split.webm \
seek.ogv \
seek.webm \
seek.yuv \
short-video.ogv \
small-shot.ogg \
small-shot.m4a \
small-shot.mp3 \
sound.ogg \
spacestorm-1000Hz-100ms.ogg \
test-1-mono.opus \
test-2-stereo.opus \
test-3-LCR.opus \
test-4-quad.opus \
test-5-5.0.opus \
test-6-5.1.opus \
test-7-6.1.opus \
test-8-7.1.opus \
vbr.mp3 \
video-overhang.ogg \
file_a4_tone.ogg \
detodos.opus \
notags.mp3 \
id3tags.mp3 \
basic.vtt \
region.vtt \
long.vtt \
bug883173.vtt \
$(NULL)
# Wave sample files
MOCHITEST_FILES += \
big.wav \
bogus.wav \
r11025_msadpcm_c1.wav \
r11025_s16_c1.wav \
r11025_s16_c1_trailing.wav \
r11025_u8_c1.wav \
r11025_u8_c1_trunc.wav \
r16000_u8_c1_list.wav \
wavedata_u8.wav \
wavedata_s16.wav \
wave_metadata_bad_len.wav \
wave_metadata_bad_no_null.wav \
wave_metadata_bad_utf8.wav \
wave_metadata_unknown_tag.wav \
wave_metadata_utf8.wav \
wave_metadata.wav \
audio.wav \
$(NULL)
# Media plugin sample files
MOCHITEST_FILES += \
gizmo.mp4 \
$(NULL)
# Other files
MOCHITEST_FILES += \
bogus.duh \
invalid-m0c0.opus \
invalid-m0c3.opus \
invalid-m1c0.opus \
invalid-m1c9.opus \
invalid-m2c0.opus \
invalid-m2c1.opus \
invalid-cmap-short.opus \
invalid-cmap-s0c0.opus \
invalid-cmap-s0c2.opus \
invalid-cmap-s1c2.opus \
$(NULL)
# These tests contain backend-specific tests. Try to write backend
# independent tests rather than adding to this list.
ifdef MOZ_OGG
MOCHITEST_FILES += \
test_can_play_type_ogg.html \
noContentLength.sjs \
test_seekable3.html \
test_a4_tone.html \
file_audio_event_adopt_iframe.html \
test_audio_event_adopt.html \
test_referer.html \
test_bug686137.html \
test_contentDuration1.html \
test_contentDuration2.html \
test_contentDuration3.html \
test_contentDuration4.html \
test_contentDuration5.html \
test_contentDuration6.html \
test_contentDuration7.html \
contentDuration1.sjs \
contentDuration2.sjs \
contentDuration3.sjs \
contentDuration4.sjs \
contentDuration5.sjs \
contentDuration6.sjs \
contentDuration7.sjs \
test_framebuffer.html \
test_seekable2.html \
test_chaining.html \
$(NULL)
# Temporarily disabled for bug 754860
# test_bug726904.html
else
MOCHITEST_FILES += \
test_can_play_type_no_ogg.html \
$(NULL)
endif
ifdef MOZ_WEBM
MOCHITEST_FILES += \
test_can_play_type_webm.html \
$(NULL)
else
MOCHITEST_FILES += \
test_can_play_type_no_webm.html \
$(NULL)
endif
ifdef MOZ_WAVE
MOCHITEST_FILES += \
test_can_play_type_wave.html \
$(NULL)
# Bug 759221
MOCHITEST_FILES += \
test_fragment_play.html \
test_fragment_noplay.html \
test_wave_data_u8.html \
test_wave_data_s16.html \
$(NULL)
else
MOCHITEST_FILES += \
test_can_play_type_no_wave.html \
$(NULL)
endif

View File

@ -0,0 +1,326 @@
# Media tests should be backend independent, i.e., not conditioned on ogg,
# wave etc. (The only exception is the can_play_type tests, which
# necessarily depend on the backend(s) configured.) As far as possible, each
# test should work with any resource type. This makes it easy to add new
# backends and reduces the amount of test duplication.
# For each supported backend, resources that can be played by that backend
# should be added to the lists in manifest.js. Media tests that aren't
# testing for a bug in handling a specific resource type should pick one of
# the lists in manifest.js and run the test for each resource in the list
# that is supported in the current build (the canPlayType API is useful for
# this).
# To test whether a valid resource can simply be played through correctly,
# and optionally that its metadata is read correctly, just add it to
# gPlayTests in manifest.js. To test whether an invalid resource correctly
# throws an error (and does not cause a crash or hang), just add it to
# gErrorTests in manifest.js.
# To test for a specific bug in handling a specific resource type, make the
# test first check canPlayType for the type, and if it's not supported, just
# do ok(true, "Type not supported") and stop the test.
[DEFAULT]
support-files =
320x240.ogv
448636.ogv
allowed.sjs
audio-gaps.ogg
audio-overhang.ogg
audio.wav
badtags.ogg
basic.vtt
beta-phrasebook.ogg
big-buck-bunny-unseekable.mp4
big.wav
bogus.duh
bogus.ogv
bogus.wav
bug461281.ogg
bug482461-theora.ogv
bug482461.ogv
bug495129.ogv
bug495794.ogg
bug498380.ogv
bug498855-1.ogv
bug498855-2.ogv
bug498855-3.ogv
bug499519.ogv
bug500311.ogv
bug500311.ogv^headers^
bug501279.ogg
bug504613.ogv
bug504644.ogv
bug504843.ogv
bug506094.ogv
bug516323.indexed.ogv
bug516323.ogv
bug520493.ogg
bug520500.ogg
bug520908.ogv
bug520908.ogv^headers^
bug523816.ogv
bug533822.ogg
bug556821.ogv
bug557094.ogv
bug580982.webm
bug603918.webm
bug604067.webm
bug883173.vtt
can_play_type_dash.js
can_play_type_mpeg.js
can_play_type_ogg.js
can_play_type_wave.js
can_play_type_webm.js
cancellable_request.sjs
chain.ogg
chain.ogv
chain.opus
chained-audio-video.ogg
chained-video.ogv
contentDuration1.sjs
contentDuration2.sjs
contentDuration3.sjs
contentDuration4.sjs
contentDuration5.sjs
contentDuration6.sjs
contentDuration7.sjs
contentType.sjs
detodos.opus
dirac.ogg
dynamic_redirect.sjs
dynamic_resource.sjs
file_a4_tone.ogg
file_access_controls.html
file_audio_event_adopt_iframe.html
fragment_noplay.js
fragment_play.js
gizmo.mp4
id3tags.mp3
invalid-cmap-s0c0.opus
invalid-cmap-s0c2.opus
invalid-cmap-s1c2.opus
invalid-cmap-short.opus
invalid-m0c0.opus
invalid-m0c3.opus
invalid-m1c0.opus
invalid-m1c9.opus
invalid-m2c0.opus
invalid-m2c1.opus
long.vtt
manifest.js
multiple-bos.ogg
no-cues.webm
noContentLength.sjs
notags.mp3
owl-funnier-id3.mp3
owl-funny-id3.mp3
owl.mp3
r11025_msadpcm_c1.wav
r11025_s16_c1.wav
r11025_s16_c1_trailing.wav
r11025_u8_c1.wav
r11025_u8_c1_trunc.wav
r16000_u8_c1_list.wav
reactivate_helper.html
redirect.sjs
referer.sjs
region.vtt
seek.ogv
seek.webm
seek.yuv
seek1.js
seek10.js
seek11.js
seek12.js
seek13.js
seek2.js
seek3.js
seek4.js
seek5.js
seek6.js
seek7.js
seek8.js
seek9.js
seekLies.sjs
short-video.ogv
small-shot.m4a
small-shot.mp3
small-shot.ogg
sound.ogg
spacestorm-1000Hz-100ms.ogg
split.webm
test-1-mono.opus
test-2-stereo.opus
test-3-LCR.opus
test-4-quad.opus
test-5-5.0.opus
test-6-5.1.opus
test-7-6.1.opus
test-8-7.1.opus
variable-channel.ogg
variable-channel.opus
variable-preskip.opus
variable-samplerate.ogg
variable-samplerate.opus
vbr.mp3
video-overhang.ogg
wave_metadata.wav
wave_metadata_bad_len.wav
wave_metadata_bad_no_null.wav
wave_metadata_bad_utf8.wav
wave_metadata_unknown_tag.wav
wave_metadata_utf8.wav
wavedata_s16.wav
wavedata_u8.wav
[test_access_control.html]
[test_audio1.html]
[test_audio2.html]
[test_autoplay.html]
[test_bug448534.html]
[test_bug463162.xhtml]
[test_bug495145.html]
[test_bug495300.html]
[test_bug654550.html]
[test_bug686942.html]
[test_bug883173.html]
[test_bug895305.html]
[test_bug895091.html]
[test_bug919265.html]
[test_can_play_type.html]
[test_can_play_type_mpeg.html]
[test_closing_connections.html]
[test_constants.html]
[test_controls.html]
[test_currentTime.html]
[test_decode_error.html]
[test_defaultMuted.html]
[test_delay_load.html]
[test_error_on_404.html]
[test_info_leak.html]
[test_invalid_reject.html]
[test_load.html]
[test_load_candidates.html]
[test_load_same_resource.html]
[test_load_source.html]
[test_loop.html]
[test_metadata.html]
[test_no_load_event.html]
[test_networkState.html]
[test_new_audio.html]
[test_paused.html]
[test_paused_after_ended.html]
[test_play_events.html]
[test_play_events_2.html]
[test_playback_errors.html]
[test_seekable1.html]
[test_preload_actions.html]
[test_preload_attribute.html]
[test_progress.html]
[test_reactivate.html]
[test_readyState.html]
[test_replay_metadata.html]
[test_seek2.html]
[test_seek_out_of_range.html]
[test_source.html]
[test_source_write.html]
[test_source_null.html]
[test_standalone.html]
[test_volume.html]
[test_video_to_canvas.html]
[test_audiowrite.html]
[test_mediarecorder_creation.html]
[test_mediarecorder_avoid_recursion.html]
[test_mediarecorder_record_timeslice.html]
[test_mediarecorder_record_audiocontext.html]
[test_mediarecorder_record_stopms.html]
[test_mediarecorder_record_nosrc.html]
[test_mozHasAudio.html]
[test_source_media.html]
[test_autoplay_contentEditable.html]
[test_decoder_disable.html]
[test_mediarecorder_record_no_timeslice.html]
[test_mediarecorder_reload_crash.html]
[test_mediarecorder_record_immediate_stop.html]
[test_mediarecorder_record_session.html]
[test_playback.html]
[test_seekLies.html]
[test_media_sniffer.html]
[test_streams_srcObject.html]
[test_reset_src.html]
[test_streams_autoplay.html]
[test_streams_element_capture.html]
[test_streams_element_capture_reset.html]
[test_streams_element_capture_createObjectURL.html]
[test_streams_gc.html]
[test_streams_tracks.html]
[test_texttrack.html]
[test_texttrackcue.html]
[test_trackevent.html]
[test_texttrackregion.html]
[test_timeupdate_small_files.html]
[test_unseekable.html]
[test_VideoPlaybackQuality.html]
[test_VideoPlaybackQuality_disabled.html]
[test_webvtt_disabled.html]
# [test_audioDocumentTitle.html] # disabled - See bug 475110
# [test_error_in_video_document.html] # disabled - See bug 608634
# [test_mixed_principals.html] # disabled - See bug 567954 and 574586
# [test_playback_rate_playpause.html] # disabled - See bug 897108
# [test_played.html] # disabled - See bug 751539
# [test_preload_suspend.html] # disabled - See bug 493692
# [test_resume.html] # disabled - No bug :-(
# [test_videoDocumentTitle.html] # disabled - See bug 492821
# [test_playback_rate.html] # disabled - See bug 921622
# Disabled since it causes random memory corruption, bug 921622, so
# the best-case scenario is that it results in random crashes while it
# runs, like bug 918417, bug 920827, bug 923996, bug 928225, bug 929521
# bug 930982, bug 932193. Worst-case but quite likely, it causes random
# crashes and failures in other tests which run after it. Don't even think
# about reenabling it on any platform unless you *know* that you have fixed
# that. Then don't think about reenabling it on Windows until you know that
# you have fixed the timeouts of bug 832768, bug 814533, bug 840742
[test_play_twice.html] skip-if = appname == "seamonkey" # See bug 598252
[test_buffered.html] skip-if = os == "win" # See bug 832768 and 864682
[test_bug465498.html] skip-if = os == "win" # See bug 832768 and 864682
[test_bug493187.html] skip-if = os == "win" # See bug 707777
[test_media_selection.html] skip-if = os == "win" # See bug 897843
[test_seek.html] skip-if = os == "win" # See bug 832678, 795271, and 857424
# The tests below contain backend-specific tests. Write backend independent
# tests rather than adding to this list.
[test_can_play_type_ogg.html] run-if = ogg
[test_can_play_type_no_ogg.html] skip-if = ogg
[test_a4_tone.html] run-if = ogg
[test_audio_event_adopt.html] run-if = ogg
[test_bug686137.html] run-if = ogg
[test_chaining.html] run-if = ogg
[test_contentDuration1.html] run-if = ogg
[test_contentDuration2.html] run-if = ogg
[test_contentDuration3.html] run-if = ogg
[test_contentDuration4.html] run-if = ogg
[test_contentDuration5.html] run-if = ogg
[test_contentDuration6.html] run-if = ogg
[test_contentDuration7.html] run-if = ogg
[test_framebuffer.html] run-if = ogg
[test_referer.html] run-if = ogg
[test_seekable2.html] run-if = ogg
[test_seekable3.html] run-if = ogg
# [test_bug726904.html] run-if = ogg # disabled - See bug 754860
[test_can_play_type_webm.html] run-if = webm
[test_can_play_type_no_webm.html] skip-if = webm
[test_can_play_type_wave.html] run-if = wave
[test_can_play_type_no_wave.html] skip-if = wave
[test_fragment_noplay.html] run-if = wave
[test_fragment_play.html] run-if = wave
[test_wave_data_s16.html] run-if = wave
[test_wave_data_u8.html] run-if = wave

View File

@ -4,3 +4,4 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
MOCHITEST_MANIFESTS += ['mochitest.ini']