--- a/testing/web-platform/harness/wptrunner/browsers/firefox.py
+++ b/testing/web-platform/harness/wptrunner/browsers/firefox.py
@@ -47,17 +47,17 @@ def browser_kwargs(**kwargs):
def executor_kwargs(test_type, server_config, cache_manager, run_info_data,
**kwargs):
executor_kwargs = base_executor_kwargs(test_type, server_config,
cache_manager, **kwargs)
executor_kwargs["close_after_done"] = True
if run_info_data["debug"] and kwargs["timeout_multiplier"] is None:
- executor_kwargs["timeout_multiplier"] = 2
+ executor_kwargs["timeout_multiplier"] = 3
return executor_kwargs
def env_options():
return {"host": "127.0.0.1",
"external_host": "web-platform.test",
"bind_hostname": "false",
"certificate_domain": "web-platform.test",
--- a/testing/web-platform/meta/MANIFEST.json
+++ b/testing/web-platform/meta/MANIFEST.json
@@ -19731,16 +19731,23 @@
"items": {
"testharness": {
"encoding/api-invalid-label.html": [
{
"path": "encoding/api-invalid-label.html",
"timeout": "long",
"url": "/encoding/api-invalid-label.html"
}
+ ],
+ "quirks-mode/hashless-hex-color.html": [
+ {
+ "path": "quirks-mode/hashless-hex-color.html",
+ "timeout": "long",
+ "url": "/quirks-mode/hashless-hex-color.html"
+ }
]
}
},
"reftest_nodes": {}
},
"reftest_nodes": {
"2dcontext/building-paths/canvas_complexshapes_arcto_001.htm": [
{
--- a/testing/web-platform/meta/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-moved.html.ini
+++ b/testing/web-platform/meta/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-moved.html.ini
@@ -1,5 +1,7 @@
[resource-selection-candidate-moved.html]
type: testharness
+ disabled:
+ if debug: unstable
[moving the candidate source]
expected: FAIL
--- a/testing/web-platform/tests/quirks-mode/hashless-hex-color.html
+++ b/testing/web-platform/tests/quirks-mode/hashless-hex-color.html
@@ -1,12 +1,13 @@
<!doctype html>
<html>
<head>
<title>The hashless hex color quirk</title>
+ <meta name="timeout" content="long">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<style> iframe { width:20px; height:20px; } </style>
</head>
<body>
<div id=log></div>
<iframe id=quirks></iframe>
<iframe id=almost></iframe>
--- a/testing/web-platform/tests/webaudio/the-audio-api/the-mediaelementaudiosourcenode-interface/mediaElementAudioSourceToScriptProcessorTest.html
+++ b/testing/web-platform/tests/webaudio/the-audio-api/the-mediaelementaudiosourcenode-interface/mediaElementAudioSourceToScriptProcessorTest.html
@@ -56,40 +56,41 @@ Somewhat similiar to a test from Mozilla
// Create Audio context
context = new AudioContext();
// Create an audio element, and a media element source
audio = document.createElement('audio');
audio.src = src;
source = context.createMediaElementSource(audio);
+function processListener (e) {
+ actualBufferArrayC0 = concatTypedArray(actualBufferArrayC0, e.inputBuffer.getChannelData(0));
+ actualBufferArrayC1 = concatTypedArray(actualBufferArrayC1, e.inputBuffer.getChannelData(1));
+}
+
// Create a processor node to copy the input to the actual buffer
processor = context.createScriptProcessor(BUFFER_SIZE);
source.connect(processor);
processor.connect(context.destination);
- processor.addEventListener('audioprocess',
- (function (e) {
- actualBufferArrayC0 = concatTypedArray(actualBufferArrayC0, e.inputBuffer.getChannelData(0));
- actualBufferArrayC1 = concatTypedArray(actualBufferArrayC1, e.inputBuffer.getChannelData(1));
- }));
+ processor.addEventListener('audioprocess', processListener);
// When media playback ended, save the begin to compare with expected buffer
audio.addEventListener("ended", function(e) {
// Setting a timeout since we need audioProcess event to run for all samples
window.setTimeout(loadExpectedBuffer, 50);
});
audio.play();
function runTests(expected) {
source.disconnect();
processor.disconnect();
// firefox seems to process events after disconnect
- processor.removeEventListener('audioprocess')
+ processor.removeEventListener('audioprocess', processListener)
var expectedBuffer = expected[0];
// Trim the actual elements because we don't have a fine-grained
// control over the start and end time of recording the data.
var actualTrimmedC0 = trimEmptyElements(actualBufferArrayC0);
var actualTrimmedC1 = trimEmptyElements(actualBufferArrayC1);
var expectedLength = trimEmptyElements(expectedBuffer.getChannelData(0)).length;
--- a/testing/web-platform/tests/workers/semantics/run-a-worker/003.html
+++ b/testing/web-platform/tests/workers/semantics/run-a-worker/003.html
@@ -7,21 +7,21 @@
<script src="/resources/testharnessreport.js"></script>
<div id=log></div>
<script>
setup({allow_uncaught_exception: true});
async_test(function() {
var worker = new Worker('404_worker');
worker.onerror = this.step_func(function(e) { this.done(); });
-}, 'worker', {timeout:500});
+}, 'worker');
async_test(function() {
var shared = new SharedWorker('404_shared');
// NOTE: this handler will not fire, as runtime scripting errors
// are not forwarded to SharedWorker objects, but instead reported to the user directly.
shared.onerror = this.step_func(function(e) { assert_unreached(); }, shared, 'error');
- setTimeout(this.step_func(function() { this.done(); }), 500);
+ setTimeout(this.step_func(function() { this.done(); }), 1000);
}, 'shared');
</script>
<!--
*/
//-->