Update web-platform-tests to revision 122a4672fa0dc554a6e7528fa3487fd907c792ee

This commit is contained in:
WPT Sync Bot 2019-03-23 21:54:52 -04:00
parent fb1123495f
commit 93d826f7ba
301 changed files with 4775 additions and 1769 deletions

File diff suppressed because it is too large Load diff

View file

@ -326,3 +326,12 @@
[Matching font-weight: '501' should prefer '500' over '450 460'] [Matching font-weight: '501' should prefer '500' over '450 460']
expected: FAIL expected: FAIL
[Matching font-weight: '501' should prefer '501' over '502 510']
expected: FAIL
[Matching font-style: 'oblique 20deg' should prefer 'oblique 40deg 50deg' over 'oblique 10deg']
expected: FAIL
[Matching font-style: 'italic' should prefer 'oblique 30deg 60deg' over 'oblique 40deg 50deg']
expected: FAIL

View file

@ -3,6 +3,3 @@
[scroll-behavior: smooth on DIV element] [scroll-behavior: smooth on DIV element]
expected: FAIL expected: FAIL
[Instant scrolling while doing history navigation.]
expected: FAIL

View file

@ -32,7 +32,7 @@
[single-byte-decoder.html?XMLHttpRequest] [single-byte-decoder.html?XMLHttpRequest]
expected: CRASH expected: TIMEOUT
[ISO-8859-2: iso_8859-2:1987 (XMLHttpRequest)] [ISO-8859-2: iso_8859-2:1987 (XMLHttpRequest)]
expected: FAIL expected: FAIL
@ -93,9 +93,6 @@
[windows-1255: x-cp1255 (XMLHttpRequest)] [windows-1255: x-cp1255 (XMLHttpRequest)]
expected: TIMEOUT expected: TIMEOUT
[windows-1258: windows-1258 (XMLHttpRequest)]
expected: TIMEOUT
[x-mac-cyrillic: x-mac-cyrillic (XMLHttpRequest)] [x-mac-cyrillic: x-mac-cyrillic (XMLHttpRequest)]
expected: TIMEOUT expected: TIMEOUT
@ -108,10 +105,28 @@
[windows-1257: x-cp1257 (XMLHttpRequest)] [windows-1257: x-cp1257 (XMLHttpRequest)]
expected: TIMEOUT expected: TIMEOUT
[windows-1254: iso_8859-9 (XMLHttpRequest)] [windows-1253: x-cp1253 (XMLHttpRequest)]
expected: TIMEOUT expected: TIMEOUT
[windows-1257: windows-1257 (XMLHttpRequest)] [windows-1254: iso88599 (XMLHttpRequest)]
expected: TIMEOUT
[windows-1254: iso-8859-9 (XMLHttpRequest)]
expected: TIMEOUT
[windows-1254: csisolatin5 (XMLHttpRequest)]
expected: TIMEOUT
[windows-1254: cp1254 (XMLHttpRequest)]
expected: TIMEOUT
[windows-1254: iso8859-9 (XMLHttpRequest)]
expected: TIMEOUT
[windows-1254: iso-ir-148 (XMLHttpRequest)]
expected: TIMEOUT
[windows-1256: windows-1256 (XMLHttpRequest)]
expected: TIMEOUT expected: TIMEOUT

View file

@ -0,0 +1,16 @@
[format-field-id-null.window.html]
[EventSource: id field set to %00x]
expected: FAIL
[EventSource: id field set to x%00x]
expected: FAIL
[EventSource: id field set to %00%00]
expected: FAIL
[EventSource: id field set to %20%00]
expected: FAIL
[EventSource: id field set to x%00]
expected: FAIL

View file

@ -0,0 +1,27 @@
[redirect-location-escape.tentative.any.html]
[Redirect to invalid UTF-8]
expected: FAIL
[Redirect to unescaped UTF-8]
expected: FAIL
[Escaping produces double-percent]
expected: FAIL
[Redirect to escaped and unescaped UTF-8]
expected: FAIL
[redirect-location-escape.tentative.any.worker.html]
[Redirect to invalid UTF-8]
expected: FAIL
[Redirect to unescaped UTF-8]
expected: FAIL
[Escaping produces double-percent]
expected: FAIL
[Redirect to escaped and unescaped UTF-8]
expected: FAIL

View file

@ -312,3 +312,18 @@
[<iframe>: separate response Content-Type: text/plain */*;charset=gbk] [<iframe>: separate response Content-Type: text/plain */*;charset=gbk]
expected: FAIL expected: FAIL
[<iframe>: separate response Content-Type: text/html;" text/plain]
expected: FAIL
[<iframe>: separate response Content-Type: text/html */*;charset=gbk]
expected: FAIL
[<iframe>: combined response Content-Type: text/html */*;charset=gbk]
expected: FAIL
[<iframe>: separate response Content-Type: text/html;charset=gbk text/plain text/html]
expected: FAIL
[<iframe>: separate response Content-Type: */* text/html]
expected: FAIL

View file

@ -11,3 +11,6 @@
[X-Content-Type-Options%3A%20nosniff%0C] [X-Content-Type-Options%3A%20nosniff%0C]
expected: FAIL expected: FAIL
[Content-Type-Options%3A%20nosniff]
expected: FAIL

View file

@ -1,7 +0,0 @@
[toggleEvent.html]
[Calling open twice on 'details' fires only one toggle event]
expected: FAIL
[Setting open=true to opened 'details' element should not fire a toggle event at the 'details' element]
expected: FAIL

View file

@ -0,0 +1,2 @@
[script-onerror-insertion-point-2.html]
expected: TIMEOUT

View file

@ -0,0 +1,2 @@
[Worker-constructor.html]
expected: ERROR

View file

@ -0,0 +1,2 @@
[hide_and_show.html]
expected: FAIL

View file

@ -0,0 +1,2 @@
[stacked_layers.html]
expected: FAIL

View file

@ -1,2 +0,0 @@
[transition_calc_implicit.html]
expected: TIMEOUT

View file

@ -0,0 +1,2 @@
[resize_after_load.html]
expected: FAIL

View file

@ -95,7 +95,7 @@ jobs:
displayName: 'Publish results' displayName: 'Publish results'
inputs: inputs:
artifactName: 'infrastructure' artifactName: 'infrastructure'
condition: succeededOrFailed() condition: always()
- job: tools_unittest_macOS - job: tools_unittest_macOS
displayName: 'tools/ unittests (macOS)' displayName: 'tools/ unittests (macOS)'
@ -160,7 +160,7 @@ jobs:
displayName: 'Publish results' displayName: 'Publish results'
inputs: inputs:
artifactName: 'infrastructure' artifactName: 'infrastructure'
condition: succeededOrFailed() condition: always()
- template: tools/ci/azure/cleanup_win10.yml - template: tools/ci/azure/cleanup_win10.yml
- job: results_edge - job: results_edge

View file

@ -1,5 +1,4 @@
version: 1 version: 1
reporting: checks-v1
policy: policy:
pullRequests: public pullRequests: public
tasks: tasks:
@ -71,13 +70,14 @@ tasks:
public/results: public/results:
path: /home/test/artifacts path: /home/test/artifacts
type: directory type: directory
env:
TASK_EVENT: "${event_str}"
command: command:
- /bin/bash - /bin/bash
- --login - --login
- -c - -c
- set -ex; - set -ex;
echo "wpt-${browser.name}-${browser.channel}-${chunk[0]}-${chunk[1]}"; echo "wpt-${browser.name}-${browser.channel}-${chunk[0]}-${chunk[1]}";
export TASK_EVENT='${event_str}';
~/start.sh ~/start.sh
${event.repository.url} ${event.repository.url}
${event.ref} ${event.ref}
@ -89,16 +89,17 @@ tasks:
--browser=${browser.name} --browser=${browser.name}
--channel=${browser.channel} --channel=${browser.channel}
--xvfb --xvfb
run-all
./tools/ci/taskcluster-run.py ./tools/ci/taskcluster-run.py
${browser.name} ${browser.name}
-- --
--channel=${browser.channel} --channel=${browser.channel}
--log-wptreport=../artifacts/wpt_report.json --log-wptreport=../artifacts/wpt_report.json
--log-wptscreenshot=../artifacts/wpt_screenshot.txt --log-wptscreenshot=../artifacts/wpt_screenshot.txt
--no-fail-on-unexpected --no-fail-on-unexpected
--test-type=${chunk[0]} --test-type=${chunk[0]}
--this-chunk=${chunk[1]} --this-chunk=${chunk[1]}
--total-chunks=${chunk[2]}; --total-chunks=${chunk[2]};
- $if: tasks_for == "github-pull-request" - $if: tasks_for == "github-pull-request"
# PR tasks that run the tests in various configurations # PR tasks that run the tests in various configurations
then: then:
@ -161,6 +162,8 @@ tasks:
public/results: public/results:
path: /home/test/artifacts path: /home/test/artifacts
type: directory type: directory
env:
TASK_EVENT: "${event_str}"
# Fetch the GitHub-provided merge commit (rather than the pull # Fetch the GitHub-provided merge commit (rather than the pull
# request branch) so that the tasks simulate the behavior of the # request branch) so that the tasks simulate the behavior of the
# submitted patch after it is merged. Using the merge commit also # submitted patch after it is merged. Using the merge commit also
@ -173,7 +176,6 @@ tasks:
- -c - -c
- set -ex; - set -ex;
echo "${operation.name}"; echo "${operation.name}";
export TASK_EVENT='${event_str}';
~/start.sh ~/start.sh
${event.repository.clone_url} ${event.repository.clone_url}
refs/pull/${event.number}/merge refs/pull/${event.number}/merge
@ -314,13 +316,14 @@ tasks:
public/results: public/results:
path: /home/test/artifacts path: /home/test/artifacts
type: directory type: directory
env:
TASK_EVENT: "${event_str}"
command: command:
- /bin/bash - /bin/bash
- --login - --login
- -c - -c
- set -ex; - set -ex;
echo "${operation.name}"; echo "${operation.name}";
export TASK_EVENT='${event_str}';
~/start.sh ~/start.sh
${event.repository.clone_url} ${event.repository.clone_url}
${checkout_ref} ${checkout_ref}

View file

@ -343,6 +343,8 @@ def genTestUtils(TESTOUTPUTDIR, IMAGEOUTPUTDIR, TEMPLATEFILE, NAME2DIRFILE, ISOF
notes = '<p class="notes">%s' % test['notes'] if 'notes' in test else '' notes = '<p class="notes">%s' % test['notes'] if 'notes' in test else ''
timeout = '\n<meta name="timeout" content="%s">' % test['timeout'] if 'timeout' in test else ''
scripts = '' scripts = ''
for s in test.get('scripts', []): for s in test.get('scripts', []):
scripts += '<script src="%s"></script>\n' % (s) scripts += '<script src="%s"></script>\n' % (s)
@ -385,7 +387,7 @@ def genTestUtils(TESTOUTPUTDIR, IMAGEOUTPUTDIR, TEMPLATEFILE, NAME2DIRFILE, ISOF
'mapped_name':mapped_name, 'mapped_name':mapped_name,
'desc':desc, 'escaped_desc':escaped_desc, 'desc':desc, 'escaped_desc':escaped_desc,
'prev':prev, 'next':next, 'refs':refs, 'notes':notes, 'images':images, 'prev':prev, 'next':next, 'refs':refs, 'notes':notes, 'images':images,
'fonts':fonts, 'fonthack':fonthack, 'fonts':fonts, 'fonthack':fonthack, 'timeout': timeout,
'canvas':canvas, 'expected':expectation_html, 'code':code, 'canvas':canvas, 'expected':expectation_html, 'code':code,
'scripts':scripts + extra_script, 'scripts':scripts + extra_script,
'fallback':fallback 'fallback':fallback

View file

@ -1,6 +1,7 @@
<!doctype html> <!doctype html>
<meta charset="utf-8"> <meta charset="utf-8">
<title>FileAPI Test: Verify behavior of Blob URL in unique origins</title> <title>FileAPI Test: Verify behavior of Blob URL in unique origins</title>
<meta name="timeout" content="long">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>

View file

@ -1,3 +1,4 @@
// META: timeout=long
async_test(t => { async_test(t => {
const run_result = 'test_frame_OK'; const run_result = 'test_frame_OK';
const blob_contents = '<!doctype html>\n<meta charset="utf-8">\n' + const blob_contents = '<!doctype html>\n<meta charset="utf-8">\n' +

View file

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset="utf-8"> <meta charset="utf-8">
<title>IDBIndex.multiEntry - a 1000 entry multiEntry array</title> <title>IDBIndex.multiEntry - a 1000 entry multiEntry array</title>
<meta name="timeout" content="long">
<link rel="author" href="mailto:odinho@opera.com" title="Odin Hørthe Omdal"> <link rel="author" href="mailto:odinho@opera.com" title="Odin Hørthe Omdal">
<link rel=help href="http://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html#key-construct"> <link rel=help href="http://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html#key-construct">
<link rel=assert title="XXX"> <link rel=assert title="XXX">

View file

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset="utf-8"> <meta charset="utf-8">
<title>Accelerometer iframe test</title> <title>Accelerometer iframe test</title>
<meta name="timeout" content="long">
<link rel="author" title="Intel" href="http://www.intel.com"> <link rel="author" title="Intel" href="http://www.intel.com">
<link rel="help" href="https://www.w3.org/TR/accelerometer/"> <link rel="help" href="https://www.w3.org/TR/accelerometer/">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>

View file

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset="utf-8"> <meta charset="utf-8">
<title>Accelerometer Test</title> <title>Accelerometer Test</title>
<meta name="timeout" content="long">
<link rel="author" title="Intel" href="http://www.intel.com"> <link rel="author" title="Intel" href="http://www.intel.com">
<link rel="help" href="https://www.w3.org/TR/accelerometer/"> <link rel="help" href="https://www.w3.org/TR/accelerometer/">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>

View file

@ -0,0 +1,98 @@
<!DOCTYPE html>
<meta charset=utf-8>
<title>Correctness of worklet animation state when timeline becomes newly
active or inactive.</title>
<link rel="help" href="https://drafts.css-houdini.org/css-animationworklet/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/web-animations/testcommon.js"></script>
<script src="common.js"></script>
<style>
.scroller {
overflow: auto;
height: 100px;
width: 100px;
}
.contents {
height: 1000px;
width: 100%;
}
</style>
<body>
<div id="log"></div>
<script>
'use strict';
function createScroller(test) {
var scroller = createDiv(test);
scroller.innerHTML = "<div class='contents'></div>";
scroller.classList.add('scroller');
return scroller;
}
function createScrollLinkedWorkletAnimation(test) {
const timeline = new ScrollTimeline({
scrollSource: createScroller(test),
timeRange: 1000
});
const DURATION = 10000; // ms
const KEYFRAMES = { transform: ['translateY(100px)', 'translateY(200px)'] };
return new WorkletAnimation('passthrough', new KeyframeEffect(createDiv(test),
KEYFRAMES, DURATION), timeline);
}
setup(setupAndRegisterTests, {explicit_done: true});
function setupAndRegisterTests() {
registerPassthroughAnimator().then(() => {
promise_test(async t => {
const animation = createScrollLinkedWorkletAnimation(t);
const scroller = animation.timeline.scrollSource;
const maxScroll = scroller.scrollHeight - scroller.clientHeight;
const timeRange = animation.timeline.timeRange;
scroller.scrollTop = 0.2 * maxScroll;
// Make the timeline inactive.
scroller.style.display = "none"
// Force relayout.
scroller.scrollTop;
animation.play();
assert_equals(animation.currentTime, null,
'Initial current time must be unresolved in idle state.');
assert_equals(animation.startTime, null,
'Initial start time must be unresolved in idle state.');
waitForAnimationFrameWithCondition(_=> {
return animation.playState == "running"
});
assert_equals(animation.currentTime, null,
'Initial current time must be unresolved in playing state.');
assert_equals(animation.startTime, null,
'Initial start time must be unresolved in playing state.');
// Make the timeline active.
scroller.style.display = ""
scroller.scrollTop;
assert_times_equal(animation.currentTime, 200,
'Current time must be initialized.');
assert_times_equal(animation.startTime, 0,
'Start time must be initialized.');
// Make the timeline inactive again.
scroller.style.display = "none"
scroller.scrollTop;
assert_times_equal(animation.currentTime, 200,
'Current time must be the previous current time.');
assert_equals(animation.startTime, null,
'Initial start time must be unresolved.');
}, 'When timeline time becomes inactive previous current time must be ' +
'the current time and start time unresolved');
done();
});
}
</script>
</body>

View file

@ -264,69 +264,6 @@ backgroundFetchTest(async (test, backgroundFetch) => {
}, 'Fetches with mixed content should fail.'); }, 'Fetches with mixed content should fail.');
backgroundFetchTest(async (test, backgroundFetch) => {
const registrationId = 'matchexistingrequest';
const registration =
await backgroundFetch.fetch(registrationId, 'resources/feature-name.txt');
assert_equals(registration.id, registrationId);
const {type, eventRegistration, results} = await getMessageFromServiceWorker();
assert_equals('backgroundfetchsuccess', type);
assert_equals(results.length, 1);
assert_equals(eventRegistration.id, registration.id);
assert_equals(eventRegistration.result, 'success');
assert_equals(eventRegistration.failureReason, '');
assert_true(results[0].url.includes('resources/feature-name.txt'));
assert_equals(results[0].status, 200);
assert_equals(results[0].text, 'Background Fetch');
}, 'Matching to a single request should work');
backgroundFetchTest(async (test, backgroundFetch) => {
const registrationId = 'matchmissingrequest';
const registration =
await backgroundFetch.fetch(registrationId, 'resources/feature-name.txt');
assert_equals(registration.id, registrationId);
const {type, eventRegistration, results} = await getMessageFromServiceWorker();
assert_equals('backgroundfetchsuccess', type);
assert_equals(results.length, 0);
assert_equals(eventRegistration.id, registration.id);
assert_equals(eventRegistration.result, 'success');
assert_equals(eventRegistration.failureReason, '');
}, 'Matching to a non-existing request should work');
backgroundFetchTest(async (test, backgroundFetch) => {
const registrationId = 'matchexistingrequesttwice';
const registration =
await backgroundFetch.fetch(registrationId, 'resources/feature-name.txt');
assert_equals(registration.id, registrationId);
const {type, eventRegistration, results} = await getMessageFromServiceWorker();
assert_equals('backgroundfetchsuccess', type);
assert_equals(results.length, 2);
assert_equals(eventRegistration.id, registration.id);
assert_equals(eventRegistration.result, 'success');
assert_equals(eventRegistration.failureReason, '');
assert_true(results[0].url.includes('resources/feature-name.txt'));
assert_equals(results[0].status, 200);
assert_equals(results[0].text, 'Background Fetch');
assert_true(results[1].url.includes('resources/feature-name.txt'));
assert_equals(results[1].status, 200);
assert_equals(results[1].text, 'Background Fetch');
}, 'Matching multiple times on the same request works as expected.');
backgroundFetchTest(async (test, backgroundFetch) => { backgroundFetchTest(async (test, backgroundFetch) => {
const filePath = '/background-fetch/resources/feature-name.txt'; const filePath = '/background-fetch/resources/feature-name.txt';
const registration = await backgroundFetch.fetch( const registration = await backgroundFetch.fetch(
@ -341,15 +278,3 @@ backgroundFetchTest(async (test, backgroundFetch) => {
assert_equals(eventRegistration.id, registration.id); assert_equals(eventRegistration.id, registration.id);
assert_equals(eventRegistration.downloaded, 0); assert_equals(eventRegistration.downloaded, 0);
}, 'Responses failing CORS checks are not leaked'); }, 'Responses failing CORS checks are not leaked');
backgroundFetchTest(async (test, backgroundFetch) => {
const registration = await backgroundFetch.fetch(
uniqueId(), ['resources/feature-name.txt', '/common/slow.py']);
const record = await registration.match('resources/feature-name.txt');
const response = await record.responseReady;
assert_true(response.url.includes('resources/feature-name.txt'));
const completedResponseText = await response.text();
assert_equals(completedResponseText, 'Background Fetch');
}, 'Access to active fetches is supported.');

View file

@ -0,0 +1,113 @@
// META: script=/common/get-host-info.sub.js
// META: script=/service-workers/service-worker/resources/test-helpers.sub.js
// META: script=resources/utils.js
'use strict';
// Covers basic functionality provided by BackgroundFetchRegistration.match(All)?.
// https://wicg.github.io/background-fetch/#dom-backgroundfetchregistration-match
backgroundFetchTest(async (test, backgroundFetch) => {
const registrationId = 'matchexistingrequest';
const registration =
await backgroundFetch.fetch(registrationId, 'resources/feature-name.txt');
assert_equals(registration.id, registrationId);
const {type, eventRegistration, results} = await getMessageFromServiceWorker();
assert_equals('backgroundfetchsuccess', type);
assert_equals(results.length, 1);
assert_equals(eventRegistration.id, registration.id);
assert_equals(eventRegistration.result, 'success');
assert_equals(eventRegistration.failureReason, '');
assert_true(results[0].url.includes('resources/feature-name.txt'));
assert_equals(results[0].status, 200);
assert_equals(results[0].text, 'Background Fetch');
}, 'Matching to a single request should work');
backgroundFetchTest(async (test, backgroundFetch) => {
const registrationId = 'matchmissingrequest';
const registration =
await backgroundFetch.fetch(registrationId, 'resources/feature-name.txt');
assert_equals(registration.id, registrationId);
const {type, eventRegistration, results} = await getMessageFromServiceWorker();
assert_equals('backgroundfetchsuccess', type);
assert_equals(results.length, 0);
assert_equals(eventRegistration.id, registration.id);
assert_equals(eventRegistration.result, 'success');
assert_equals(eventRegistration.failureReason, '');
}, 'Matching to a non-existing request should work');
backgroundFetchTest(async (test, backgroundFetch) => {
const registrationId = 'matchexistingrequesttwice';
const registration =
await backgroundFetch.fetch(registrationId, 'resources/feature-name.txt');
assert_equals(registration.id, registrationId);
const {type, eventRegistration, results} = await getMessageFromServiceWorker();
assert_equals('backgroundfetchsuccess', type);
assert_equals(results.length, 2);
assert_equals(eventRegistration.id, registration.id);
assert_equals(eventRegistration.result, 'success');
assert_equals(eventRegistration.failureReason, '');
assert_true(results[0].url.includes('resources/feature-name.txt'));
assert_equals(results[0].status, 200);
assert_equals(results[0].text, 'Background Fetch');
assert_true(results[1].url.includes('resources/feature-name.txt'));
assert_equals(results[1].status, 200);
assert_equals(results[1].text, 'Background Fetch');
}, 'Matching multiple times on the same request works as expected.');
backgroundFetchTest(async (test, backgroundFetch) => {
const registration = await backgroundFetch.fetch(
uniqueId(), ['resources/feature-name.txt', '/common/slow.py']);
const record = await registration.match('resources/feature-name.txt');
const response = await record.responseReady;
assert_true(response.url.includes('resources/feature-name.txt'));
const completedResponseText = await response.text();
assert_equals(completedResponseText, 'Background Fetch');
}, 'Access to active fetches is supported.');
backgroundFetchTest(async (test, backgroundFetch) => {
const registration = await backgroundFetch.fetch(
uniqueId(), [
'resources/feature-name.txt',
'resources/feature-name.txt',
'resources/feature-name.txt?id=3',
new Request('resources/feature-name.txt', {method: 'PUT'}),
'/common/slow.py',
]);
let matchedRecords = null;
// We should match all the duplicates.
matchedRecords = await registration.matchAll('resources/feature-name.txt');
assert_equals(matchedRecords.length, 2);
// We should match the request with the query param as well.
matchedRecords = await registration.matchAll('resources/feature-name.txt', {ignoreSearch: true});
assert_equals(matchedRecords.length, 3);
// We should match the PUT request as well.
matchedRecords = await registration.matchAll('resources/feature-name.txt', {ignoreMethod: true});
assert_equals(matchedRecords.length, 3);
// We should match all requests.
matchedRecords = await registration.matchAll('resources/feature-name.txt', {ignoreSearch: true, ignoreMethod: true});
assert_equals(matchedRecords.length, 4);
}, 'Match with query options.');

View file

@ -1,3 +1,4 @@
// META: timeout=long
// META: script=/common/utils.js // META: script=/common/utils.js
// META: script=beacon-common.sub.js // META: script=beacon-common.sub.js

View file

@ -1,3 +1,4 @@
// META: timeout=long
// META: script=/common/utils.js // META: script=/common/utils.js
// META: script=beacon-common.sub.js // META: script=beacon-common.sub.js

View file

@ -2,6 +2,7 @@
<html> <html>
<head> <head>
<title>no default src doesn't behave exactly like *</title> <title>no default src doesn't behave exactly like *</title>
<meta name="timeout" content="long">
<script src='/resources/testharness.js'></script> <script src='/resources/testharness.js'></script>
<script src='/resources/testharnessreport.js'></script> <script src='/resources/testharnessreport.js'></script>
<script src="../support/alertAssert.sub.js?alerts=[]"> </script> <script src="../support/alertAssert.sub.js?alerts=[]"> </script>

View file

@ -1,9 +1,10 @@
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<title>Cookies are not sent on cross origin violation reports</title>
<meta name="timeout" content="long">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<title>Cookies are not sent on cross origin violation reports</title>
<!-- CSP headers <!-- CSP headers
Content-Security-Policy: script-src 'unsafe-inline' 'self'; img-src 'none'; report-uri http://{{domains[www1]}}:{{ports[http][0]}}/content-security-policy/support/report.py?op=put&reportID=$id Content-Security-Policy: script-src 'unsafe-inline' 'self'; img-src 'none'; report-uri http://{{domains[www1]}}:{{ports[http][0]}}/content-security-policy/support/report.py?op=put&reportID=$id
--> -->

View file

@ -1,9 +1,10 @@
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<title>Report-only policy not allowed in meta tag</title>
<meta name="timeout" content="long">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<title>Report-only policy not allowed in meta tag</title>
<!-- CSP headers <!-- CSP headers
Content-Security-Policy: script-src 'unsafe-inline' 'self' Content-Security-Policy: script-src 'unsafe-inline' 'self'
--> -->

View file

@ -2,6 +2,7 @@
<html> <html>
<head> <head>
<title>Multiple policies with different hashing algorithms still work.</title> <title>Multiple policies with different hashing algorithms still work.</title>
<meta name="timeout" content="long">
<script src='/resources/testharness.js'></script> <script src='/resources/testharness.js'></script>
<script src='/resources/testharnessreport.js'></script> <script src='/resources/testharnessreport.js'></script>
</head> </head>

View file

@ -41,7 +41,13 @@
} }
} }
var timeout = document.querySelector("meta[name=timeout][content=long]") ? 50 : 5; // There is no real way to test (in this particular layer) that a CSP report
// has *not* been sent, at least not without some major reworks and
// involvement from all the platform participants. So the current "solution"
// is to wait for some reasonable amount of time and if no report has been
// received to conclude that no report has been generated. These timeouts must
// not exceed the test timeouts set by vendors otherwise the test would fail.
var timeout = document.querySelector("meta[name=timeout][content=long]") ? 25 : 5;
var reportLocation = location.protocol + "//" + location.host + "/content-security-policy/support/report.py?op=retrieve_report&timeout=" + timeout + "&reportID=" + reportID; var reportLocation = location.protocol + "//" + location.host + "/content-security-policy/support/report.py?op=retrieve_report&timeout=" + timeout + "&reportID=" + reportID;
if (testName == "") testName = "Violation report status OK."; if (testName == "") testName = "Violation report status OK.";

View file

@ -3,6 +3,7 @@
<head> <head>
<meta charset=utf-8> <meta charset=utf-8>
<title>Tests cookie setting domain functionality</title> <title>Tests cookie setting domain functionality</title>
<meta name="timeout" content="long">
<meta name=help href="https://tools.ietf.org/html/rfc6265#page-8"> <meta name=help href="https://tools.ietf.org/html/rfc6265#page-8">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>

View file

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset=utf-8> <meta charset=utf-8>
<title>CORS - 304 Responses</title> <title>CORS - 304 Responses</title>
<meta name="timeout" content="long">
<meta name=author title="Mark Nottingham" href="mailto:mnot@mnot.net"> <meta name=author title="Mark Nottingham" href="mailto:mnot@mnot.net">
<script src=/resources/testharness.js></script> <script src=/resources/testharness.js></script>

View file

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset=utf-8> <meta charset=utf-8>
<title>Access-Control-Allow-Origin handling</title> <title>Access-Control-Allow-Origin handling</title>
<meta name="timeout" content="long">
<link rel=help href=https://fetch.spec.whatwg.org/> <link rel=help href=https://fetch.spec.whatwg.org/>
<meta name=author title="Odin Hørthe Omdal" href="mailto:odiho@opera.com"> <meta name=author title="Odin Hørthe Omdal" href="mailto:odiho@opera.com">

View file

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset=utf-8> <meta charset=utf-8>
<title>CORS - preflight cache</title> <title>CORS - preflight cache</title>
<meta name="timeout" content="long">
<meta name=author title="Odin Hørthe Omdal" href="mailto:odiho@opera.com"> <meta name=author title="Odin Hørthe Omdal" href="mailto:odiho@opera.com">
<script src=/resources/testharness.js></script> <script src=/resources/testharness.js></script>

View file

@ -1,6 +1,7 @@
<!doctype html> <!doctype html>
<meta charset=utf-8> <meta charset=utf-8>
<title>CSSAnimation.effect</title> <title>CSSAnimation.effect</title>
<meta name="timeout" content="long">
<!-- TODO: Add a more specific link for this once it is specified. --> <!-- TODO: Add a more specific link for this once it is specified. -->
<link rel="help" href="https://drafts.csswg.org/css-animations-2/#cssanimation"> <link rel="help" href="https://drafts.csswg.org/css-animations-2/#cssanimation">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>

View file

@ -1,6 +1,7 @@
<!doctype html> <!doctype html>
<meta charset=utf-8> <meta charset=utf-8>
<title>Tests for CSS animation event dispatch</title> <title>Tests for CSS animation event dispatch</title>
<meta name="timeout" content="long">
<link rel="help" href="https://drafts.csswg.org/css-animations-2/#event-dispatch"/> <link rel="help" href="https://drafts.csswg.org/css-animations-2/#event-dispatch"/>
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>

View file

@ -0,0 +1,24 @@
<!doctype html>
<title>CSS Test Reference</title>
<style>
.text {
background-color: blue;
color: transparent;
font: 50px/1 monospace;
-webkit-background-clip: text;
background-clip: text;
height: 200px;
}
.prev {
height: 100px;
}
p {
color: transparent;
}
</style>
<div class="text">
<div class="prev"></div>
<div class="inner">
<p>XxX</p>
</div>
</div>

View file

@ -0,0 +1,40 @@
<!doctype html>
<html class="reftest-wait">
<title>CSS Test: background-clip: text is invalidated properly on text position changes</title>
<link rel="help" href="https://drafts.csswg.org/css-backgrounds-4/#valdef-background-clip-text">
<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1525372">
<link rel="author" href="mailto:mwoodrow@mozilla.com" title="Matt Woodrow">
<link rel="author" href="https://mozilla.org" title="Mozilla">
<link rel="match" href="clip-text-dynamic-2-ref.html">
<style>
.text {
background-color: blue;
color: transparent;
font: 50px/1 monospace;
-webkit-background-clip: text;
background-clip: text;
height: 200px;
}
.prev {
height: 10px;
}
p {
color: transparent;
}
</style>
<div class="text">
<div class="prev"></div>
<div class="inner">
<p>XxX</p>
</div>
</div>
<script>
onload = () => {
requestAnimationFrame(() => {
requestAnimationFrame(() => {
document.querySelector(".prev").style.height = "100px";
document.documentElement.className = "";
})
})
}
</script>

View file

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<html class="reftest-wait"> <html class="reftest-wait">
<title>Test for font-display @font-face descriptor</title> <title>Test for font-display @font-face descriptor</title>
<meta name="timeout" content="long">
<link rel="help" href="https://drafts.csswg.org/css-fonts-4/#font-display-desc"> <link rel="help" href="https://drafts.csswg.org/css-fonts-4/#font-display-desc">
<link rel="match" href="font-display-ref.html"> <link rel="match" href="font-display-ref.html">
<style> <style>

View file

@ -2,6 +2,7 @@
<html> <html>
<head> <head>
<title>Testing the interpolation of new font-style values introduced in CSS Fonts level 4</title> <title>Testing the interpolation of new font-style values introduced in CSS Fonts level 4</title>
<meta name="timeout" content="long">
<link rel="help" href="https://www.w3.org/TR/css-fonts-4/#font-style-prop" /> <link rel="help" href="https://www.w3.org/TR/css-fonts-4/#font-style-prop" />
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>

View file

@ -0,0 +1,9 @@
<!DOCTYPE html>
<meta charset="utf-8">
<title>Simple calc expression in table layout</title>
<table border>
<tr>
<td style="width: 50%">x</td>
<td style="width: 100px">y</td>
</tr>
</table>

View file

@ -0,0 +1,12 @@
<!DOCTYPE html>
<meta charset="utf-8">
<title>Simple calc expression in table layout</title>
<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/3482">
<link rel="match" href="calc-percent-plus-0px-ref.html">
<meta name="assert" content="calc(% + 0px) should be handled as calc(%) in table layout.">
<table border>
<tr>
<td style="width: calc(50% + 0px)">x</td>
<td style="width: 100px">y</td>
</tr>
</table>

View file

@ -3,6 +3,7 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<title>CSS Transitions Test: Intermediate Property Values</title> <title>CSS Transitions Test: Intermediate Property Values</title>
<meta name="timeout" content="long">
<meta name="assert" content="Test checks that value ranges between start and end while transitioning"> <meta name="assert" content="Test checks that value ranges between start and end while transitioning">
<link rel="help" title="2. Transitions" href="http://www.w3.org/TR/css3-transitions/#transitions"> <link rel="help" title="2. Transitions" href="http://www.w3.org/TR/css3-transitions/#transitions">
<link rel="help" title="7.1. Properties from CSS" href="http://www.w3.org/TR/css3-transitions/#animatable-css"> <link rel="help" title="7.1. Properties from CSS" href="http://www.w3.org/TR/css3-transitions/#animatable-css">

View file

@ -3,6 +3,7 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<title>CSS Transitions Test: Intermediate Property Values of unspecified properties</title> <title>CSS Transitions Test: Intermediate Property Values of unspecified properties</title>
<meta name="timeout" content="long">
<meta name="assert" content="Test checks that properties are transitionable that haven't been specified"> <meta name="assert" content="Test checks that properties are transitionable that haven't been specified">
<link rel="help" title="2. Transitions" href="http://www.w3.org/TR/css3-transitions/#transitions"> <link rel="help" title="2. Transitions" href="http://www.w3.org/TR/css3-transitions/#transitions">
<link rel="help" title="7.1. Properties from CSS" href="http://www.w3.org/TR/css3-transitions/#animatable-css"> <link rel="help" title="7.1. Properties from CSS" href="http://www.w3.org/TR/css3-transitions/#animatable-css">

View file

@ -3,6 +3,7 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<title>CSS Transitions Test: font-size-relative properties transition by implicit value change</title> <title>CSS Transitions Test: font-size-relative properties transition by implicit value change</title>
<meta name="timeout" content="long">
<meta name="assert" content="Test checks that font-size-relative properties (all em-lengths) run a transition when font-size is changed"> <meta name="assert" content="Test checks that font-size-relative properties (all em-lengths) run a transition when font-size is changed">
<link rel="help" title="2. Transitions" href="http://www.w3.org/TR/css3-transitions/#transitions"> <link rel="help" title="2. Transitions" href="http://www.w3.org/TR/css3-transitions/#transitions">
<link rel="author" title="Rodney Rehm" href="http://rodneyrehm.de/en/"> <link rel="author" title="Rodney Rehm" href="http://rodneyrehm.de/en/">

View file

@ -3,6 +3,7 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<title>CSS Transitions Test: transitioning inherited property values</title> <title>CSS Transitions Test: transitioning inherited property values</title>
<meta name="timeout" content="long">
<meta name="assert" content="Test checks that inherited property values that are transitioned on a parent element don't start a transition"> <meta name="assert" content="Test checks that inherited property values that are transitioned on a parent element don't start a transition">
<link rel="help" title="3. Starting of transitions" href="http://www.w3.org/TR/css3-transitions/#starting"> <link rel="help" title="3. Starting of transitions" href="http://www.w3.org/TR/css3-transitions/#starting">
<link rel="author" title="Rodney Rehm" href="http://rodneyrehm.de/en/"> <link rel="author" title="Rodney Rehm" href="http://rodneyrehm.de/en/">

View file

@ -3,6 +3,7 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<title>CSS Transitions Test: transitioning inherited property values</title> <title>CSS Transitions Test: transitioning inherited property values</title>
<meta name="timeout" content="long">
<meta name="assert" content="Test checks that inherited property values that are not transitioned on a parent element start a transition"> <meta name="assert" content="Test checks that inherited property values that are not transitioned on a parent element start a transition">
<link rel="help" title="3. Starting of transitions" href="http://www.w3.org/TR/css3-transitions/#starting"> <link rel="help" title="3. Starting of transitions" href="http://www.w3.org/TR/css3-transitions/#starting">
<link rel="author" title="Rodney Rehm" href="http://rodneyrehm.de/en/"> <link rel="author" title="Rodney Rehm" href="http://rodneyrehm.de/en/">

View file

@ -3,6 +3,7 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<title>CSS Transitions Test: display:none causes transitioncancel</title> <title>CSS Transitions Test: display:none causes transitioncancel</title>
<meta name="timeout" content="long">
<link rel="author" title="Chris Rebert" href="http://chrisrebert.com"> <link rel="author" title="Chris Rebert" href="http://chrisrebert.com">
<link rel="help" href="https://drafts.csswg.org/css-transitions-2/#dom-transitionevent-transitioncancel"> <link rel="help" href="https://drafts.csswg.org/css-transitions-2/#dom-transitionevent-transitioncancel">
<link rel="help" href="https://lists.w3.org/Archives/Public/www-style/2015Apr/0405.html" title="[CSSWG] Minutes Telecon 2015-04-29" data-section-title="AnimationEnd events and display: none"> <link rel="help" href="https://lists.w3.org/Archives/Public/www-style/2015Apr/0405.html" title="[CSSWG] Minutes Telecon 2015-04-29" data-section-title="AnimationEnd events and display: none">

View file

@ -3,6 +3,7 @@
<html class="reftest-wait"> <html class="reftest-wait">
<head> <head>
<title>CSS Values and Units Test: vh-based dimension doesn't change when the element's other dimension doesn't change.</title> <title>CSS Values and Units Test: vh-based dimension doesn't change when the element's other dimension doesn't change.</title>
<meta name="timeout" content="long">
<link rel="author" title="Marc Bourlon" href="mailto:marc@bourlon.com"> <link rel="author" title="Marc Bourlon" href="mailto:marc@bourlon.com">
<link rel="help" href="http://www.w3.org/TR/css3-values/#viewport-relative-lengths"> <link rel="help" href="http://www.w3.org/TR/css3-values/#viewport-relative-lengths">
<link rel="match" href="reference/vh_not_refreshing_on_chrome-ref.html"> <link rel="match" href="reference/vh_not_refreshing_on_chrome-ref.html">

View file

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset="utf-8"> <meta charset="utf-8">
<title>CSS Writing Modes Test: Test orientation of characters where vo=R (#1/9, 2048 code points in U+0020-0B27).</title> <title>CSS Writing Modes Test: Test orientation of characters where vo=R (#1/9, 2048 code points in U+0020-0B27).</title>
<meta name="timeout" content="long">
<link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation"> <link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation">
<meta name="assert" content="Test orientation of characters where vo=R (#1/9, 2048 code points in U+0020-0B27)"> <meta name="assert" content="Test orientation of characters where vo=R (#1/9, 2048 code points in U+0020-0B27)">
<meta name="flags" content="dom"> <meta name="flags" content="dom">

View file

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset="utf-8"> <meta charset="utf-8">
<title>CSS Writing Modes Test: Test orientation of characters where vo=R (#2/9, 2048 code points in U+0B28-1B07).</title> <title>CSS Writing Modes Test: Test orientation of characters where vo=R (#2/9, 2048 code points in U+0B28-1B07).</title>
<meta name="timeout" content="long">
<link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation"> <link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation">
<meta name="assert" content="Test orientation of characters where vo=R (#2/9, 2048 code points in U+0B28-1B07)"> <meta name="assert" content="Test orientation of characters where vo=R (#2/9, 2048 code points in U+0B28-1B07)">
<meta name="flags" content="dom"> <meta name="flags" content="dom">

View file

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset="utf-8"> <meta charset="utf-8">
<title>CSS Writing Modes Test: Test orientation of characters where vo=R (#3/9, 2048 code points in U+1B08-2858).</title> <title>CSS Writing Modes Test: Test orientation of characters where vo=R (#3/9, 2048 code points in U+1B08-2858).</title>
<meta name="timeout" content="long">
<link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation"> <link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation">
<meta name="assert" content="Test orientation of characters where vo=R (#3/9, 2048 code points in U+1B08-2858)"> <meta name="assert" content="Test orientation of characters where vo=R (#3/9, 2048 code points in U+1B08-2858)">
<meta name="flags" content="dom"> <meta name="flags" content="dom">

View file

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset="utf-8"> <meta charset="utf-8">
<title>CSS Writing Modes Test: Test orientation of characters where vo=R (#4/9, 2048 code points in U+2859-A81D).</title> <title>CSS Writing Modes Test: Test orientation of characters where vo=R (#4/9, 2048 code points in U+2859-A81D).</title>
<meta name="timeout" content="long">
<link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation"> <link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation">
<meta name="assert" content="Test orientation of characters where vo=R (#4/9, 2048 code points in U+2859-A81D)"> <meta name="assert" content="Test orientation of characters where vo=R (#4/9, 2048 code points in U+2859-A81D)">
<meta name="flags" content="dom"> <meta name="flags" content="dom">

View file

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset="utf-8"> <meta charset="utf-8">
<title>CSS Writing Modes Test: Test orientation of characters where vo=R (#5/9, 2048 code points in U+A81E-101F7).</title> <title>CSS Writing Modes Test: Test orientation of characters where vo=R (#5/9, 2048 code points in U+A81E-101F7).</title>
<meta name="timeout" content="long">
<link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation"> <link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation">
<meta name="assert" content="Test orientation of characters where vo=R (#5/9, 2048 code points in U+A81E-101F7)"> <meta name="assert" content="Test orientation of characters where vo=R (#5/9, 2048 code points in U+A81E-101F7)">
<meta name="flags" content="dom"> <meta name="flags" content="dom">

View file

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset="utf-8"> <meta charset="utf-8">
<title>CSS Writing Modes Test: Test orientation of characters where vo=R (#6/9, 2048 code points in U+101F8-11151).</title> <title>CSS Writing Modes Test: Test orientation of characters where vo=R (#6/9, 2048 code points in U+101F8-11151).</title>
<meta name="timeout" content="long">
<link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation"> <link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation">
<meta name="assert" content="Test orientation of characters where vo=R (#6/9, 2048 code points in U+101F8-11151)"> <meta name="assert" content="Test orientation of characters where vo=R (#6/9, 2048 code points in U+101F8-11151)">
<meta name="flags" content="dom"> <meta name="flags" content="dom">

View file

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset="utf-8"> <meta charset="utf-8">
<title>CSS Writing Modes Test: Test orientation of characters where vo=R (#7/9, 2048 code points in U+11152-124FA).</title> <title>CSS Writing Modes Test: Test orientation of characters where vo=R (#7/9, 2048 code points in U+11152-124FA).</title>
<meta name="timeout" content="long">
<link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation"> <link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation">
<meta name="assert" content="Test orientation of characters where vo=R (#7/9, 2048 code points in U+11152-124FA)"> <meta name="assert" content="Test orientation of characters where vo=R (#7/9, 2048 code points in U+11152-124FA)">
<meta name="flags" content="dom"> <meta name="flags" content="dom">

View file

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset="utf-8"> <meta charset="utf-8">
<title>CSS Writing Modes Test: Test orientation of characters where vo=R (#8/9, 2048 code points in U+124FB-1D7B2).</title> <title>CSS Writing Modes Test: Test orientation of characters where vo=R (#8/9, 2048 code points in U+124FB-1D7B2).</title>
<meta name="timeout" content="long">
<link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation"> <link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation">
<meta name="assert" content="Test orientation of characters where vo=R (#8/9, 2048 code points in U+124FB-1D7B2)"> <meta name="assert" content="Test orientation of characters where vo=R (#8/9, 2048 code points in U+124FB-1D7B2)">
<meta name="flags" content="dom"> <meta name="flags" content="dom">

View file

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset="utf-8"> <meta charset="utf-8">
<title>CSS Writing Modes Test: Test orientation of characters where vo=R (#9/9, 652 code points in U+1D7B3-1F8AD).</title> <title>CSS Writing Modes Test: Test orientation of characters where vo=R (#9/9, 652 code points in U+1D7B3-1F8AD).</title>
<meta name="timeout" content="long">
<link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation"> <link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation">
<meta name="assert" content="Test orientation of characters where vo=R (#9/9, 652 code points in U+1D7B3-1F8AD)"> <meta name="assert" content="Test orientation of characters where vo=R (#9/9, 652 code points in U+1D7B3-1F8AD)">
<meta name="flags" content="dom"> <meta name="flags" content="dom">

View file

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset="utf-8"> <meta charset="utf-8">
<title>CSS Writing Modes Test: Test orientation of characters where vo=U (#1/6, 2048 code points in U+00A7-2ED3).</title> <title>CSS Writing Modes Test: Test orientation of characters where vo=U (#1/6, 2048 code points in U+00A7-2ED3).</title>
<meta name="timeout" content="long">
<link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation"> <link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation">
<meta name="assert" content="Test orientation of characters where vo=U (#1/6, 2048 code points in U+00A7-2ED3)"> <meta name="assert" content="Test orientation of characters where vo=U (#1/6, 2048 code points in U+00A7-2ED3)">
<meta name="flags" content="dom"> <meta name="flags" content="dom">

View file

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset="utf-8"> <meta charset="utf-8">
<title>CSS Writing Modes Test: Test orientation of characters where vo=U (#2/6, 2048 code points in U+2ED4-A37A).</title> <title>CSS Writing Modes Test: Test orientation of characters where vo=U (#2/6, 2048 code points in U+2ED4-A37A).</title>
<meta name="timeout" content="long">
<link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation"> <link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation">
<meta name="assert" content="Test orientation of characters where vo=U (#2/6, 2048 code points in U+2ED4-A37A)"> <meta name="assert" content="Test orientation of characters where vo=U (#2/6, 2048 code points in U+2ED4-A37A)">
<meta name="flags" content="dom"> <meta name="flags" content="dom">

View file

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset="utf-8"> <meta charset="utf-8">
<title>CSS Writing Modes Test: Test orientation of characters where vo=U (#3/6, 2048 code points in U+A37B-1338B).</title> <title>CSS Writing Modes Test: Test orientation of characters where vo=U (#3/6, 2048 code points in U+A37B-1338B).</title>
<meta name="timeout" content="long">
<link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation"> <link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation">
<meta name="assert" content="Test orientation of characters where vo=U (#3/6, 2048 code points in U+A37B-1338B)"> <meta name="assert" content="Test orientation of characters where vo=U (#3/6, 2048 code points in U+A37B-1338B)">
<meta name="flags" content="dom"> <meta name="flags" content="dom">

View file

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset="utf-8"> <meta charset="utf-8">
<title>CSS Writing Modes Test: Test orientation of characters where vo=U (#4/6, 2048 code points in U+1338C-1F0E1).</title> <title>CSS Writing Modes Test: Test orientation of characters where vo=U (#4/6, 2048 code points in U+1338C-1F0E1).</title>
<meta name="timeout" content="long">
<link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation"> <link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation">
<meta name="assert" content="Test orientation of characters where vo=U (#4/6, 2048 code points in U+1338C-1F0E1)"> <meta name="assert" content="Test orientation of characters where vo=U (#4/6, 2048 code points in U+1338C-1F0E1)">
<meta name="flags" content="dom"> <meta name="flags" content="dom">

View file

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset="utf-8"> <meta charset="utf-8">
<title>CSS Writing Modes Test: Test orientation of characters where vo=U (#5/6, 2048 code points in U+1F0E2-2F9EA).</title> <title>CSS Writing Modes Test: Test orientation of characters where vo=U (#5/6, 2048 code points in U+1F0E2-2F9EA).</title>
<meta name="timeout" content="long">
<link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation"> <link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation">
<meta name="assert" content="Test orientation of characters where vo=U (#5/6, 2048 code points in U+1F0E2-2F9EA)"> <meta name="assert" content="Test orientation of characters where vo=U (#5/6, 2048 code points in U+1F0E2-2F9EA)">
<meta name="flags" content="dom"> <meta name="flags" content="dom">

View file

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset="utf-8"> <meta charset="utf-8">
<title>CSS Writing Modes Test: Test orientation of characters where vo=U (#6/6, 51 code points in U+2F9EB-2FA1D).</title> <title>CSS Writing Modes Test: Test orientation of characters where vo=U (#6/6, 51 code points in U+2F9EB-2FA1D).</title>
<meta name="timeout" content="long">
<link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation"> <link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#text-orientation">
<meta name="assert" content="Test orientation of characters where vo=U (#6/6, 51 code points in U+2F9EB-2FA1D)"> <meta name="assert" content="Test orientation of characters where vo=U (#6/6, 51 code points in U+2F9EB-2FA1D)">
<meta name="flags" content="dom"> <meta name="flags" content="dom">

View file

@ -3,6 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml"> <html xmlns="http://www.w3.org/1999/xhtml">
<head> <head>
<title>CSS Test: CSSOM View matchMedia and MediaQueryList</title> <title>CSS Test: CSSOM View matchMedia and MediaQueryList</title>
<meta name="timeout" content="long"/>
<link rel="author" title="Rune Lillesveen" href="mailto:rune@opera.com" /> <link rel="author" title="Rune Lillesveen" href="mailto:rune@opera.com" />
<link rel="help" href="http://www.w3.org/TR/cssom-view/#dom-window-matchmedia" /> <link rel="help" href="http://www.w3.org/TR/cssom-view/#dom-window-matchmedia" />
<link rel="help" href="http://www.w3.org/TR/cssom-view/#the-mediaquerylist-interface" /> <link rel="help" href="http://www.w3.org/TR/cssom-view/#the-mediaquerylist-interface" />

View file

@ -1,5 +1,6 @@
<!DOCTYPE html> <!DOCTYPE html>
<title>cssom-view - scroll-behavior: smooth</title> <title>cssom-view - scroll-behavior: smooth</title>
<meta name="timeout" content="long">
<link rel="author" title="Rune Lillesveen" href="mailto:futhark@chromium.org"> <link rel="author" title="Rune Lillesveen" href="mailto:futhark@chromium.org">
<link rel="help" href="https://drafts.csswg.org/cssom-view/#smooth-scrolling"> <link rel="help" href="https://drafts.csswg.org/cssom-view/#smooth-scrolling">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>

View file

@ -3,6 +3,7 @@
<head> <head>
<meta charset="utf-8" /> <meta charset="utf-8" />
<title>CSS Test (Selectors): :focus-visible always matches on texty input elements</title> <title>CSS Test (Selectors): :focus-visible always matches on texty input elements</title>
<meta name="timeout" content="long">
<link rel="author" title="Alice Boxhall" href="aboxhall@chromium.org" /> <link rel="author" title="Alice Boxhall" href="aboxhall@chromium.org" />
<link rel="help" href="https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo" /> <link rel="help" href="https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo" />
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>

View file

@ -24,7 +24,7 @@ context (and not therefore in any frame or window opened from it).
Usage: `test_driver.action_sequence(actions)` Usage: `test_driver.action_sequence(actions)`
* `actions`: an array of `Action` objects * `actions`: an array of `Action` objects
This function causes a sequence of actions to be sent to the browser. It is based of the [WebDriver API](https://w3c.github.io/webdriver/#actions). This function causes a sequence of actions to be sent to the browser. It is based on the [WebDriver API](https://w3c.github.io/webdriver/#actions).
The action can be a keyboard action, a pointer action or a pause. It returns a `Promise` that The action can be a keyboard action, a pointer action or a pause. It returns a `Promise` that
resolves after the actions have been sent or rejects if an error was thrown. resolves after the actions have been sent or rejects if an error was thrown.

View file

@ -170,6 +170,76 @@ promise_test(async () => {
style.remove(); style.remove();
}, "CSS Transitions events fire on disabled form elements"); }, "CSS Transitions events fire on disabled form elements");
promise_test(async () => {
const style = document.createElement("style");
style.innerText = `
.animate {
animation: fade .1s 2;
}
@keyframes fade {
0% { opacity: 1; }
100% { opacity: 0.2; }
}
`;
document.head.appendChild(style);
// For each form element type, set up transition event handlers.
for (const localName of formElements) {
const elem = document.createElement(localName);
document.body.appendChild(elem);
elem.disabled = true;
const transitionPromises = [
"animationstart",
"animationiteration",
"animationend",
].map(eventType => {
return new Promise(r => {
elem.addEventListener(eventType, r, { once: true });
});
});
elem.classList.add("animate");
// All the events fire...
await Promise.all(transitionPromises);
elem.remove();
}
// And we are done with the test... clean up.
style.remove();
}, "CSS Animation events fire on disabled form elements");
promise_test(async () => {
const style = document.createElement("style");
style.innerText = `
.animate {
animation: fade .1s 2;
}
@keyframes fade {
0% { opacity: 1; }
100% { opacity: 0.2; }
}
`;
document.head.appendChild(style);
// For each form element type, set up transition event handlers.
for (const localName of formElements) {
const elem = document.createElement(localName);
document.body.appendChild(elem);
elem.disabled = true;
// Let's now test the "animationcancel" event
const promiseToCancel = new Promise(r => {
elem.addEventListener("animationcancel", r);
});
elem.addEventListener("animationstart", () => {
// Cancel the animation by hiding it.
elem.style.display = "none";
});
elem.classList.add("animate");
// Trigger the animation again!
await promiseToCancel;
// And we are done with this element.
elem.remove();
}
// And we are done with the test... clean up.
style.remove();
}, "CSS Animation's cancel events fire on disabled form elements");
promise_test(async () => { promise_test(async () => {
for (const localName of formElements) { for (const localName of formElements) {
const elem = document.createElement(localName); const elem = document.createElement(localName);

View file

@ -1,4 +1,6 @@
// META: timeout=long
// META: title=Encoding API: Fatal flag for single byte encodings // META: title=Encoding API: Fatal flag for single byte encodings
// META: timeout=long
var singleByteEncodings = [ var singleByteEncodings = [
{encoding: 'IBM866', bad: []}, {encoding: 'IBM866', bad: []},

View file

@ -2,6 +2,7 @@
<html> <html>
<meta charset=utf-8 /> <meta charset=utf-8 />
<title>Event Timing: buffer long-latency events before onload</title> <title>Event Timing: buffer long-latency events before onload</title>
<meta name="timeout" content="long">
<button id='button' onmousedown='clickDelay()'>Generate a 'click' event</button> <button id='button' onmousedown='clickDelay()'>Generate a 'click' event</button>
<script src=/resources/testharness.js></script> <script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script> <script src=/resources/testharnessreport.js></script>

View file

@ -4,6 +4,7 @@
<head> <head>
<meta charset=utf-8 /> <meta charset=utf-8 />
<title>Event Timing: entries should be observable by its own frame.</title> <title>Event Timing: entries should be observable by its own frame.</title>
<meta name="timeout" content="long">
</head> </head>
<body> <body>

View file

@ -3,6 +3,7 @@
<meta charset=utf-8 /> <meta charset=utf-8 />
<title>Event Timing: Performance observers can observe long-latency events <title>Event Timing: Performance observers can observe long-latency events
</title> </title>
<meta name="timeout" content="long">
<button id='button'>Generate a 'click' event</button> <button id='button'>Generate a 'click' event</button>
<script src=/resources/testharness.js></script> <script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script> <script src=/resources/testharnessreport.js></script>

View file

@ -2,6 +2,7 @@
<html> <html>
<meta charset=utf-8 /> <meta charset=utf-8 />
<title>Event Timing: buffer long-latency events before onload</title> <title>Event Timing: buffer long-latency events before onload</title>
<meta name="timeout" content="long">
<button id='button'>Generate a 'click' event</button> <button id='button'>Generate a 'click' event</button>
<script src=/resources/testharness.js></script> <script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script> <script src=/resources/testharnessreport.js></script>

View file

@ -4,6 +4,7 @@
<title>Event Timing: long-latency events after onload and before observer <title>Event Timing: long-latency events after onload and before observer
registration are lost registration are lost
</title> </title>
<meta name="timeout" content="long">
<button id='button'>Generate a 'click' event</button> <button id='button'>Generate a 'click' event</button>
<script src=/resources/testharness.js></script> <script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script> <script src=/resources/testharnessreport.js></script>

View file

@ -2,6 +2,7 @@
<html> <html>
<meta charset=utf-8> <meta charset=utf-8>
<title>Event Timing: make sure event-timing entries are retrievable by existing perf APIs.</title> <title>Event Timing: make sure event-timing entries are retrievable by existing perf APIs.</title>
<meta name="timeout" content="long">
<button id='button'>Generate a 'click' event</button> <button id='button'>Generate a 'click' event</button>
<script src=/resources/testharness.js></script> <script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script> <script src=/resources/testharnessreport.js></script>

View file

@ -3,6 +3,7 @@
<meta charset=utf-8 /> <meta charset=utf-8 />
<title>Event Timing only times certain types of trusted event. <title>Event Timing only times certain types of trusted event.
</title> </title>
<meta name="timeout" content="long">
<button id='button' onmousedown='mainThreadBusy(60)' <button id='button' onmousedown='mainThreadBusy(60)'
onfocus='mainThreadBusy(60)'>Generate a 'click' event</button> onfocus='mainThreadBusy(60)'>Generate a 'click' event</button>
<script src=/resources/testharness.js></script> <script src=/resources/testharness.js></script>

View file

@ -1,33 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>EventSource: U+0000 in id field</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
</head>
<body>
<div id="log"></div>
<script>
var test = async_test()
test.step(function() {
var source = new EventSource("resources/last-event-id.py?idvalue=%00%00"),
seenhello = false
source.onmessage = function(e) {
test.step(function() {
if(e.data == "hello" && !seenhello) {
seenhello = true
assert_equals(e.lastEventId, "")
} else if(seenhello) {
assert_equals(e.data, "hello")
assert_equals(e.lastEventId, "")
source.close()
test.done()
} else
assert_unreached()
})
}
})
</script>
</body>
</html>

View file

@ -0,0 +1,25 @@
[
"\u0000\u0000",
"x\u0000",
"\u0000x",
"x\u0000x",
" \u0000"
].forEach(idValue => {
const encodedIdValue = encodeURIComponent(idValue);
async_test(t => {
const source = new EventSource("resources/last-event-id.py?idvalue=" + encodedIdValue);
t.add_cleanup(() => source.close());
let seenhello = false;
source.onmessage = t.step_func(e => {
if (e.data == "hello" && !seenhello) {
seenhello = true;
assert_equals(e.lastEventId, "");
} else if(seenhello) {
assert_equals(e.data, "hello");
assert_equals(e.lastEventId, "");
t.done();
} else
assert_unreached();
});
}, "EventSource: id field set to " + encodedIdValue);
});

View file

@ -2,6 +2,7 @@
<html> <html>
<head> <head>
<title>EventSource: "retry" field (bogus)</title> <title>EventSource: "retry" field (bogus)</title>
<meta name="timeout" content="long">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
</head> </head>

View file

@ -2,6 +2,7 @@
<html> <html>
<head> <head>
<title>EventSource: "retry" field</title> <title>EventSource: "retry" field</title>
<meta name="timeout" content="long">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
</head> </head>

View file

@ -1,3 +1,4 @@
// META: timeout=long
// META: global=window,worker // META: global=window,worker
// META: script=/common/utils.js // META: script=/common/utils.js
// META: script=/common/get-host-info.sub.js // META: script=/common/get-host-info.sub.js

View file

@ -2,6 +2,7 @@
<html> <html>
<head> <head>
<title>Fetch: network timeout after receiving the HTTP response headers</title> <title>Fetch: network timeout after receiving the HTTP response headers</title>
<meta name="timeout" content="long">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<script src="../resources/utils.js"></script> <script src="../resources/utils.js"></script>

View file

@ -1,3 +1,4 @@
// META: timeout=long
// META: script=../resources/utils.js // META: script=../resources/utils.js
// META: script=/common/get-host-info.sub.js // META: script=/common/get-host-info.sub.js

View file

@ -1,3 +1,4 @@
// META: timeout=long
// META: script=/common/utils.js // META: script=/common/utils.js
// META: script=../resources/utils.js // META: script=../resources/utils.js
// META: script=/common/get-host-info.sub.js // META: script=/common/get-host-info.sub.js

View file

@ -0,0 +1,45 @@
// META: script=../resources/utils.js
// See https://github.com/whatwg/fetch/issues/883 for the behavior covered by
// this test. As of writing, the Fetch spec has not been updated to cover these.
// redirectLocation tests that a Location header of |locationHeader| is resolved
// to a URL which ends in |expectedUrlSuffix|. |locationHeader| is interpreted
// as a byte sequence via isomorphic encode, as described in [INFRA]. This
// allows the caller to specify byte sequences which are not valid UTF-8.
// However, this means, e.g., U+2603 must be passed in as "\xe2\x98\x83", its
// UTF-8 encoding, not "\u2603".
//
// [INFRA] https://infra.spec.whatwg.org/#isomorphic-encode
function redirectLocation(
desc, redirectUrl, locationHeader, expectedUrlSuffix) {
promise_test(function(test) {
// Note we use escape() instead of encodeURIComponent(), so that characters
// are escaped as bytes in the isomorphic encoding.
var url = redirectUrl + '?simple=1&location=' + escape(locationHeader);
return fetch(url, {'redirect': 'follow'}).then(function(resp) {
assert_true(
resp.url.endsWith(expectedUrlSuffix),
resp.url + ' ends with ' + expectedUrlSuffix);
});
}, desc);
}
var redirUrl = RESOURCES_DIR + 'redirect.py';
redirectLocation(
'Redirect to escaped UTF-8', redirUrl, 'top.txt?%E2%98%83%e2%98%83',
'top.txt?%E2%98%83%e2%98%83');
redirectLocation(
'Redirect to unescaped UTF-8', redirUrl, 'top.txt?\xe2\x98\x83',
'top.txt?%E2%98%83');
redirectLocation(
'Redirect to escaped and unescaped UTF-8', redirUrl,
'top.txt?\xe2\x98\x83%e2%98%83', 'top.txt?%E2%98%83%e2%98%83');
redirectLocation(
'Escaping produces double-percent', redirUrl, 'top.txt?%\xe2\x98\x83',
'top.txt?%%E2%98%83');
redirectLocation(
'Redirect to invalid UTF-8', redirUrl, 'top.txt?\xff', 'top.txt?%FF');
done();

View file

@ -1,3 +1,4 @@
// META: timeout=long
// META: script=/common/utils.js // META: script=/common/utils.js
// META: script=../resources/utils.js // META: script=../resources/utils.js
// META: script=/common/get-host-info.sub.js // META: script=/common/get-host-info.sub.js

View file

@ -3,6 +3,7 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<title>Request cache - default with conditional requests</title> <title>Request cache - default with conditional requests</title>
<meta name="timeout" content="long">
<meta name="help" href="https://fetch.spec.whatwg.org/#request"> <meta name="help" href="https://fetch.spec.whatwg.org/#request">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>

View file

@ -3,6 +3,7 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<title>Request Keepalive Quota Tests</title> <title>Request Keepalive Quota Tests</title>
<meta name="timeout" content="long">
<meta name="help" href="https://fetch.spec.whatwg.org/#request"> <meta name="help" href="https://fetch.spec.whatwg.org/#request">
<meta name="help" href="https://fetch.spec.whatwg.org/#body-mixin"> <meta name="help" href="https://fetch.spec.whatwg.org/#body-mixin">
<meta name="author" title="Microsoft Edge" href="https://www.microsoft.com"> <meta name="author" title="Microsoft Edge" href="https://www.microsoft.com">

View file

@ -38,16 +38,17 @@ def main(request, response):
if "location" in request.GET: if "location" in request.GET:
url = request.GET['location'] url = request.GET['location']
scheme = urlparse(url).scheme if "simple" not in request.GET:
if scheme == "" or scheme == "http" or scheme == "https": scheme = urlparse(url).scheme
url += "&" if '?' in url else "?" if scheme == "" or scheme == "http" or scheme == "https":
#keep url parameters in location url += "&" if '?' in url else "?"
url_parameters = {} #keep url parameters in location
for item in request.GET.items(): url_parameters = {}
url_parameters[item[0]] = item[1][0] for item in request.GET.items():
url += urlencode(url_parameters) url_parameters[item[0]] = item[1][0]
#make sure location changes during redirection loop url += urlencode(url_parameters)
url += "&count=" + str(stashed_data['count']) #make sure location changes during redirection loop
url += "&count=" + str(stashed_data['count'])
headers.append(("Location", url)) headers.append(("Location", url))
if "redirect_referrerpolicy" in request.GET: if "redirect_referrerpolicy" in request.GET:

View file

@ -3,6 +3,7 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<title>Response clone</title> <title>Response clone</title>
<meta name="timeout" content="long">
<meta name="help" href="https://fetch.spec.whatwg.org/#response"> <meta name="help" href="https://fetch.spec.whatwg.org/#response">
<meta name="author" title="Canon Research France" href="https://www.crf.canon.fr"> <meta name="author" title="Canon Research France" href="https://www.crf.canon.fr">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>

View file

@ -1,3 +1,4 @@
// META: timeout=long
// META: global=window,dedicatedworker,sharedworker // META: global=window,dedicatedworker,sharedworker
// META: script=/common/get-host-info.sub.js // META: script=/common/get-host-info.sub.js

View file

@ -3,6 +3,7 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<title>HTTP Cache - Status Codes</title> <title>HTTP Cache - Status Codes</title>
<meta name="timeout" content="long">
<meta name="help" href="https://fetch.spec.whatwg.org/#request"> <meta name="help" href="https://fetch.spec.whatwg.org/#request">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>

View file

@ -1,5 +1,6 @@
<!DOCTYPE html> <!DOCTYPE html>
<title>Element#requestFullscreen() on two elements in different iframes</title> <title>Element#requestFullscreen() on two elements in different iframes</title>
<meta name="timeout" content="long">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<script src="../trusted-click.js"></script> <script src="../trusted-click.js"></script>

View file

@ -1,6 +1,7 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset="utf-8"> <meta charset="utf-8">
<title>Gyroscope Test</title> <title>Gyroscope Test</title>
<meta name="timeout" content="long">
<link rel="author" title="Intel" href="http://www.intel.com"> <link rel="author" title="Intel" href="http://www.intel.com">
<link rel="help" href="https://www.w3.org/TR/gyroscope/"> <link rel="help" href="https://www.w3.org/TR/gyroscope/">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>

View file

@ -1,5 +1,6 @@
<!doctype html> <!doctype html>
<title>Verify history.back() on a persisted page resumes timers</title> <title>Verify history.back() on a persisted page resumes timers</title>
<meta name="timeout" content="long">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<script type="text/javascript"> <script type="text/javascript">

View file

@ -1,5 +1,6 @@
<!doctype html> <!doctype html>
<title>beforeunload and unload events fire after window.close() in script-closeable browsing context</title> <title>beforeunload and unload events fire after window.close() in script-closeable browsing context</title>
<meta name="timeout" content="long">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<div id="log"></div> <div id="log"></div>

Some files were not shown because too many files have changed in this diff Show more