mirror of
https://github.com/servo/servo.git
synced 2025-06-24 17:14:33 +01:00
Update web-platform-tests to revision 399db71122d26363cf3c5e41bb97b4ff06caf85c
This commit is contained in:
parent
436bdc7f94
commit
e98130712c
48 changed files with 122 additions and 120 deletions
|
@ -4,7 +4,7 @@
|
|||
expected: TIMEOUT
|
||||
|
||||
[Opening a blob URL in a new window immediately before revoking it works.]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[Fetching a blob URL immediately before revoking it works in an iframe.]
|
||||
expected: FAIL
|
||||
|
|
|
@ -1,4 +0,0 @@
|
|||
[hit-test-floats-003.html]
|
||||
[Miss float below something else]
|
||||
expected: FAIL
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
[hit-test-floats-005.html]
|
||||
[Miss clipped float]
|
||||
expected: FAIL
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
[trailing-other-space-separators-break-spaces-012.html]
|
||||
expected: FAIL
|
|
@ -0,0 +1,4 @@
|
|||
[elementFromPoint-001.html]
|
||||
[CSSOM View - 5 - extensions to the Document interface]
|
||||
expected: FAIL
|
||||
|
|
@ -17,3 +17,6 @@
|
|||
[test the top of layer]
|
||||
expected: FAIL
|
||||
|
||||
[test some point of the element: top left corner]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -321,15 +321,21 @@
|
|||
[<iframe>: separate response Content-Type: text/plain */*;charset=gbk]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: */* text/html]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html */*]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html;" \\" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html;x=" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html */*]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html */*;charset=gbk]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/plain */*]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html;x=" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -11,9 +11,3 @@
|
|||
[X-Content-Type-Options%3A%20nosniff%2C%2C%40%23%24%23%25%25%26%5E%26%5E*()()11!]
|
||||
expected: FAIL
|
||||
|
||||
[X-Content-Type-Options%3A%20no%0D%0AX-Content-Type-Options%3A%20nosniff]
|
||||
expected: FAIL
|
||||
|
||||
[Content-Type-Options%3A%20nosniff]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,4 +0,0 @@
|
|||
[traverse_the_history_5.html]
|
||||
[Multiple history traversals, last would be aborted]
|
||||
expected: FAIL
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
[cross-origin-objects-on-new-window.html]
|
||||
expected: TIMEOUT
|
|
@ -1,4 +1,5 @@
|
|||
[supported-elements.html]
|
||||
expected: TIMEOUT
|
||||
[Contenteditable element should support autofocus]
|
||||
expected: FAIL
|
||||
|
||||
|
@ -9,7 +10,7 @@
|
|||
expected: FAIL
|
||||
|
||||
[Area element should support autofocus]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[Host element with delegatesFocus should support autofocus]
|
||||
expected: FAIL
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
[iframe_sandbox_popups_escaping-1.html]
|
||||
expected: TIMEOUT
|
||||
expected: CRASH
|
||||
[Check that popups from a sandboxed iframe escape the sandbox if\n allow-popups-to-escape-sandbox is used]
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
[iframe_sandbox_popups_escaping-3.html]
|
||||
expected: TIMEOUT
|
||||
[Check that popups from a sandboxed iframe escape the sandbox if\n allow-popups-to-escape-sandbox is used]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
[iframe_sandbox_popups_nonescaping-1.html]
|
||||
expected: CRASH
|
||||
expected: TIMEOUT
|
||||
[Check that popups from a sandboxed iframe do not escape the sandbox]
|
||||
expected: NOTRUN
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
[iframe_sandbox_popups_nonescaping-3.html]
|
||||
expected: TIMEOUT
|
||||
[Check that popups from a sandboxed iframe do not escape the sandbox]
|
||||
expected: FAIL
|
||||
expected: NOTRUN
|
||||
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
[module-delayed.html]
|
||||
[async document.write in a module]
|
||||
expected: FAIL
|
||||
|
|
@ -4,5 +4,5 @@
|
|||
expected: TIMEOUT
|
||||
|
||||
[The entry settings object while executing the compiled callback via Web IDL's invoke must be that of the node document]
|
||||
expected: TIMEOUT
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
[promise-job-entry.html]
|
||||
expected: TIMEOUT
|
||||
[Fulfillment handler on fulfilled promise]
|
||||
expected: FAIL
|
||||
|
||||
[Rejection handler on pending-then-rejected promise]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[Sanity check: this all works as expected with no promises involved]
|
||||
expected: FAIL
|
||||
|
@ -15,5 +16,5 @@
|
|||
expected: FAIL
|
||||
|
||||
[Fulfillment handler on pending-then-fulfilled promise]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
[audiocontext-not-fully-active.html]
|
||||
expected: TIMEOUT
|
||||
[frame in navigated remote-site frame]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
[017.html]
|
||||
expected: TIMEOUT
|
||||
[origin of the script that invoked the method, about:blank]
|
||||
expected: TIMEOUT
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
[Worker-constructor.html]
|
||||
expected: ERROR
|
|
@ -7,7 +7,7 @@
|
|||
expected: FAIL
|
||||
|
||||
[Opening a blob URL in a new window immediately before revoking it works.]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[Opening a blob URL in a noopener about:blank window immediately before revoking it works.]
|
||||
expected: TIMEOUT
|
||||
|
|
|
@ -353622,7 +353622,7 @@
|
|||
[]
|
||||
],
|
||||
"conftest.py": [
|
||||
"a9f4203f279cbadb702456b1d71d6aa60ed5d0ef",
|
||||
"1baf6622b0599c44fb85d267288031a05e4243dc",
|
||||
[]
|
||||
],
|
||||
"harness.html": [
|
||||
|
@ -354028,7 +354028,7 @@
|
|||
[]
|
||||
],
|
||||
"wptserver.py": [
|
||||
"d47e325fbef64a425ba91f21a49a6d27e03a7e3b",
|
||||
"a504a76a46e00db8f9bb4a19dc9dca58ec1c8314",
|
||||
[]
|
||||
]
|
||||
},
|
||||
|
@ -358523,7 +358523,7 @@
|
|||
[]
|
||||
],
|
||||
"github_checks_output.py": [
|
||||
"b34e33dd9e817a80ac60a022fbfb6f0cb9c13766",
|
||||
"fcc6f8ce5911a24ee761889b184da42a03485071",
|
||||
[]
|
||||
],
|
||||
"sink_task.py": [
|
||||
|
@ -487209,13 +487209,6 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"longtask-before-observer.window.js": [
|
||||
"b7d4eb9d1de1ac1b91a2e6c9b5d124413b6dc0b9",
|
||||
[
|
||||
"longtask-timing/longtask-before-observer.window.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"longtask-in-childiframe-crossorigin.html": [
|
||||
"d0fdf742804d722a6682e8f2b455284dc83fa4b9",
|
||||
[
|
||||
|
@ -489579,7 +489572,7 @@
|
|||
]
|
||||
],
|
||||
"MediaRecorder-stop.html": [
|
||||
"ad6fa8809f6ad3af26969bbcb6a761280e5d705c",
|
||||
"7e19bc0c054472fdf8161bff41f99f2e601c0abb",
|
||||
[
|
||||
null,
|
||||
{}
|
||||
|
|
|
@ -1,4 +0,0 @@
|
|||
[hit-test-floats-003.html]
|
||||
[Miss float below something else]
|
||||
expected: FAIL
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
[hit-test-floats-005.html]
|
||||
[Miss clipped float]
|
||||
expected: FAIL
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
[trailing-other-space-separators-break-spaces-012.html]
|
||||
expected: FAIL
|
|
@ -0,0 +1,4 @@
|
|||
[elementFromPoint-001.html]
|
||||
[CSSOM View - 5 - extensions to the Document interface]
|
||||
expected: FAIL
|
||||
|
|
@ -21,3 +21,6 @@
|
|||
[test the top of layer]
|
||||
expected: FAIL
|
||||
|
||||
[test some point of the element: top left corner]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -321,15 +321,21 @@
|
|||
[<iframe>: separate response Content-Type: text/plain */*;charset=gbk]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: */* text/html]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html */*]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html;" \\" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html;x=" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html */*]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html */*;charset=gbk]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/plain */*]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html;x=" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -11,9 +11,3 @@
|
|||
[X-Content-Type-Options%3A%20nosniff%2C%2C%40%23%24%23%25%25%26%5E%26%5E*()()11!]
|
||||
expected: FAIL
|
||||
|
||||
[X-Content-Type-Options%3A%20no%0D%0AX-Content-Type-Options%3A%20nosniff]
|
||||
expected: FAIL
|
||||
|
||||
[Content-Type-Options%3A%20nosniff]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,4 +0,0 @@
|
|||
[traverse_the_history_5.html]
|
||||
[Multiple history traversals, last would be aborted]
|
||||
expected: FAIL
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
[cross-origin-objects-on-new-window.html]
|
||||
expected: TIMEOUT
|
|
@ -1,4 +1,5 @@
|
|||
[supported-elements.html]
|
||||
expected: TIMEOUT
|
||||
[Contenteditable element should support autofocus]
|
||||
expected: FAIL
|
||||
|
||||
|
@ -9,7 +10,7 @@
|
|||
expected: FAIL
|
||||
|
||||
[Area element should support autofocus]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[Host element with delegatesFocus should support autofocus]
|
||||
expected: FAIL
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[iframe_sandbox_popups_escaping-1.html]
|
||||
type: testharness
|
||||
expected: TIMEOUT
|
||||
expected: CRASH
|
||||
[Check that popups from a sandboxed iframe escape the sandbox if\n allow-popups-to-escape-sandbox is used]
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
[iframe_sandbox_popups_escaping-3.html]
|
||||
type: testharness
|
||||
expected: TIMEOUT
|
||||
[Check that popups from a sandboxed iframe escape the sandbox if\n allow-popups-to-escape-sandbox is used]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[iframe_sandbox_popups_nonescaping-1.html]
|
||||
type: testharness
|
||||
expected: CRASH
|
||||
expected: TIMEOUT
|
||||
[Check that popups from a sandboxed iframe do not escape the sandbox]
|
||||
expected: NOTRUN
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
[iframe_sandbox_popups_nonescaping-3.html]
|
||||
type: testharness
|
||||
expected: TIMEOUT
|
||||
[Check that popups from a sandboxed iframe do not escape the sandbox]
|
||||
expected: FAIL
|
||||
expected: NOTRUN
|
||||
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
[module-delayed.html]
|
||||
[async document.write in a module]
|
||||
expected: FAIL
|
||||
|
|
@ -5,5 +5,5 @@
|
|||
expected: TIMEOUT
|
||||
|
||||
[The entry settings object while executing the compiled callback via Web IDL's invoke must be that of the node document]
|
||||
expected: TIMEOUT
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
[promise-job-entry.html]
|
||||
expected: TIMEOUT
|
||||
[Fulfillment handler on fulfilled promise]
|
||||
expected: FAIL
|
||||
|
||||
[Rejection handler on pending-then-rejected promise]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[Sanity check: this all works as expected with no promises involved]
|
||||
expected: FAIL
|
||||
|
@ -15,5 +16,5 @@
|
|||
expected: FAIL
|
||||
|
||||
[Fulfillment handler on pending-then-fulfilled promise]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
[audiocontext-not-fully-active.html]
|
||||
expected: TIMEOUT
|
||||
[frame in navigated remote-site frame]
|
||||
expected: FAIL
|
||||
|
||||
|
|
5
tests/wpt/metadata/webmessaging/with-ports/017.html.ini
Normal file
5
tests/wpt/metadata/webmessaging/with-ports/017.html.ini
Normal file
|
@ -0,0 +1,5 @@
|
|||
[017.html]
|
||||
expected: TIMEOUT
|
||||
[origin of the script that invoked the method, about:blank]
|
||||
expected: TIMEOUT
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
[Worker-constructor.html]
|
||||
expected: ERROR
|
|
@ -1,16 +0,0 @@
|
|||
async_test(t => {
|
||||
assert_implements(window.PerformanceLongTaskTiming, 'Longtasks are not supported.');
|
||||
// Create a long task before any observer.
|
||||
const begin = window.performance.now();
|
||||
while (window.performance.now() < begin + 60);
|
||||
// After a timeout, add an observer with buffered flag.
|
||||
t.step_timeout(() => {
|
||||
new PerformanceObserver(t.step_func_done(list => {
|
||||
list.getEntries().forEach(entry => {
|
||||
assert_equals(entry.entryType, 'longtask');
|
||||
assert_equals(entry.name, 'self');
|
||||
assert_greater_than(entry.duration, 50);
|
||||
});
|
||||
})).observe({type: 'longtask', buffered: true});
|
||||
}, 0);
|
||||
}, 'PerformanceObserver with buffered flag can see previous longtask entries.');
|
|
@ -83,24 +83,24 @@
|
|||
|
||||
promise_test(async t => {
|
||||
const recorder = new MediaRecorder(createVideoStream());
|
||||
assert_throws_dom("InvalidStateError", () => { recorder.stop(); });
|
||||
recorder.stop();
|
||||
await Promise.race([
|
||||
new Promise((_, reject) => recorder.onstop =
|
||||
_ => reject(new Error("onstop should never have been called"))),
|
||||
new Promise(r => t.step_timeout(r, 0))]);
|
||||
}, "MediaRecorder will fire an exception when stopped after creation");
|
||||
}, "MediaRecorder will not fire an exception when stopped after creation");
|
||||
|
||||
promise_test(async t => {
|
||||
const recorder = new MediaRecorder(createVideoStream());
|
||||
recorder.start();
|
||||
recorder.stop();
|
||||
let event = await new Promise(r => recorder.onstop = r);
|
||||
assert_throws_dom("InvalidStateError", () => { recorder.stop(); });
|
||||
recorder.stop();
|
||||
await Promise.race([
|
||||
new Promise((_, reject) => recorder.onstop =
|
||||
_ => reject(new Error("onstop should never have been called"))),
|
||||
new Promise(r => t.step_timeout(r, 0))]);
|
||||
}, "MediaRecorder will fire an exception when stopped after having just been stopped");
|
||||
}, "MediaRecorder will not fire an exception when stopped after having just been stopped");
|
||||
|
||||
promise_test(async t => {
|
||||
const stream = createVideoStream();
|
||||
|
@ -108,12 +108,12 @@
|
|||
recorder.start();
|
||||
stream.getVideoTracks()[0].stop();
|
||||
let event = await new Promise(r => recorder.onstop = r);
|
||||
assert_throws_dom("InvalidStateError", () => { recorder.stop(); });
|
||||
recorder.stop();
|
||||
await Promise.race([
|
||||
new Promise((_, reject) => recorder.onstop =
|
||||
_ => reject(new Error("onstop should never have been called"))),
|
||||
new Promise(r => t.step_timeout(r, 0))]);
|
||||
}, "MediaRecorder will fire an exception when stopped after having just been spontaneously stopped");
|
||||
}, "MediaRecorder will not fire an exception when stopped after having just been spontaneously stopped");
|
||||
|
||||
promise_test(async t => {
|
||||
const stream = await navigator.mediaDevices.getUserMedia({ audio: true, video: true });
|
||||
|
|
|
@ -25,6 +25,7 @@ import webdriver
|
|||
|
||||
def pytest_addoption(parser):
|
||||
parser.addoption("--binary", action="store", default=None, help="path to browser binary")
|
||||
parser.addoption("--headless", action="store_true", default=False, help="run browser in headless mode")
|
||||
|
||||
|
||||
def pytest_collect_file(path, parent):
|
||||
|
@ -45,9 +46,11 @@ def pytest_configure(config):
|
|||
config.proc = subprocess.Popen(["geckodriver"])
|
||||
config.add_cleanup(config.proc.kill)
|
||||
|
||||
capabilities = {"alwaysMatch": {"acceptInsecureCerts": True}}
|
||||
capabilities = {"alwaysMatch": {"acceptInsecureCerts": True, "moz:firefoxOptions": {}}}
|
||||
if config.getoption("--binary"):
|
||||
capabilities["alwaysMatch"]["moz:firefoxOptions"] = {"binary": config.getoption("--binary")}
|
||||
capabilities["alwaysMatch"]["moz:firefoxOptions"]["binary"] = config.getoption("--binary")
|
||||
if config.getoption("--headless"):
|
||||
capabilities["alwaysMatch"]["moz:firefoxOptions"]["args"] = ["--headless"]
|
||||
|
||||
config.driver = webdriver.Session("localhost", 4444,
|
||||
capabilities=capabilities)
|
||||
|
|
|
@ -24,6 +24,8 @@ class WPTServer(object):
|
|||
def start(self):
|
||||
self.devnull = open(os.devnull, 'w')
|
||||
wptserve_cmd = [os.path.join(self.wpt_root, 'wpt'), 'serve']
|
||||
if sys.executable:
|
||||
wptserve_cmd[0:0] = [sys.executable]
|
||||
logging.info('Executing %s' % ' '.join(wptserve_cmd))
|
||||
self.proc = subprocess.Popen(
|
||||
wptserve_cmd,
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
import io
|
||||
from six import ensure_text
|
||||
|
||||
MYPY = False
|
||||
if MYPY:
|
||||
# MYPY is set to True when run under Mypy.
|
||||
from typing import Any
|
||||
from typing import Optional
|
||||
from typing import Text
|
||||
from typing import AnyStr, Optional, Text
|
||||
|
||||
|
||||
class GitHubChecksOutputter(object):
|
||||
"""Provides a method to output data to be shown in the GitHub Checks UI.
|
||||
|
@ -12,23 +14,27 @@ class GitHubChecksOutputter(object):
|
|||
to enable developers to quickly understand what has gone wrong. The output
|
||||
supports markdown format.
|
||||
|
||||
See https://docs.taskcluster.net/docs/reference/integrations/github/checks#custom-text-output-in-checks
|
||||
https://docs.taskcluster.net/docs/reference/integrations/github/checks#custom-text-output-in-checks
|
||||
"""
|
||||
def __init__(self, path):
|
||||
# type: (Text) -> None
|
||||
self.path = path
|
||||
|
||||
def output(self, line):
|
||||
# type: (Any) -> None
|
||||
# TODO(stephenmcgruer): Once mypy 0.790 is released, we can change this
|
||||
# to AnyStr, as that release teaches mypy about the mode flags of open.
|
||||
# See https://github.com/python/typeshed/pull/4146
|
||||
with open(self.path, 'a') as f:
|
||||
f.write(line)
|
||||
f.write('\n')
|
||||
# type: (AnyStr) -> None
|
||||
text = ensure_text(line)
|
||||
# NOTE: mypy types the "text mode" of open() in Python 2 as BinaryIO,
|
||||
# which makes sense as we cannot specify its encoding (it's
|
||||
# platform-dependent), while io.open() is closer to open() in Python 3.
|
||||
# TODO: use the built-in open() when we are Py3-only.
|
||||
with io.open(self.path, mode="a") as f:
|
||||
f.write(text)
|
||||
f.write(u"\n")
|
||||
|
||||
|
||||
__outputter = None
|
||||
|
||||
|
||||
def get_gh_checks_outputter(filepath):
|
||||
# type: (Optional[Text]) -> Optional[GitHubChecksOutputter]
|
||||
"""Return the outputter for GitHub Checks output, if enabled.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue