content/media/test/mochitest.ini
author Wes Kocher <wkocher@mozilla.com>
Mon, 06 Oct 2014 19:11:39 -0700
changeset 232256 0208159db84df29d10dd18705a53c6d5334db613
parent 232248 b2d92cb448730745ab54c54167cd423ae8347469
child 232741 981994dec186511c9bdb4daceea90f6ba6312665
permissions -rw-r--r--
Backed out changeset 645d5e930e23 (bug 1067305) for inadvertently disabling all media tests on some platforms CLOSED TREE

# 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]
skip-if = buildapp == 'mulet'
support-files =
  320x240.ogv
  320x240.ogv^headers^
  448636.ogv
  448636.ogv^headers^
  VID_0001.ogg
  VID_0001.ogg^headers^
  allowed.sjs
  audio-gaps.ogg
  audio-gaps.ogg^headers^
  audio-overhang.ogg
  audio-overhang.ogg^headers^
  audio.wav
  audio.wav^headers^
  badtags.ogg
  badtags.ogg^headers^
  basic.vtt
  bad-signature.vtt
  beta-phrasebook.ogg
  beta-phrasebook.ogg^headers^
  big.wav
  big.wav^headers^
  bogus.duh
  bogus.ogv
  bogus.ogv^headers^
  bogus.wav
  bogus.wav^headers^
  bug461281.ogg
  bug461281.ogg^headers^
  bug482461-theora.ogv
  bug482461-theora.ogv^headers^
  bug482461.ogv
  bug482461.ogv^headers^
  bug495129.ogv
  bug495129.ogv^headers^
  bug495794.ogg
  bug495794.ogg^headers^
  bug498380.ogv
  bug498380.ogv^headers^
  bug498855-1.ogv
  bug498855-1.ogv^headers^
  bug498855-2.ogv
  bug498855-2.ogv^headers^
  bug498855-3.ogv
  bug498855-3.ogv^headers^
  bug499519.ogv
  bug499519.ogv^headers^
  bug500311.ogv
  bug500311.ogv^headers^
  bug501279.ogg
  bug501279.ogg^headers^
  bug504613.ogv
  bug504613.ogv^headers^
  bug504644.ogv
  bug504644.ogv^headers^
  bug504843.ogv
  bug504843.ogv^headers^
  bug506094.ogv
  bug506094.ogv^headers^
  bug516323.indexed.ogv
  bug516323.indexed.ogv^headers^
  bug516323.ogv
  bug516323.ogv^headers^
  bug520493.ogg
  bug520493.ogg^headers^
  bug520500.ogg
  bug520500.ogg^headers^
  bug520908.ogv
  bug520908.ogv^headers^
  bug523816.ogv
  bug523816.ogv^headers^
  bug533822.ogg
  bug533822.ogg^headers^
  bug556821.ogv
  bug556821.ogv^headers^
  bug557094.ogv
  bug557094.ogv^headers^
  bug580982.webm
  bug580982.webm^headers^
  bug603918.webm
  bug603918.webm^headers^
  bug604067.webm
  bug604067.webm^headers^
  bug883173.vtt
  bug1066943.webm
  bug1066943.webm^headers^
  can_play_type_dash.js
  can_play_type_ogg.js
  can_play_type_wave.js
  can_play_type_webm.js
  cancellable_request.sjs
  chain.ogg
  chain.ogg^headers^
  chain.ogv
  chain.ogv^headers^
  chain.opus
  chain.opus^headers^
  chained-audio-video.ogg
  chained-audio-video.ogg^headers^
  chained-video.ogv
  chained-video.ogv^headers^
  contentDuration1.sjs
  contentDuration2.sjs
  contentDuration3.sjs
  contentDuration4.sjs
  contentDuration5.sjs
  contentDuration6.sjs
  contentDuration7.sjs
  contentType.sjs
  detodos.opus
  detodos.opus^headers^
  detodos.webm
  detodos.webm^headers^
  dirac.ogg
  dirac.ogg^headers^
  dynamic_redirect.sjs
  dynamic_resource.sjs
  file_access_controls.html
  fragment_noplay.js
  fragment_play.js
  gizmo.mp4
  gizmo.mp4^headers^
  huge-id3.mp3
  huge-id3.mp3^headers^
  id3tags.mp3
  id3tags.mp3^headers^
  invalid-cmap-s0c0.opus
  invalid-cmap-s0c0.opus^headers^
  invalid-cmap-s0c2.opus
  invalid-cmap-s0c2.opus^headers^
  invalid-cmap-s1c2.opus
  invalid-cmap-s1c2.opus^headers^
  invalid-cmap-short.opus
  invalid-cmap-short.opus^headers^
  invalid-discard_on_multi_blocks.webm
  invalid-discard_on_multi_blocks.webm^headers^
  invalid-excess_discard.webm
  invalid-excess_discard.webm^headers^
  invalid-excess_neg_discard.webm
  invalid-excess_neg_discard.webm^headers^
  invalid-m0c0.opus
  invalid-m0c0.opus^headers^
  invalid-m0c3.opus
  invalid-m0c3.opus^headers^
  invalid-m1c0.opus
  invalid-m1c0.opus^headers^
  invalid-m1c9.opus
  invalid-m1c9.opus^headers^
  invalid-m2c0.opus
  invalid-m2c0.opus^headers^
  invalid-m2c1.opus
  invalid-m2c1.opus^headers^
  invalid-neg_discard.webm
  invalid-neg_discard.webm^headers^
  invalid-preskip.webm
  invalid-preskip.webm^headers^
  long.vtt
  manifest.js
  multiple-bos.ogg
  multiple-bos.ogg^headers^
  multiple-bos-more-header-fileds.ogg
  multiple-bos-more-header-fileds.ogg^headers^
  no-cues.webm
  no-cues.webm^headers^
  noContentLength.sjs
  notags.mp3
  notags.mp3^headers^
  owl-funnier-id3.mp3
  owl-funnier-id3.mp3^headers^
  owl-funny-id3.mp3
  owl-funny-id3.mp3^headers^
  owl.mp3
  owl.mp3^headers^
  parser.vtt
  r11025_msadpcm_c1.wav
  r11025_msadpcm_c1.wav^headers^
  r11025_s16_c1.wav
  r11025_s16_c1.wav^headers^
  r11025_s16_c1_trailing.wav
  r11025_s16_c1_trailing.wav^headers^
  r11025_u8_c1.wav
  r11025_u8_c1.wav^headers^
  r11025_u8_c1_trunc.wav
  r11025_u8_c1_trunc.wav^headers^
  r16000_u8_c1_list.wav
  r16000_u8_c1_list.wav^headers^
  reactivate_helper.html
  redirect.sjs
  referer.sjs
  region.vtt
  sample.3gp
  sample.3g2
  sample-fisbone-skeleton4.ogv
  sample-fisbone-skeleton4.ogv^headers^
  sample-fisbone-wrong-header.ogv
  sample-fisbone-wrong-header.ogv^headers^
  seek.ogv
  seek.ogv^headers^
  seek.webm
  seek.webm^headers^
  seek.yuv
  seek_support.js
  seekLies.sjs
  seek_with_sound.ogg^headers^
  short-cenc.mp4
  short-video.ogv
  short-video.ogv^headers^
  small-shot-mp3.mp4
  small-shot-mp3.mp4^headers^
  small-shot.m4a
  small-shot.mp3
  small-shot.mp3^headers^
  small-shot.ogg
  small-shot.ogg^headers^
  sound.ogg
  sound.ogg^headers^
  spacestorm-1000Hz-100ms.ogg
  spacestorm-1000Hz-100ms.ogg^headers^
  split.webm
  split.webm^headers^
  street.mp4
  street.mp4^headers^
  test-1-mono.opus
  test-1-mono.opus^headers^
  test-2-stereo.opus
  test-2-stereo.opus^headers^
  test-3-LCR.opus
  test-3-LCR.opus^headers^
  test-4-quad.opus
  test-4-quad.opus^headers^
  test-5-5.0.opus
  test-5-5.0.opus^headers^
  test-6-5.1.opus
  test-6-5.1.opus^headers^
  test-7-6.1.opus
  test-7-6.1.opus^headers^
  test-8-7.1.opus
  test-8-7.1.opus^headers^
  variable-channel.ogg
  variable-channel.ogg^headers^
  variable-channel.opus
  variable-channel.opus^headers^
  variable-preskip.opus
  variable-preskip.opus^headers^
  variable-samplerate.ogg
  variable-samplerate.ogg^headers^
  variable-samplerate.opus
  variable-samplerate.opus^headers^
  vbr-head.mp3
  vbr-head.mp3^headers^
  vbr.mp3
  vbr.mp3^headers^
  video-overhang.ogg
  video-overhang.ogg^headers^
  vp9.webm
  vp9.webm^headers^
  vp9cake.webm
  vp9cake.webm^headers^
  wave_metadata.wav
  wave_metadata.wav^headers^
  wave_metadata_bad_len.wav
  wave_metadata_bad_len.wav^headers^
  wave_metadata_bad_no_null.wav
  wave_metadata_bad_no_null.wav^headers^
  wave_metadata_bad_utf8.wav
  wave_metadata_bad_utf8.wav^headers^
  wave_metadata_unknown_tag.wav
  wave_metadata_unknown_tag.wav^headers^
  wave_metadata_utf8.wav
  wave_metadata_utf8.wav^headers^
  wavedata_s16.wav
  wavedata_s16.wav^headers^
  wavedata_u8.wav
  wavedata_u8.wav^headers^

[test_access_control.html]
skip-if = buildapp == 'b2g' && toolkit != 'gonk' # crash on b2g-desktop
[test_aspectratio_mp4.html]
[test_audio1.html]
[test_audio2.html]
[test_audioDocumentTitle.html]
skip-if = true # bug 475110 - disabled since we don't play Wave files standalone
[test_autoplay.html]
[test_autoplay_contentEditable.html]
[test_buffered.html]
[test_bug448534.html]
skip-if = buildapp == 'mulet' || os == 'win' # bug 894922
[test_bug463162.xhtml]
[test_bug465498.html]
[test_bug493187.html]
[test_bug495145.html]
[test_bug495300.html]
[test_bug654550.html]
[test_bug686942.html]
[test_bug726904.html]
[test_bug874897.html]
[test_bug883173.html]
[test_bug895091.html]
[test_bug895305.html]
[test_bug919265.html]
[test_bug957847.html]
[test_bug1018933.html]
[test_can_play_type.html]
[test_can_play_type_mpeg.html]
skip-if = buildapp == 'b2g' # bug 1021675
[test_can_play_type_no_ogg.html]
[test_can_play_type_ogg.html]
[test_chaining.html]
skip-if = toolkit == 'gonk' && debug
[test_clone_media_element.html]
[test_closing_connections.html]
[test_constants.html]
[test_contentDuration1.html]
[test_contentDuration2.html]
[test_contentDuration3.html]
[test_contentDuration4.html]
[test_contentDuration5.html]
[test_contentDuration6.html]
[test_contentDuration7.html]
[test_controls.html]
[test_currentTime.html]
[test_decode_error.html]
[test_decoder_disable.html]
[test_defaultMuted.html]
[test_delay_load.html]
skip-if = buildapp == 'b2g' # bug 1021676
[test_encryptedMediaExtensions.html]
skip-if = buildapp == 'b2g' || toolkit == 'android' # bug 1043403
[test_error_in_video_document.html]
skip-if = toolkit == 'android' # bug 608634
[test_error_on_404.html]
[test_fastSeek.html]
[test_fastSeek-forwards.html]
[test_imagecapture.html]
[test_info_leak.html]
[test_invalid_reject.html]
[test_invalid_reject_play.html]
[test_invalid_seek.html]
[test_load.html]
[test_load_candidates.html]
[test_load_same_resource.html]
[test_load_source.html]
[test_loop.html]
[test_media_selection.html]
skip-if = toolkit == 'gonk' && !debug # bug 1021677
[test_media_sniffer.html]
[test_mediarecorder_avoid_recursion.html]
[test_mediarecorder_creation.html]
[test_mediarecorder_creation_fail.html]
[test_mediarecorder_getencodeddata.html]
[test_mediarecorder_record_4ch_audiocontext.html]
[test_mediarecorder_record_audiocontext.html]
[test_mediarecorder_record_audiocontext_mlk.html]
[test_mediarecorder_record_audionode.html]
[test_mediarecorder_record_gum_video_timeslice.html]
skip-if = buildapp == 'b2g' || toolkit == 'android' # mimetype check, bug 969289
[test_mediarecorder_record_immediate_stop.html]
skip-if = toolkit == 'gonk' && debug
[test_mediarecorder_record_no_timeslice.html]
skip-if = toolkit == 'gonk' && debug
[test_mediarecorder_record_nosrc.html]
[test_mediarecorder_record_session.html]
[test_mediarecorder_record_startstopstart.html]
skip-if = toolkit == 'gonk' && debug
[test_mediarecorder_record_stopms.html]
[test_mediarecorder_record_timeslice.html]
skip-if = toolkit == 'gonk' && debug
[test_mediarecorder_reload_crash.html]
[test_mediarecorder_unsupported_src.html]
[test_mediarecorder_record_getdata_afterstart.html]
skip-if = toolkit == 'gonk' && debug
[test_mediatrack_consuming_mediaresource.html]
[test_mediatrack_consuming_mediastream.html]
[test_mediatrack_events.html]
skip-if = toolkit == 'gonk' && debug # bug 1065924
[test_mediatrack_parsing_ogg.html]
[test_mediatrack_replay_from_end.html]
[test_metadata.html]
[test_mixed_principals.html]
skip-if = true # bug 567954 and intermittent leaks
[test_mozHasAudio.html]
[test_networkState.html]
[test_new_audio.html]
[test_no_load_event.html]
[test_paused.html]
[test_paused_after_ended.html]
[test_play_events.html]
[test_play_events_2.html]
[test_play_twice.html]
# Seamonkey: Bug 598252, B2G: Bug 982100, Android: Bug 758476, bug 981086
skip-if = appname == "seamonkey" || toolkit == 'gonk' || toolkit == 'android'
[test_playback.html]
[test_playback_errors.html]
[test_playback_rate.html]
[test_playback_rate_playpause.html]
[test_played.html]
skip-if = true # bug 1021794
[test_preload_actions.html]
[test_preload_attribute.html]
[test_preload_suspend.html]
skip-if = true # bug 493692
[test_progress.html]
[test_reactivate.html]
[test_readyState.html]
[test_referer.html]
[test_replay_metadata.html]
[test_reset_events_async.html]
[test_reset_src.html]
[test_resume.html]
skip-if = true # bug 1021673
[test_seek_out_of_range.html]
[test_seek-1.html]
[test_seek-2.html]
[test_seek-3.html]
[test_seek-4.html]
[test_seek-5.html]
[test_seek-6.html]
[test_seek-7.html]
[test_seek-8.html]
[test_seek-9.html]
[test_seek-10.html]
[test_seek-11.html]
[test_seek-12.html]
[test_seek-13.html]
[test_seekable1.html]
[test_seekable2.html]
[test_seekable3.html]
[test_seekLies.html]
[test_source.html]
[test_source_media.html]
[test_source_null.html]
[test_source_write.html]
[test_standalone.html]
[test_streams_autoplay.html]
[test_streams_element_capture.html]
skip-if = e10s && os == 'win' # Bug 1065881 - Crash on child process shutdown in ShadowLayerForwarder::InWorkerThread
[test_streams_element_capture_createObjectURL.html]
[test_streams_element_capture_playback.html]
[test_streams_element_capture_reset.html]
skip-if = buildapp == 'b2g' # bug 901102
[test_streams_gc.html]
skip-if = buildapp == 'b2g' # bug 1021682
[test_streams_srcObject.html]
[test_streams_tracks.html]
[test_texttrack.html]
[test_texttrackcue.html]
[test_texttracklist.html]
[test_texttrackregion.html]
[test_timeupdate_small_files.html]
[test_trackelementevent.html]
[test_trackevent.html]
[test_unseekable.html]
[test_video_to_canvas.html]
[test_videoDocumentTitle.html]
[test_VideoPlaybackQuality.html]
[test_VideoPlaybackQuality_disabled.html]
[test_volume.html]
[test_vttparser.html]
[test_webvtt_disabled.html]

# The tests below contain backend-specific tests. Write backend independent
# tests rather than adding to this list.
[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