Fri, 16 Jan 2015 04:50:19 +0100
Replace accessor implementation with direct member state manipulation, by
request https://trac.torproject.org/projects/tor/ticket/9701#comment:32
1 # Media tests should be backend independent, i.e., not conditioned on ogg,
2 # wave etc. (The only exception is the can_play_type tests, which
3 # necessarily depend on the backend(s) configured.) As far as possible, each
4 # test should work with any resource type. This makes it easy to add new
5 # backends and reduces the amount of test duplication.
7 # For each supported backend, resources that can be played by that backend
8 # should be added to the lists in manifest.js. Media tests that aren't
9 # testing for a bug in handling a specific resource type should pick one of
10 # the lists in manifest.js and run the test for each resource in the list
11 # that is supported in the current build (the canPlayType API is useful for
12 # this).
14 # To test whether a valid resource can simply be played through correctly,
15 # and optionally that its metadata is read correctly, just add it to
16 # gPlayTests in manifest.js. To test whether an invalid resource correctly
17 # throws an error (and does not cause a crash or hang), just add it to
18 # gErrorTests in manifest.js.
20 # To test for a specific bug in handling a specific resource type, make the
21 # test first check canPlayType for the type, and if it's not supported, just
22 # do ok(true, "Type not supported") and stop the test.
24 [DEFAULT]
25 #bug 918299
26 skip-if = (buildapp == 'b2g' && (toolkit != 'gonk' || debug))
27 support-files =
28 320x240.ogv
29 320x240.ogv^headers^
30 448636.ogv
31 448636.ogv^headers^
32 VID_0001.ogg
33 VID_0001.ogg^headers^
34 allowed.sjs
35 audio-gaps.ogg
36 audio-gaps.ogg^headers^
37 audio-overhang.ogg
38 audio-overhang.ogg^headers^
39 audio.wav
40 audio.wav^headers^
41 badtags.ogg
42 badtags.ogg^headers^
43 basic.vtt
44 bad-signature.vtt
45 beta-phrasebook.ogg
46 beta-phrasebook.ogg^headers^
47 big-buck-bunny-unseekable.mp4
48 big-buck-bunny-unseekable.mp4^headers^
49 big.wav
50 big.wav^headers^
51 bogus.duh
52 bogus.ogv
53 bogus.ogv^headers^
54 bogus.wav
55 bogus.wav^headers^
56 bug461281.ogg
57 bug461281.ogg^headers^
58 bug482461-theora.ogv
59 bug482461-theora.ogv^headers^
60 bug482461.ogv
61 bug482461.ogv^headers^
62 bug495129.ogv
63 bug495129.ogv^headers^
64 bug495794.ogg
65 bug495794.ogg^headers^
66 bug498380.ogv
67 bug498380.ogv^headers^
68 bug498855-1.ogv
69 bug498855-1.ogv^headers^
70 bug498855-2.ogv
71 bug498855-2.ogv^headers^
72 bug498855-3.ogv
73 bug498855-3.ogv^headers^
74 bug499519.ogv
75 bug499519.ogv^headers^
76 bug500311.ogv
77 bug500311.ogv^headers^
78 bug501279.ogg
79 bug501279.ogg^headers^
80 bug504613.ogv
81 bug504613.ogv^headers^
82 bug504644.ogv
83 bug504644.ogv^headers^
84 bug504843.ogv
85 bug504843.ogv^headers^
86 bug506094.ogv
87 bug506094.ogv^headers^
88 bug516323.indexed.ogv
89 bug516323.indexed.ogv^headers^
90 bug516323.ogv
91 bug516323.ogv^headers^
92 bug520493.ogg
93 bug520493.ogg^headers^
94 bug520500.ogg
95 bug520500.ogg^headers^
96 bug520908.ogv
97 bug520908.ogv^headers^
98 bug523816.ogv
99 bug523816.ogv^headers^
100 bug533822.ogg
101 bug533822.ogg^headers^
102 bug556821.ogv
103 bug556821.ogv^headers^
104 bug557094.ogv
105 bug557094.ogv^headers^
106 bug580982.webm
107 bug580982.webm^headers^
108 bug603918.webm
109 bug603918.webm^headers^
110 bug604067.webm
111 bug604067.webm^headers^
112 bug883173.vtt
113 can_play_type_dash.js
114 can_play_type_mpeg.js
115 can_play_type_ogg.js
116 can_play_type_wave.js
117 can_play_type_webm.js
118 cancellable_request.sjs
119 chain.ogg
120 chain.ogg^headers^
121 chain.ogv
122 chain.ogv^headers^
123 chain.opus
124 chain.opus^headers^
125 chained-audio-video.ogg
126 chained-audio-video.ogg^headers^
127 chained-video.ogv
128 chained-video.ogv^headers^
129 contentDuration1.sjs
130 contentDuration2.sjs
131 contentDuration3.sjs
132 contentDuration4.sjs
133 contentDuration5.sjs
134 contentDuration6.sjs
135 contentDuration7.sjs
136 contentType.sjs
137 detodos.opus
138 detodos.opus^headers^
139 detodos.webm
140 detodos.webm^headers^
141 dirac.ogg
142 dirac.ogg^headers^
143 dynamic_redirect.sjs
144 dynamic_resource.sjs
145 file_access_controls.html
146 fragment_noplay.js
147 fragment_play.js
148 gizmo.mp4
149 gizmo.mp4^headers^
150 huge-id3.mp3
151 huge-id3.mp3^headers^
152 id3tags.mp3
153 id3tags.mp3^headers^
154 invalid-cmap-s0c0.opus
155 invalid-cmap-s0c0.opus^headers^
156 invalid-cmap-s0c2.opus
157 invalid-cmap-s0c2.opus^headers^
158 invalid-cmap-s1c2.opus
159 invalid-cmap-s1c2.opus^headers^
160 invalid-cmap-short.opus
161 invalid-cmap-short.opus^headers^
162 invalid-m0c0.opus
163 invalid-m0c0.opus^headers^
164 invalid-m0c3.opus
165 invalid-m0c3.opus^headers^
166 invalid-m1c0.opus
167 invalid-m1c0.opus^headers^
168 invalid-m1c9.opus
169 invalid-m1c9.opus^headers^
170 invalid-m2c0.opus
171 invalid-m2c0.opus^headers^
172 invalid-m2c1.opus
173 invalid-m2c1.opus^headers^
174 invalid-preskip.webm
175 invalid-preskip.webm^headers^
176 long.vtt
177 manifest.js
178 multiple-bos.ogg
179 multiple-bos.ogg^headers^
180 no-cues.webm
181 no-cues.webm^headers^
182 noContentLength.sjs
183 notags.mp3
184 notags.mp3^headers^
185 owl-funnier-id3.mp3
186 owl-funnier-id3.mp3^headers^
187 owl-funny-id3.mp3
188 owl-funny-id3.mp3^headers^
189 owl.mp3
190 owl.mp3^headers^
191 r11025_msadpcm_c1.wav
192 r11025_msadpcm_c1.wav^headers^
193 r11025_s16_c1.wav
194 r11025_s16_c1.wav^headers^
195 r11025_s16_c1_trailing.wav
196 r11025_s16_c1_trailing.wav^headers^
197 r11025_u8_c1.wav
198 r11025_u8_c1.wav^headers^
199 r11025_u8_c1_trunc.wav
200 r11025_u8_c1_trunc.wav^headers^
201 r16000_u8_c1_list.wav
202 r16000_u8_c1_list.wav^headers^
203 reactivate_helper.html
204 redirect.sjs
205 referer.sjs
206 region.vtt
207 seek.ogv
208 seek.ogv^headers^
209 seek.webm
210 seek.webm^headers^
211 seek.yuv
212 seek1.js
213 seek10.js
214 seek11.js
215 seek12.js
216 seek13.js
217 seek2.js
218 seek3.js
219 seek4.js
220 seek5.js
221 seek6.js
222 seek7.js
223 seek8.js
224 seek9.js
225 seekLies.sjs
226 seek_with_sound.ogg^headers^
227 short-video.ogv
228 short-video.ogv^headers^
229 small-shot-mp3.mp4
230 small-shot-mp3.mp4^headers^
231 small-shot.m4a
232 small-shot.mp3
233 small-shot.mp3^headers^
234 small-shot.ogg
235 small-shot.ogg^headers^
236 sound.ogg
237 sound.ogg^headers^
238 spacestorm-1000Hz-100ms.ogg
239 spacestorm-1000Hz-100ms.ogg^headers^
240 split.webm
241 split.webm^headers^
242 street.mp4
243 street.mp4^headers^
244 test-1-mono.opus
245 test-1-mono.opus^headers^
246 test-2-stereo.opus
247 test-2-stereo.opus^headers^
248 test-3-LCR.opus
249 test-3-LCR.opus^headers^
250 test-4-quad.opus
251 test-4-quad.opus^headers^
252 test-5-5.0.opus
253 test-5-5.0.opus^headers^
254 test-6-5.1.opus
255 test-6-5.1.opus^headers^
256 test-7-6.1.opus
257 test-7-6.1.opus^headers^
258 test-8-7.1.opus
259 test-8-7.1.opus^headers^
260 variable-channel.ogg
261 variable-channel.ogg^headers^
262 variable-channel.opus
263 variable-channel.opus^headers^
264 variable-preskip.opus
265 variable-preskip.opus^headers^
266 variable-samplerate.ogg
267 variable-samplerate.ogg^headers^
268 variable-samplerate.opus
269 variable-samplerate.opus^headers^
270 vbr-head.mp3
271 vbr-head.mp3^headers^
272 vbr.mp3
273 vbr.mp3^headers^
274 video-overhang.ogg
275 video-overhang.ogg^headers^
276 vp9.webm
277 vp9.webm^headers^
278 vp9cake.webm
279 vp9cake.webm^headers^
280 wave_metadata.wav
281 wave_metadata.wav^headers^
282 wave_metadata_bad_len.wav
283 wave_metadata_bad_len.wav^headers^
284 wave_metadata_bad_no_null.wav
285 wave_metadata_bad_no_null.wav^headers^
286 wave_metadata_bad_utf8.wav
287 wave_metadata_bad_utf8.wav^headers^
288 wave_metadata_unknown_tag.wav
289 wave_metadata_unknown_tag.wav^headers^
290 wave_metadata_utf8.wav
291 wave_metadata_utf8.wav^headers^
292 wavedata_s16.wav
293 wavedata_s16.wav^headers^
294 wavedata_u8.wav
295 wavedata_u8.wav^headers^
297 [test_access_control.html]
298 [test_aspectratio_mp4.html]
299 [test_audio1.html]
300 [test_audio2.html]
301 [test_autoplay.html]
302 [test_bug448534.html]
303 skip-if = buildapp == 'b2g' || os == 'win' # b2g(Timed out, bug 894922? Bug 902677 is for the timing out of a lot of media tests) b2g-debug(Timed out, bug 894922? Bug 902677 is for the timing out of a lot of media tests) b2g-desktop(Timed out, bug 894922? Bug 902677 is for the timing out of a lot of media tests)
304 [test_bug463162.xhtml]
305 [test_bug495145.html]
306 skip-if = (buildapp == 'b2g' && (toolkit != 'gonk' || debug)) # b2g-debug(timed out) b2g-desktop(timed out)
307 [test_bug495300.html]
308 skip-if = (buildapp == 'b2g' && (toolkit != 'gonk' || debug))
309 [test_bug654550.html]
310 skip-if = (buildapp == 'b2g' && (toolkit != 'gonk' || debug)) # b2g-debug(timed out) b2g-desktop(timed out)
311 [test_bug686942.html]
312 skip-if = (buildapp == 'b2g' && (toolkit != 'gonk' || debug)) # b2g-debug(timed out) b2g-desktop(timed out)
313 # [test_bug726904.html] # disabled - See bug 754860
314 [test_bug874897.html]
315 [test_bug883173.html]
316 [test_bug895305.html]
317 [test_bug895091.html]
318 [test_bug919265.html]
319 [test_bug957847.html]
320 [test_chaining.html]
321 skip-if = buildapp == 'b2g' # b2g(timed out) b2g-debug(timed out) b2g-desktop(timed out)
322 [test_contentDuration1.html]
323 [test_contentDuration2.html]
324 [test_contentDuration3.html]
325 [test_contentDuration4.html]
326 [test_contentDuration5.html]
327 [test_contentDuration6.html]
328 [test_contentDuration7.html]
329 [test_can_play_type.html]
330 skip-if = (buildapp == 'b2g' && (toolkit != 'gonk' || debug)) # b2g-debug(timed out) b2g-desktop(timed out)
331 [test_can_play_type_mpeg.html]
332 skip-if = buildapp == 'b2g' # b2g(7 failures out of 27) b2g-debug(7 failures out of 27) b2g-desktop(7 failures out of 27)
333 [test_can_play_type_ogg.html]
334 skip-if = buildapp == 'b2g' || e10s
335 [test_can_play_type_no_ogg.html]
336 [test_closing_connections.html]
337 [test_constants.html]
338 [test_controls.html]
339 [test_currentTime.html]
340 [test_decode_error.html]
341 [test_defaultMuted.html]
342 [test_delay_load.html]
343 skip-if = buildapp == 'b2g' # b2g(6 failures) b2g-debug(6 failures) b2g-desktop(6 failures)
344 [test_error_on_404.html]
345 skip-if = buildapp == 'b2g' && (toolkit != 'gonk' || debug)) # b2g-debug(timed out) b2g-desktop(timed out)
346 [test_fastSeek.html]
347 [test_info_leak.html]
348 skip-if = buildapp == 'b2g' # b2g(2 failures) b2g-debug(2 failures) b2g-desktop(2 failures)
349 [test_invalid_reject.html]
350 [test_load.html]
351 skip-if = (buildapp == 'b2g' && (toolkit != 'gonk' || debug)) # b2g-debug(Timed out after gizmo.mp4) b2g-desktop(Timed out after gizmo.mp4)
352 [test_load_candidates.html]
353 skip-if = (buildapp == 'b2g' && (toolkit != 'gonk' || debug)) # b2g-debug(timed out) b2g-desktop(timed out)
354 [test_load_same_resource.html]
355 skip-if = (buildapp == 'b2g' && (toolkit != 'gonk' || debug))
356 [test_load_source.html]
357 [test_loop.html]
358 [test_metadata.html]
359 skip-if = (buildapp == 'b2g' && (toolkit != 'gonk' || debug))
360 [test_no_load_event.html]
361 [test_networkState.html]
362 [test_new_audio.html]
363 [test_paused.html]
364 [test_paused_after_ended.html]
365 [test_play_events.html]
366 skip-if = (buildapp == 'b2g' && (toolkit != 'gonk' || debug)) # b2g-debug(Last event should be canplaythrough for gizmo.mp4 - got playing, expected canplaythrough) b2g-desktop(Last event should be canplaythrough for gizmo.mp4 - got playing, expected canplaythrough)
367 [test_play_events_2.html]
368 skip-if = (buildapp == 'b2g' && (toolkit != 'gonk' || debug)) # b2g-debug(Last event should be canplaythrough for gizmo.mp4 - got playing, expected canplaythrough) b2g-desktop(Last event should be canplaythrough for gizmo.mp4 - got playing, expected canplaythrough)
369 [test_playback_errors.html]
370 [test_seekable1.html]
371 skip-if = (buildapp == 'b2g' && (toolkit != 'gonk' || debug))
372 [test_preload_actions.html]
373 skip-if = toolkit == 'android' # bug 886188
374 [test_preload_attribute.html]
375 [test_progress.html]
376 skip-if = (buildapp == 'b2g' && (toolkit != 'gonk' || debug)) # b2g-debug(bug 901716 - timeouts) b2g-desktop(bug 901716 - timeouts)
377 [test_reactivate.html]
378 skip-if = (buildapp == 'b2g' && (toolkit != 'gonk' || debug)) # b2g-debug(timed out in small-shot.mp3) b2g-desktop(timed out in small-shot.mp3)
379 [test_readyState.html]
380 [test_referer.html]
381 [test_reset_events_async.html]
382 [test_replay_metadata.html]
383 skip-if = (buildapp == 'b2g' && (toolkit != 'gonk' || debug))
384 [test_seek2.html]
385 [test_seek_out_of_range.html]
386 skip-if = (buildapp == 'b2g' && (toolkit != 'gonk' || debug))
387 [test_seekable2.html]
388 [test_seekable3.html]
389 skip-if = buildapp == 'b2g' # b2g(timed out) b2g-debug(timed out) b2g-desktop(timed out)
390 [test_source.html]
391 skip-if = (buildapp == 'b2g' && (toolkit != 'gonk' || debug))
392 [test_source_write.html]
393 [test_source_null.html]
394 [test_standalone.html]
395 [test_volume.html]
396 [test_video_to_canvas.html]
397 [test_mediarecorder_creation.html]
398 [test_mediarecorder_creation_fail.html]
399 [test_mediarecorder_avoid_recursion.html]
400 [test_mediarecorder_record_timeslice.html]
401 [test_mediarecorder_record_audiocontext.html]
402 [test_mediarecorder_record_audiocontext_mlk.html]
403 [test_mediarecorder_record_4ch_audiocontext.html]
404 skip-if = (toolkit == 'gonk' && !debug)
405 [test_mediarecorder_record_stopms.html]
406 [test_mediarecorder_record_nosrc.html]
407 [test_mozHasAudio.html]
408 skip-if = (buildapp == 'b2g' && (toolkit != 'gonk' || debug))
409 [test_source_media.html]
410 skip-if = (buildapp == 'b2g' && (toolkit != 'gonk' || debug))
411 [test_autoplay_contentEditable.html]
412 skip-if = buildapp == 'b2g' # b2g(bug 899074 - timeouts) b2g-debug(bug 899074 - timeouts) b2g-desktop(bug 899074 - timeouts)
413 [test_decoder_disable.html]
414 [test_mediarecorder_record_no_timeslice.html]
415 [test_mediarecorder_reload_crash.html]
416 [test_mediarecorder_record_immediate_stop.html]
417 [test_mediarecorder_record_session.html]
418 [test_mediarecorder_record_startstopstart.html]
419 [test_mediarecorder_getencodeddata.html]
420 [test_mediarecorder_unsupported_src.html]
421 [test_mediarecorder_record_gum_video_timeslice.html]
422 skip-if = buildapp == 'b2g' || (toolkit == 'android') # mimetype check, bug 969289
423 [test_playback.html]
424 # Android Bug 668973
425 # b2g(Test timed out, bug 668973?) b2g-debug(Test timed out, bug 668973?) b2g-desktop(Test timed out, bug 668973?)
426 skip-if = buildapp == 'b2g' || toolkit == 'android'
427 [test_seekLies.html]
428 [test_media_sniffer.html]
429 [test_streams_srcObject.html]
430 [test_reset_src.html]
431 [test_streams_autoplay.html]
432 [test_streams_element_capture.html]
433 [test_streams_element_capture_reset.html]
434 skip-if = buildapp == 'b2g' # b2g(bug 901102) b2g-debug(bug 901102) b2g-desktop(bug 901102)
435 [test_streams_element_capture_createObjectURL.html]
436 [test_streams_element_capture_playback.html]
437 [test_streams_gc.html]
438 skip-if = buildapp == 'b2g' # b2g(Value being assigned to HTMLMediaElement.currentTime is not a finite floating-point value) b2g-debug(Value being assigned to HTMLMediaElement.currentTime is not a finite floating-point value) b2g-desktop(Value being assigned to HTMLMediaElement.currentTime is not a finite floating-point value)
439 [test_streams_tracks.html]
440 [test_trackelementevent.html]
441 [test_texttrack.html]
442 [test_texttrackcue.html]
443 [test_trackevent.html]
444 [test_texttrackregion.html]
445 [test_texttracklist.html]
446 [test_timeupdate_small_files.html]
447 [test_unseekable.html]
448 skip-if = buildapp == 'b2g'
449 [test_VideoPlaybackQuality.html]
450 [test_VideoPlaybackQuality_disabled.html]
451 [test_webvtt_disabled.html]
453 # [test_audioDocumentTitle.html] # disabled - See bug 475110
454 # [test_error_in_video_document.html] # disabled - See bug 608634
455 # [test_mixed_principals.html] # disabled - See bug 567954 and 574586
456 # [test_playback_rate_playpause.html] # disabled - See bug 897108
457 # [test_played.html] # disabled - See bug 751539
458 # [test_preload_suspend.html] # disabled - See bug 493692
459 # [test_resume.html] # disabled - No bug :-(
460 # [test_videoDocumentTitle.html] # disabled - See bug 492821
462 # [test_playback_rate.html] # disabled - See bug 921622
463 # Disabled since it causes random memory corruption, bug 921622, so
464 # the best-case scenario is that it results in random crashes while it
465 # runs, like bug 918417, bug 920827, bug 923996, bug 928225, bug 929521
466 # bug 930982, bug 932193. Worst-case but quite likely, it causes random
467 # crashes and failures in other tests which run after it. Don't even think
468 # about reenabling it on any platform unless you *know* that you have fixed
469 # that. Then don't think about reenabling it on Windows until you know that
470 # you have fixed the timeouts of bug 832768, bug 814533, bug 840742
472 [test_play_twice.html]
473 skip-if = appname == "seamonkey" # See bug 598252
475 [test_buffered.html]
476 skip-if = toolkit == 'android' || os == "win" || (toolkit == 'gonk' && !debug) # See bug 832768 and 864682, b2g(assertion failures)
477 [test_bug465498.html]
478 skip-if = os == "win" || (toolkit == 'gonk' && !debug) # See bug 832768 and 864682
479 [test_bug493187.html]
480 skip-if = os == "win" || (buildapp=='b2g'&&debug) || (toolkit == 'gonk' && !debug) # See bug 707777, #b2g-emulator-debug - process crash
481 [test_media_selection.html]
482 skip-if = os == "win" || (toolkit == 'gonk' && !debug) # See bug 897843, b2g(timed out)
483 [test_seek.html]
484 skip-if = buildapp == 'b2g' || toolkit == 'android' # Intermittent test failures in bug 1023564 and bug 981153
486 # The tests below contain backend-specific tests. Write backend independent
487 # tests rather than adding to this list.
489 [test_can_play_type_webm.html]
490 run-if = webm
491 [test_can_play_type_no_webm.html]
492 skip-if = webm
494 [test_can_play_type_wave.html]
495 run-if = wave
496 [test_can_play_type_no_wave.html]
497 skip-if = wave
498 [test_fragment_noplay.html]
499 run-if = wave
500 [test_fragment_play.html]
501 run-if = wave
502 skip-if = buildapp == 'b2g' || toolkit == 'android' # Intermittent failures - Bug 996465 & bug 924246