mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
5ccf92251b
From 49f5e33d79df3713bc510e611a5064858bf24e4a Mon Sep 17 00:00:00 2001 These files have specially crafted headers which should be rejected by the new checks added to resolve this bug. If any audio output is produced then this bug has re-occured. The audio data is the phrase "invalid file", in one or six channels, to make this more obvious. The new mochitest test_invalid_reject.html tries to load and play each of the new invalid files and verifies that an error event is triggered. Since the invalid data is in the file headers, this should happen after network load but before metadata is ready, so the test also asserts errors if loadedmetadata or a number of subsequent events are triggered. The test will time out if no error event is fired at all. Thanks to Matthew Gregan for assistance writing the mochitest. --- content/media/test/Makefile.in | 11 ++++++ content/media/test/invalid-cmap-s0c0.opus | Bin 0 -> 6835 bytes content/media/test/invalid-cmap-s0c2.opus | Bin 0 -> 6834 bytes content/media/test/invalid-cmap-s1c2.opus | Bin 0 -> 6848 bytes content/media/test/invalid-cmap-short.opus | Bin 0 -> 6854 bytes content/media/test/invalid-m0c0.opus | Bin 0 -> 2471 bytes content/media/test/invalid-m0c3.opus | Bin 0 -> 2471 bytes content/media/test/invalid-m1c0.opus | Bin 0 -> 6836 bytes content/media/test/invalid-m1c9.opus | Bin 0 -> 6836 bytes content/media/test/invalid-m2c0.opus | Bin 0 -> 2471 bytes content/media/test/invalid-m2c1.opus | Bin 0 -> 2455 bytes content/media/test/manifest.js | 14 ++++++++ content/media/test/test_invalid_reject.html | 52 ++++++++++++++++++++++++++++ 13 files changed, 77 insertions(+) create mode 100644 content/media/test/invalid-cmap-s0c0.opus create mode 100644 content/media/test/invalid-cmap-s0c2.opus create mode 100644 content/media/test/invalid-cmap-s1c2.opus create mode 100644 content/media/test/invalid-cmap-short.opus create mode 100644 content/media/test/invalid-m0c0.opus create mode 100644 content/media/test/invalid-m0c3.opus create mode 100644 content/media/test/invalid-m1c0.opus create mode 100644 content/media/test/invalid-m1c9.opus create mode 100644 content/media/test/invalid-m2c0.opus create mode 100644 content/media/test/invalid-m2c1.opus create mode 100644 content/media/test/test_invalid_reject.html
332 lines
8.1 KiB
Makefile
332 lines
8.1 KiB
Makefile
# 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/.
|
|
|
|
DEPTH = @DEPTH@
|
|
topsrcdir = @top_srcdir@
|
|
srcdir = @srcdir@
|
|
VPATH = @srcdir@
|
|
relativesrcdir = @relativesrcdir@
|
|
|
|
include $(DEPTH)/config/autoconf.mk
|
|
|
|
# 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.
|
|
|
|
MOCHITEST_FILES = \
|
|
allowed.sjs \
|
|
can_play_type_ogg.js \
|
|
can_play_type_wave.js \
|
|
can_play_type_webm.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_bug465498.html \
|
|
test_bug493187.html \
|
|
test_bug495145.html \
|
|
test_bug495300.html \
|
|
test_bug686942.html \
|
|
test_can_play_type.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_mozLoadFrom.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_played.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_seek.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_too_many_elements.html \
|
|
test_volume.html \
|
|
test_video_to_canvas.html \
|
|
use_large_cache.js \
|
|
test_audiowrite.html \
|
|
test_mozHasAudio.html \
|
|
test_source_media.html \
|
|
test_autoplay_contentEditable.html \
|
|
test_buffered.html \
|
|
test_bug448534.html \
|
|
test_bug463162.xhtml \
|
|
test_decoder_disable.html \
|
|
test_media_selection.html \
|
|
test_playback.html \
|
|
test_seekLies.html \
|
|
test_media_sniffer.html \
|
|
contentType.sjs \
|
|
test_streams_srcObject.html \
|
|
$(NULL)
|
|
|
|
$(warning test_error_in_video_document.html is disabled for intermittent failures. Bug 608634)
|
|
|
|
# Disabled on Windows for frequent intermittent failures
|
|
ifneq ($(OS_ARCH), WINNT)
|
|
MOCHITEST_FILES += \
|
|
test_streams_element_capture.html \
|
|
test_streams_element_capture_reset.html \
|
|
test_streams_element_capture_createObjectURL.html \
|
|
test_timeupdate_small_files.html \
|
|
$(NULL)
|
|
else
|
|
$(warning test_streams_element_capture{,_reset}.html is disabled on Windows for timeouts. Bug 752796)
|
|
$(warning test_timeupdate_small_files.html is disabled on Windows for timeouts. Bug 786539)
|
|
endif
|
|
|
|
# Don't run in suite
|
|
ifndef MOZ_SUITE
|
|
MOCHITEST_FILES += test_play_twice.html
|
|
else
|
|
$(warning test_play_twice.html is disabled pending investigation. Bug 598252)
|
|
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
|
|
|
|
# sample files
|
|
MOCHITEST_FILES += \
|
|
320x240.ogv \
|
|
448636.ogv \
|
|
audio-overhang.ogg \
|
|
audio-gaps.ogg \
|
|
badtags.ogg \
|
|
beta-phrasebook.ogg \
|
|
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 \
|
|
dirac.ogg \
|
|
multiple-bos.ogg \
|
|
split.webm \
|
|
seek.ogv \
|
|
seek.webm \
|
|
seek.yuv \
|
|
short-video.ogv \
|
|
small-shot.ogg \
|
|
sound.ogg \
|
|
spacestorm-1000Hz-100ms.ogg \
|
|
video-overhang.ogg \
|
|
file_a4_tone.ogg \
|
|
detodos.opus \
|
|
short.mp4 \
|
|
notags.mp3 \
|
|
id3tags.mp3 \
|
|
$(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 \
|
|
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_bug726904.html \
|
|
$(NULL)
|
|
|
|
# Bug 759221
|
|
MOCHITEST_FILES += \
|
|
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 \
|
|
$(NULL)
|
|
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
|
|
|
|
include $(topsrcdir)/config/rules.mk
|