Auto merge of #22772 - servo-wpt-sync:wpt_update_27-01-2019, r=jdm

Sync WPT with upstream (27-01-2019)

Automated downstream sync of changes from upstream as of 27-01-2019.
[no-wpt-sync]

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/22772)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2019-01-27 23:09:56 -05:00 committed by GitHub
commit 8646d7dbbc
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
13 changed files with 168 additions and 40 deletions

View file

@ -157957,6 +157957,18 @@
{}
]
],
"css/css-ui/text-overflow-030.html": [
[
"/css/css-ui/text-overflow-030.html",
[
[
"/css/css-ui/reference/text-overflow-030-ref.html",
"=="
]
],
{}
]
],
"css/css-ui/text-overflow-ruby.html": [
[
"/css/css-ui/text-overflow-ruby.html",
@ -274660,6 +274672,11 @@
{}
]
],
"css/css-ui/reference/text-overflow-030-ref.html": [
[
{}
]
],
"css/css-ui/support/1x1-red.png": [
[
{}
@ -347675,6 +347692,12 @@
{}
]
],
"css/css-syntax/escaped-eof.html": [
[
"/css/css-syntax/escaped-eof.html",
{}
]
],
"css/css-syntax/ident-three-code-points.html": [
[
"/css/css-syntax/ident-three-code-points.html",
@ -573902,6 +573925,10 @@
"a7d69d149e7bbf854efc2ef19af132af372ff521",
"testharness"
],
"css/css-syntax/escaped-eof.html": [
"66ac8e9442e22c8d5b445d556c667f769c0939e2",
"testharness"
],
"css/css-syntax/ident-three-code-points.html": [
"36faef9357746f4492d00a3fbb1e33ffd2021bb4",
"testharness"
@ -588750,6 +588777,10 @@
"9cdd741ec20efd8132628dd3dddd1758cc55ab40",
"support"
],
"css/css-ui/reference/text-overflow-030-ref.html": [
"5e4f4936a1fa714e103e4e0f5e656483b05369b0",
"support"
],
"css/css-ui/resize-001.html": [
"99c7f05e17cd929b314d1d01b0511ec72a36ad99",
"manual"
@ -589898,6 +589929,10 @@
"f1780117c4e824fd952c4ab6a95ab91f11914f9e",
"reftest"
],
"css/css-ui/text-overflow-030.html": [
"0ccd59c12a20aa82de45370eff45565acdb2fc6e",
"reftest"
],
"css/css-ui/text-overflow-ref.html": [
"a8795599ec3cdfe71090b06e1a6ad19941dd21b1",
"support"
@ -639947,7 +639982,7 @@
"support"
],
"interfaces/web-nfc.idl": [
"3dd4817eb0dfb329720b0e6da5097bf2d28cc6b4",
"5a6d6f8a06b1d7bfbcf5b3cc1b5078ff930cbedc",
"support"
],
"interfaces/web-share.idl": [
@ -678595,7 +678630,7 @@
"support"
],
"tools/wptrunner/wptrunner/font.py": [
"a370f5f5a3b61cbb40c47abc786abe38679cd994",
"51c5578a3c9ba8f07467d11663605d799c52856f",
"support"
],
"tools/wptrunner/wptrunner/formatters.py": [
@ -682255,7 +682290,7 @@
"support"
],
"web-nfc/idlharness.https.window.js": [
"0b3b099b7721eb3b7efb336d0f3f161bbcb23588",
"95efd7ab3aa617b6d28dac11708ed4ed380fdd4e",
"testharness"
],
"web-nfc/nfc_hw_disabled-manual.https.html": [
@ -684259,7 +684294,7 @@
"support"
],
"webdriver/tests/set_timeouts/set.py": [
"4fbe83bf01b3de64436aa110ae1959bff80740b3",
"98a20ddf119c11a2f01d7843f33433b7672a7b0d",
"wdspec"
],
"webdriver/tests/set_timeouts/user_prompts.py": [

View file

@ -32,7 +32,7 @@
[single-byte-decoder.html?XMLHttpRequest]
expected: TIMEOUT
expected: CRASH
[ISO-8859-2: iso_8859-2:1987 (XMLHttpRequest)]
expected: FAIL

View file

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

View file

@ -1,4 +0,0 @@
[navigation-unload-same-origin-fragment.html]
[Tests that a fragment navigation in the unload handler will not block the initial navigation]
expected: FAIL

View file

@ -1,5 +0,0 @@
[promise-rejection-events.html]
expected: TIMEOUT
[rejectionhandled is dispatched from a queued task, and not immediately]
expected: TIMEOUT

View file

@ -1,5 +1,4 @@
[005.html]
expected: ERROR
[dedicated worker in shared worker in dedicated worker]
expected: FAIL

View file

@ -0,0 +1,46 @@
<!doctype html>
<title>Escaped EOF</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<meta name="author" title="Tab Atkins-Bittner">
<link rel=help href="https://drafts.csswg.org/css-syntax/#consume-escaped-code-point">
<link rel=help href="https://drafts.csswg.org/css-syntax/#consume-string-token">
<link rel=help href="https://drafts.csswg.org/css-syntax/#consume-token">
<style>foo { --foo:foo\</style>
<style>foo { --foo:1foo\</style>
<style>foo { --foo:url(foo\</style>
<style>foo { --foo:"foo\</style>
<script>
test(()=>{
assert_throws(new SyntaxError, ()=>{document.querySelector("#123");}, "numeric hash token is invalid in a selector");
document.querySelector("#foo\\"); // escaped-EOF in a hash token is valid in a selector
}, "Escaped EOF turns into a U+FFFD in a hash token, makes it 'ID' type.");
test(()=>{
const sh = document.styleSheets[0];
const val = sh.cssRules[0].style.getPropertyValue("--foo");
assert_equals("foo\ufffd", val);
}, "Escaped EOF turns into a U+FFFD in an ident token.");
test(()=>{
const sh = document.styleSheets[1];
const val = sh.cssRules[0].style.getPropertyValue("--foo");
assert_equals("1foo\ufffd", val);
}, "Escaped EOF turns into a U+FFFD in a dimension token.");
test(()=>{
const sh = document.styleSheets[2];
const val = sh.cssRules[0].style.getPropertyValue("--foo");
assert_equals("url(foo\ufffd)", val);
}, "Escaped EOF turns into a U+FFFD in a url token.");
test(()=>{
const sh = document.styleSheets[3];
const val = sh.cssRules[0].style.getPropertyValue("--foo");
assert_equals(`"foo"`, val);
}, "Escaped EOF in a string is ignored.");
</script>

View file

@ -0,0 +1,13 @@
<!DOCTYPE html>
<meta charset="utf-8">
<title>CSS Reference</title>
<style>
.positioned {
background-color: green;
position: absolute;
width: 100px;
height: 100px;
}
</style>
<p>Test passes if there is a green rectangle and no red.</p>
<div class="positioned"></div>

View file

@ -0,0 +1,25 @@
<!DOCTYPE html>
<meta charset="utf-8">
<title>CSS Basic User Interface Test: ellipsis should render under other positioned content</title>
<link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au">
<link rel="help" href="http://www.w3.org/TR/css3-ui/#text-overflow">
<link rel="match" href="reference/text-overflow-030-ref.html">
<style>
.positioned {
background-color: green;
position: absolute;
width: 100px;
height: 100px;
}
.ellipsis {
color: red;
overflow-x: hidden;
text-overflow: ellipsis;
white-space: pre;
width: 100px;
font: 50px sans-serif;
}
</style>
<p>Test passes if there is a green rectangle and no red.</p>
<div class="positioned"></div>
<div class="ellipsis"> </div>

View file

@ -24,10 +24,6 @@ enum NFCRecordType {
"opaque"
};
partial interface Navigator {
[SecureContext, SameObject] readonly attribute NFC nfc;
};
typedef (DOMString or ArrayBuffer or NFCMessage) NFCMessageSource;
[Constructor(), SecureContext, Exposed=Window]
@ -35,12 +31,32 @@ interface NFCWriter {
Promise<void> push(NFCMessageSource message, optional NFCPushOptions options);
};
[SecureContext]
interface NFC {
Promise<void> watch(MessageCallback callback, optional NFCWatchOptions options);
[Constructor(optional NFCReaderOptions options), SecureContext, Exposed=Window]
interface NFCReader : EventTarget {
attribute EventHandler onreading;
attribute EventHandler onerror;
void start();
void stop();
};
callback MessageCallback = void (NFCMessage message);
[Constructor(DOMString type, NFCReadingEventInit readingEventInitDict), SecureContext, Exposed=Window]
interface NFCReadingEvent : Event {
readonly attribute NFCMessage message;
};
dictionary NFCReadingEventInit : EventInit {
required NFCMessage message;
};
[Constructor(DOMString type, NFCErrorEventInit errorEventInitDict), SecureContext, Exposed=Window]
interface NFCErrorEvent : Event {
readonly attribute DOMException error;
};
dictionary NFCErrorEventInit : EventInit {
required DOMException error;
};
dictionary NFCPushOptions {
NFCPushTarget target = "any";
@ -55,15 +71,14 @@ enum NFCPushTarget {
"any"
};
dictionary NFCWatchOptions {
dictionary NFCReaderOptions {
USVString url = "";
NFCRecordType recordType;
USVString mediaType = "";
NFCWatchMode mode = "web-nfc-only";
AbortSignal? signal;
NFCAccept accept = "web-nfc-only";
};
enum NFCWatchMode {
enum NFCAccept {
"web-nfc-only",
"any"
};

View file

@ -92,8 +92,14 @@ class FontInstaller(object):
gdi32 = ctypes.WinDLL('gdi32')
if gdi32.AddFontResourceW(font_path):
return bool(ctypes.windll.user32.SendMessageW(hwnd_broadcast,
wm_fontchange))
from ctypes import wintypes
wparam = 0
lparam = 0
SendMessageW = ctypes.windll.user32.SendMessageW
SendMessageW.argtypes = [wintypes.HANDLE, wintypes.UINT,
wintypes.WPARAM, wintypes.LPARAM]
return bool(SendMessageW(hwnd_broadcast, wm_fontchange,
wparam, lparam))
def remove_linux_font(self, font_name, _):
if self.created_dir:
@ -120,5 +126,11 @@ class FontInstaller(object):
gdi32 = ctypes.WinDLL('gdi32')
if gdi32.RemoveFontResourceW(font_path):
return bool(ctypes.windll.user32.SendMessageW(hwnd_broadcast,
wm_fontchange))
from ctypes import wintypes
wparam = 0
lparam = 0
SendMessageW = ctypes.windll.user32.SendMessageW
SendMessageW.argtypes = [wintypes.HANDLE, wintypes.UINT,
wintypes.WPARAM, wintypes.LPARAM]
return bool(SendMessageW(hwnd_broadcast, wm_fontchange,
wparam, lparam))

View file

@ -7,7 +7,7 @@
idl_test(
['web-nfc'],
['html'],
['html', 'dom'],
idl_array => {
idl_array.add_objects({
Navigator: ['navigator'],

View file

@ -48,11 +48,6 @@ def test_script_parameter_empty_no_change(session):
assert session.timeouts._get()["script"] == original["script"]
def test_key_invalid(session):
response = set_timeouts(session, {"foo": 1000})
assert_error(response, "invalid argument")
@pytest.mark.parametrize("typ", ["implicit", "pageLoad", "script"])
@pytest.mark.parametrize("value", [0, 2.0, 2**53 - 1])
def test_positive_integer(session, typ, value):