diff --git a/tests/wpt/metadata/FileAPI/url/url-in-tags-revoke.window.js.ini b/tests/wpt/metadata/FileAPI/url/url-in-tags-revoke.window.js.ini index 76b398963ae..dd4ffcf4345 100644 --- a/tests/wpt/metadata/FileAPI/url/url-in-tags-revoke.window.js.ini +++ b/tests/wpt/metadata/FileAPI/url/url-in-tags-revoke.window.js.ini @@ -1,5 +1,4 @@ [url-in-tags-revoke.window.html] - expected: TIMEOUT [Fetching a blob URL immediately before revoking it works in an iframe.] expected: FAIL @@ -15,6 +14,3 @@ [Opening a blob URL in a new window by clicking an tag works immediately before revoking the URL.] expected: FAIL - [Fetching a blob URL immediately before revoking it works in + + + + +
+ + + + + + + + + + diff --git a/tests/wpt/web-platform-tests/css/css-contain/contain-size-multicol-as-flex-item.html b/tests/wpt/web-platform-tests/css/css-contain/contain-size-multicol-as-flex-item.html new file mode 100644 index 00000000000..19aa12262f9 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-contain/contain-size-multicol-as-flex-item.html @@ -0,0 +1,30 @@ + + + + + +

There should be a green square below.

+
+
+
+
+
+ + + + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-001-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-001-manual.html new file mode 100644 index 00000000000..76a8f540149 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-001-manual.html @@ -0,0 +1,33 @@ + + + + +text-decoration-line underline + + + + + + + + + +

Test passes if there is a line at or under the alphabetic baseline.

+
+ +
+

The quick brown fox jumps over the lazy dog.

+
+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-002-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-002-manual.html new file mode 100644 index 00000000000..0e41fd1fcfe --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-002-manual.html @@ -0,0 +1,32 @@ + + + + +text-decoration-line overline + + + + + + + + + +

Test passes if there is an overline.

+
+ +
+

The quick brown fox jumps over the lazy dog.

+
+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-003-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-003-manual.html new file mode 100644 index 00000000000..2e94e8e946b --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-003-manual.html @@ -0,0 +1,32 @@ + + + + +text-decoration-line line-through + + + + + + + + + +

Test passes if there is a solid line through the centre of the characters.

+
+ +
+

The quick brown fox jumps over the lazy dog.

+
+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-004-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-004-manual.html new file mode 100644 index 00000000000..5c6da02d1e0 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-004-manual.html @@ -0,0 +1,32 @@ + + + + +text-decoration-line underline overline + + + + + + + + + +

Test passes if there is an overline and an underline.

+
+ +
+

The quick brown fox jumps over the lazy dog.

+
+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-040-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-040-manual.html new file mode 100644 index 00000000000..c93f4b99084 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-040-manual.html @@ -0,0 +1,40 @@ + + + + +text-decoration-line underline tbrl hor scripts + + + + + + + + + +

Test passes if there is a line to the LEFT of the characters for all lines.
Skip the test if the text is not vertical.

+
+ +
+

The quick brown fox jumps over the lazy dog.

+

وب جهانی را به‌درستی جهانی سازیم!

+

အပြည်ပြည်ဆိုင်ရာလှုပ်ရှားမှု၊

+

กูกินกุ้งปิ้งอยู่ในถ้ำ กูกินกุ้งปิ้งอยู่ในถ้ำ

+

འཛམ་གླིང་ཡོངས་འབྲེལ་འདི་ ངོ་མ་འབད་རང་ འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་བཟོ་བ།

+

वर्ल्ड वाईड वेब को सचमुच विश्वव्यापी बना रहें हैं ! +

+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-040a-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-040a-manual.html new file mode 100644 index 00000000000..5020a1fd118 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-040a-manual.html @@ -0,0 +1,37 @@ + + + + +text-decoration-line underline tbrl mixed + + + + + + + + + +

Test passes if there is an unbroken line to the LEFT of the characters for all lines.
Skip the test if the text is not vertical.

+
+ +
+

引发quick brown fox网络جهانی سازیم的全အပြည်ပြည်部潜ปิ้งอยู่ในถ้ำ能引འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་發網विश्वव्यापी बना रहें हैं絡的全部潛能

+
+
+ + + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-041-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-041-manual.html new file mode 100644 index 00000000000..7c7c920e990 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-041-manual.html @@ -0,0 +1,34 @@ + + + + +text-decoration-line underline tbrl (zh) + + + + + + + + + +

Test passes if there is a line to the LEFT of the characters.
Skip the test if the text is not vertical.

+
+ +
+

引发网络的全部潜能引發網絡的全部潛能

+
+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-044-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-044-manual.html new file mode 100644 index 00000000000..2d9048d3d1d --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-044-manual.html @@ -0,0 +1,39 @@ + + + + +text-decoration-line overline tbrl hor scripts + + + + + + + + + +

Test passes if there is a line to the RIGHT of the characters for all lines.
Skip the test if the text is not vertical.

+
+
+

The quick brown fox jumps over the lazy dog.

+

وب جهانی را به‌درستی جهانی سازیم!

+

အပြည်ပြည်ဆိုင်ရာလှုပ်ရှားမှု၊

+

กูกินกุ้งปิ้งอยู่ในถ้ำ กูกินกุ้งปิ้งอยู่ในถ้ำ

+

འཛམ་གླིང་ཡོངས་འབྲེལ་འདི་ ངོ་མ་འབད་རང་ འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་བཟོ་བ།

+

वर्ल्ड वाईड वेब को सचमुच विश्वव्यापी बना रहें हैं !

+
+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-045-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-045-manual.html new file mode 100644 index 00000000000..b9d68838756 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-045-manual.html @@ -0,0 +1,33 @@ + + + + +text-decoration-line overline tbrl (zh) + + + + + + + + + +

Test passes if there is a line to the RIGHT of the characters.
Skip the test if the text is not vertical.

+
+
+

引发网络的全部潜能引發網絡的全部潛能

+
+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-046a-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-046a-manual.html new file mode 100644 index 00000000000..67f2b89ea23 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-046a-manual.html @@ -0,0 +1,37 @@ + + + + +text-decoration-line overline tbrl mixed + + + + + + + + + +

Test passes if there is an unbroken line to the RIGHT of the characters for each line.
Skip the test if the text is not vertical.

+
+ +
+

引发quick brown fox网络جهانی سازیم的全အပြည်ပြည်部潜ปิ้งอยู่ในถ้ำ能引འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་發網विश्वव्यापी बना रहें हैं絡的全部潛能

+
+
+ + + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-048-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-048-manual.html new file mode 100644 index 00000000000..f3a6e137e2d --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-048-manual.html @@ -0,0 +1,35 @@ + + + + +text-decoration-line line-through vertical-rl + + + + + + + + + +

Test passes if there is a solid vertical line through the centre of the characters.
Skip the test if the text is not vertical.

+
+ +
+

引发网络的全部潜能引發網絡的全部潛能

+

可能性を最大限に導き出すために

+
+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-048a-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-048a-manual.html new file mode 100644 index 00000000000..9bd48defaf0 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-048a-manual.html @@ -0,0 +1,40 @@ + + + + +text-decoration-line line-through vertical-rl hor scripts + + + + + + + + + +

Test passes if there is a solid vertical line through the centre of the characters.
Skip the test if the text the text fails for the Chinese line, or is not vertical.

+
+ +
+

引发网络的全部潜能引發網絡的全部潛能

+

The quick brown fox jumps over the lazy dog.

+

وب جهانی را به‌درستی جهانی سازیم!

+

အပြည်ပြည်ဆိုင်ရာလှုပ်ရှားမှု၊

+

กูกินกุ้งปิ้งอยู่ในถ้ำ กูกินกุ้งปิ้งอยู่ในถ้ำ

+

འཛམ་གླིང་ཡོངས་འབྲེལ་འདི་ ངོ་མ་འབད་རང་ འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་བཟོ་བ།

+

वर्ल्ड वाईड वेब को सचमुच विश्वव्यापी बना रहें हैं !

+
+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-049-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-049-manual.html new file mode 100644 index 00000000000..31f9aa76218 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-049-manual.html @@ -0,0 +1,41 @@ + + + + +text-decoration-line vertical-rl over+under + + + + + + + + + +

Test passes if there is a vertical line on both sides of the characters.
Skip the test if the text is not vertical.

+
+
+

引发网络的全部潜能引發網絡的全部潛能

+

可能性を最大限に導き出すために

+

The quick brown fox jumps over the lazy dog.

+

وب جهانی را به‌درستی جهانی سازیم!

+

အပြည်ပြည်ဆိုင်ရာလှုပ်ရှားမှု၊

+

กูกินกุ้งปิ้งอยู่ในถ้ำ กูกินกุ้งปิ้งอยู่ในถ้ำ

+

འཛམ་གླིང་ཡོངས་འབྲེལ་འདི་ ངོ་མ་འབད་རང་ འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་བཟོ་བ།

+

वर्ल्ड वाईड वेब को सचमुच विश्वव्यापी बना रहें हैं !

+
+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-082-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-082-manual.html new file mode 100644 index 00000000000..c4425f90729 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-082-manual.html @@ -0,0 +1,34 @@ + + + + +text-decoration-line underline overline tblr + + + + + + + + + +

Test passes if there is a line on both sides of the characters.
Skip the test if the text is not vertical.

+
+
+

ᠣᠯᠠᠨ ᠦᠨᠳᠦᠰᠦᠲᠡᠨ ᠦ ᠪᠣᠯᠭᠠᠬᠤ ᠦᠢᠯᠡ ᠠᠵᠢᠯᠯᠠᠭ᠎ᠠ

+
+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-085-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-085-manual.html new file mode 100644 index 00000000000..88a5fc02a04 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-085-manual.html @@ -0,0 +1,34 @@ + + + + +text-decoration-line line-through tblr + + + + + + + + + +

Test passes if there is a solid vertical line through the centre of the characters.
Skip the test if the text is not vertical.

+
+
+

ᠣᠯᠠᠨ ᠦᠨᠳᠦᠰᠦᠲᠡᠨ ᠦ ᠪᠣᠯᠭᠠᠬᠤ ᠦᠢᠯᠡ ᠠᠵᠢᠯᠯᠠᠭ᠎ᠠ

+
+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-090-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-090-manual.html new file mode 100644 index 00000000000..f4484c0ee28 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-090-manual.html @@ -0,0 +1,34 @@ + + + + +text-decoration-line underline sideways-rl + + + + + + + + + +

Test passes if there is a line to the LEFT of the characters.
Skip the test if the text is not vertical.

+
+ +
+

The quick brown fox jumps over the lazy dog.

+
+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-090a-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-090a-manual.html new file mode 100644 index 00000000000..e98688521ff --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-090a-manual.html @@ -0,0 +1,39 @@ + + + + +text-decoration-line underline sideways-rl non-Latin + + + + + + + + + +

Test passes if there is a line to the LEFT of the characters for all lines.
Skip the test if it fails for the English text, or if the text is not vertical.

+
+ +
+

The quick brown fox jumps over the lazy dog.

+

وب جهانی را به‌درستی جهانی سازیم!

+

အပြည်ပြည်ဆိုင်ရာလှုပ်ရှားမှု၊

+

กูกินกุ้งปิ้งอยู่ในถ้ำ กูกินกุ้งปิ้งอยู่ในถ้ำ

+

འཛམ་གླིང་ཡོངས་འབྲེལ་འདི་ ངོ་མ་འབད་རང་ འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་བཟོ་བ།

+

वर्ल्ड वाईड वेब को सचमुच विश्वव्यापी बना रहें हैं ! +

+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-091-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-091-manual.html new file mode 100644 index 00000000000..94405c0362b --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-091-manual.html @@ -0,0 +1,34 @@ + + + + +text-decoration-line overline sideways-rl + + + + + + + + + +

Test passes if there is a line to the RIGHT of the characters.
Skip the test if the text is not vertical.

+
+ +
+

The quick brown fox jumps over the lazy dog.

+
+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-091a-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-091a-manual.html new file mode 100644 index 00000000000..e1ba036c257 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-091a-manual.html @@ -0,0 +1,39 @@ + + + + +text-decoration-line overline sideways-rl non-Latin + + + + + + + + + +

Test passes if there is a line to the RIGHT of the characters for all lines.
Skip the test if it fails for the English sentence, or if the text is not vertical.

+
+ +
+

The quick brown fox jumps over the lazy dog.

+

وب جهانی را به‌درستی جهانی سازیم!

+

အပြည်ပြည်ဆိုင်ရာလှုပ်ရှားမှု၊

+

กูกินกุ้งปิ้งอยู่ในถ้ำ กูกินกุ้งปิ้งอยู่ในถ้ำ

+

འཛམ་གླིང་ཡོངས་འབྲེལ་འདི་ ངོ་མ་འབད་རང་ འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་བཟོ་བ།

+

वर्ल्ड वाईड वेब को सचमुच विश्वव्यापी बना रहें हैं ! +

+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-092-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-092-manual.html new file mode 100644 index 00000000000..4dffcf6a00e --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-092-manual.html @@ -0,0 +1,34 @@ + + + + +text-decoration-line line-through sideways-rl + + + + + + + + + +

Test passes if there is a line through the CENTRE of the characters.
Skip the test if the text is not vertical.

+
+ +
+

The quick brown fox jumps over the lazy dog.

+
+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-092a-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-092a-manual.html new file mode 100644 index 00000000000..7f803a35f16 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-092a-manual.html @@ -0,0 +1,39 @@ + + + + +text-decoration-line line-through sideways-rl non-Latin + + + + + + + + + +

Test passes if there is a line through the CENTRE of the characters for all lines.
Skip the test if it fails for the English sentence, or if the text is not vertical.

+
+ +
+

The quick brown fox jumps over the lazy dog.

+

وب جهانی را به‌درستی جهانی سازیم!

+

အပြည်ပြည်ဆိုင်ရာလှုပ်ရှားမှု၊

+

กูกินกุ้งปิ้งอยู่ในถ้ำ กูกินกุ้งปิ้งอยู่ในถ้ำ

+

འཛམ་གླིང་ཡོངས་འབྲེལ་འདི་ ངོ་མ་འབད་རང་ འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་བཟོ་བ།

+

वर्ल्ड वाईड वेब को सचमुच विश्वव्यापी बना रहें हैं ! +

+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-095-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-095-manual.html new file mode 100644 index 00000000000..62ca5d1a19e --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-095-manual.html @@ -0,0 +1,34 @@ + + + + +text-decoration-line underline sideways-lr + + + + + + + + + +

Test passes if there is a line to the RIGHT of the characters.
Skip the test if the text is not vertical.

+
+ +
+

The quick brown fox jumps over the lazy dog.

+
+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-095a-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-095a-manual.html new file mode 100644 index 00000000000..f5bab19374f --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-095a-manual.html @@ -0,0 +1,39 @@ + + + + +text-decoration-line underline sideways-lr non-Latin + + + + + + + + + +

Test passes if there is a line to the RIGHT of the characters for all lines.
Skip the test if it fails for the English sentence, or if the text is not vertical.

+
+ +
+

The quick brown fox jumps over the lazy dog.

+

وب جهانی را به‌درستی جهانی سازیم!

+

အပြည်ပြည်ဆိုင်ရာလှုပ်ရှားမှု၊

+

กูกินกุ้งปิ้งอยู่ในถ้ำ กูกินกุ้งปิ้งอยู่ในถ้ำ

+

འཛམ་གླིང་ཡོངས་འབྲེལ་འདི་ ངོ་མ་འབད་རང་ འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་བཟོ་བ།

+

वर्ल्ड वाईड वेब को सचमुच विश्वव्यापी बना रहें हैं ! +

+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-096-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-096-manual.html new file mode 100644 index 00000000000..01eaf87875b --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-096-manual.html @@ -0,0 +1,34 @@ + + + + +text-decoration-line overline sideways-lr + + + + + + + + + +

Test passes if there is a line to the LEFT of the characters.
Skip the test if the text is not vertical.

+
+ +
+

The quick brown fox jumps over the lazy dog.

+
+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-096a-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-096a-manual.html new file mode 100644 index 00000000000..233006c904e --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-096a-manual.html @@ -0,0 +1,39 @@ + + + + +text-decoration-line overline sideways-lr non-Latin + + + + + + + + + +

Test passes if there is a line to the LEFT of the characters for all lines.
Skip the test if it fails for the English sentence, or if the text is not vertical.

+
+ +
+

The quick brown fox jumps over the lazy dog.

+

وب جهانی را به‌درستی جهانی سازیم!

+

အပြည်ပြည်ဆိုင်ရာလှုပ်ရှားမှု၊

+

กูกินกุ้งปิ้งอยู่ในถ้ำ กูกินกุ้งปิ้งอยู่ในถ้ำ

+

འཛམ་གླིང་ཡོངས་འབྲེལ་འདི་ ངོ་མ་འབད་རང་ འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་བཟོ་བ།

+

वर्ल्ड वाईड वेब को सचमुच विश्वव्यापी बना रहें हैं ! +

+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-097-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-097-manual.html new file mode 100644 index 00000000000..9502b2367ac --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-097-manual.html @@ -0,0 +1,34 @@ + + + + +text-decoration-line line-through sideways-lr + + + + + + + + + +

Test passes if there is a line through the CENTRE of the characters.
Skip the test if the text is not vertical.

+
+ +
+

The quick brown fox jumps over the lazy dog.

+
+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-097a-manual.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-097a-manual.html new file mode 100644 index 00000000000..e037e15d73c --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-line-097a-manual.html @@ -0,0 +1,39 @@ + + + + +text-decoration-line line-through sideways-lr non-Latin + + + + + + + + + +

Test passes if there is a line through the CENTRE of the characters for all lines.
Skip the test if it fails for the English sentence, or if the text is not vertical.

+
+ +
+

The quick brown fox jumps over the lazy dog.

+

وب جهانی را به‌درستی جهانی سازیم!

+

အပြည်ပြည်ဆိုင်ရာလှုပ်ရှားမှု၊

+

กูกินกุ้งปิ้งอยู่ในถ้ำ กูกินกุ้งปิ้งอยู่ในถ้ำ

+

འཛམ་གླིང་ཡོངས་འབྲེལ་འདི་ ངོ་མ་འབད་རང་ འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་བཟོ་བ།

+

वर्ल्ड वाईड वेब को सचमुच विश्वव्यापी बना रहें हैं ! +

+ + diff --git a/tests/wpt/web-platform-tests/css/css-text/line-breaking/line-breaking-013.html b/tests/wpt/web-platform-tests/css/css-text/line-breaking/line-breaking-013.html new file mode 100644 index 00000000000..448a41d88f1 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text/line-breaking/line-breaking-013.html @@ -0,0 +1,60 @@ + + + +CSS Text — line breaking of emoji sequences that should form single clusters + + + + + + +

Each emoji should appear on a single line with no red background.

+
+
👨‍💻
+
👨‍💻
+
+
+
👩‍👧‍👦
+
👩‍👧‍👦
+
+
+
🤹‍♀️
+
🤹‍♀️
+
+
+
⛹🏿‍♀️
+
⛹🏿‍♀️
+
+
+
🏳️‍🌈
+
🏳️‍🌈
+
+
+
🏴󠁧󠁢󠁷󠁬󠁳󠁿
+
🏴󠁧󠁢󠁷󠁬󠁳󠁿
+
+ + diff --git a/tests/wpt/web-platform-tests/css/css-text/line-breaking/line-breaking-014.html b/tests/wpt/web-platform-tests/css/css-text/line-breaking/line-breaking-014.html new file mode 100644 index 00000000000..ea9956362be --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text/line-breaking/line-breaking-014.html @@ -0,0 +1,61 @@ + + + +CSS Text — line breaking (with word-break:break-all) of emoji sequences that should form single clusters + + + + + + +

Each emoji should appear on a single line with no red background.

+
+
👨‍💻
+
👨‍💻
+
+
+
👩‍👧‍👦
+
👩‍👧‍👦
+
+
+
🤹‍♀️
+
🤹‍♀️
+
+
+
⛹🏿‍♀️
+
⛹🏿‍♀️
+
+
+
🏳️‍🌈
+
🏳️‍🌈
+
+
+
🏴󠁧󠁢󠁷󠁬󠁳󠁿
+
🏴󠁧󠁢󠁷󠁬󠁳󠁿
+
+ + diff --git a/tests/wpt/web-platform-tests/css/css-text/line-breaking/reference/line-breaking-013-ref.html b/tests/wpt/web-platform-tests/css/css-text/line-breaking/reference/line-breaking-013-ref.html new file mode 100644 index 00000000000..816015adeab --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text/line-breaking/reference/line-breaking-013-ref.html @@ -0,0 +1,41 @@ + + + +CSS Text — reference file for emoji sequence line-breaking test + + + +

Each emoji should appear on a single line with no red background.

+
+
👨‍💻
+
+
+
👩‍👧‍👦
+
+
+
🤹‍♀️
+
+
+
⛹🏿‍♀️
+
+
+
🏳️‍🌈
+
+
+
🏴󠁧󠁢󠁷󠁬󠁳󠁿
+
+ + diff --git a/tests/wpt/web-platform-tests/dom/events/Event-dispatch-on-disabled-elements.html b/tests/wpt/web-platform-tests/dom/events/Event-dispatch-on-disabled-elements.html index 72e63c4d1e9..361006a7240 100644 --- a/tests/wpt/web-platform-tests/dom/events/Event-dispatch-on-disabled-elements.html +++ b/tests/wpt/web-platform-tests/dom/events/Event-dispatch-on-disabled-elements.html @@ -165,19 +165,30 @@ promise_test(async () => { const elem = document.createElement(localName); document.body.appendChild(elem); elem.disabled = true; - const eventPromises = [ - "animationstart", - "animationiteration", - "animationend", - ].map(eventType => { - return new Promise(r => { - elem.addEventListener(eventType, r, { once: true }); + const animationStartPromise = new Promise(r => { + elem.addEventListener("animationstart", () => { + // Seek to the second iteration to trigger the animationiteration event + elem.style.animationDelay = "-100s" + r(); }); }); - elem.style.animation = "fade .1s 2"; + const animationIterationPromise = new Promise(r => { + elem.addEventListener("animationiteration", ()=>{ + elem.style.animationDelay = "-200s" + r(); + }); + }); + const animationEndPromise = new Promise(r => { + elem.addEventListener("animationend", r); + }); + elem.style.animation = "fade 100s 2"; elem.classList.add("animate"); // All the events fire... - await Promise.all(eventPromises); + await Promise.all([ + animationStartPromise, + animationIterationPromise, + animationEndPromise, + ]); elem.remove(); } }, "CSS Animation animationstart, animationiteration, animationend fire on disabled form elements"); diff --git a/tests/wpt/web-platform-tests/dom/events/EventTarget-dispatchEvent.html b/tests/wpt/web-platform-tests/dom/events/EventTarget-dispatchEvent.html index 1a8bf3de915..8a0d7353bc6 100644 --- a/tests/wpt/web-platform-tests/dom/events/EventTarget-dispatchEvent.html +++ b/tests/wpt/web-platform-tests/dom/events/EventTarget-dispatchEvent.html @@ -98,7 +98,7 @@ async_test(function() { results.push(3) }), true) b.dispatchEvent(new Event("x")) - assert_array_equals(results, [1, 2, 3]) + assert_array_equals(results, [1, 3, 2]) this.done() -}, "Event listeners should be called in order of addition") +}, "Capturing event listeners should be called before non-capturing ones") diff --git a/tests/wpt/web-platform-tests/html/semantics/forms/textfieldselection/selection-start-end-extra.html b/tests/wpt/web-platform-tests/html/semantics/forms/textfieldselection/selection-start-end-extra.html index af51354035c..e76f5f6ea70 100644 --- a/tests/wpt/web-platform-tests/html/semantics/forms/textfieldselection/selection-start-end-extra.html +++ b/tests/wpt/web-platform-tests/html/semantics/forms/textfieldselection/selection-start-end-extra.html @@ -69,11 +69,37 @@ el.selectionStart = 3; el.selectionEnd = 5; - el.textContent = "abcdef\r\nwhatevs"; + el.firstChild.data = "abcdef\r\nwhatevs"; assert_equals(el.selectionStart, 3); assert_equals(el.selectionEnd, 5); }, "Setting the same value (with different newlines) in a textarea should NOT update selection{Start,End}"); + test(function() { + var el = document.createElement("textarea"); + el.textContent = "foobar"; + el.selectionStart = 3; + el.selectionEnd = 5; + el.firstChild.remove(); + assert_equals(el.selectionStart, 0, 'selectionStart after node removal'); + assert_equals(el.selectionEnd, 0, 'selectionEnd after node removal'); + el.appendChild(document.createTextNode("foobar")); + assert_equals(el.selectionStart, 0, 'selectionStart after appendChild'); + assert_equals(el.selectionEnd, 0, 'selectionEnd after appendChild'); + + el.selectionStart = 3; + el.selectionEnd = 5; + el.textContent = "foobar2"; // This removes the child node first. + assert_equals(el.selectionStart, 0, 'selectionStart after textContent setter'); + assert_equals(el.selectionEnd, 0, 'selectionEnd after textContent setter'); + + el.selectionStart = 3; + el.selectionEnd = 5; + el.defaultValue = "foobar"; // Same as textContent setter. + assert_equals(el.selectionStart, 0, 'selectionStart after defaultValue setter'); + assert_equals(el.selectionEnd, 0, 'selectionEnd after defaultValue setter'); + + }, "Removing child nodes in non-dirty textarea should make selection{Start,End} 0"); + test(function() { var el = document.createElement("textarea"); el.defaultValue = "123"; @@ -105,8 +131,12 @@ assert_equals(el.selectionEnd, 9); el.type = "color"; el.type = "text"; - assert_equals(el.selectionStart, 7); - assert_equals(el.selectionEnd, 7); + // https://html.spec.whatwg.org/C/input.html#the-input-element:attr-input-type-15 + // 9. If previouslySelectable is false and nowSelectable is true, set the + // element's text entry cursor position to the beginning of the text + // control, ... + assert_equals(el.selectionStart, 0); + assert_equals(el.selectionEnd, 0); }, "Shortening value by turning the input type into 'color' and back to 'text' should correct selection{Start,End}"); test(function() { diff --git a/tests/wpt/web-platform-tests/interfaces/wake-lock.idl b/tests/wpt/web-platform-tests/interfaces/wake-lock.idl index 202dc6b09f7..4c11b695f49 100644 --- a/tests/wpt/web-platform-tests/interfaces/wake-lock.idl +++ b/tests/wpt/web-platform-tests/interfaces/wake-lock.idl @@ -11,13 +11,19 @@ enum WakeLockType { "screen", "system" }; [Constructor(WakeLockType type), SecureContext, Exposed=(DedicatedWorker,Window)] interface WakeLock : EventTarget { - [Exposed=Window] static Promise requestPermission(WakeLockType type); readonly attribute WakeLockType type; readonly attribute boolean active; attribute EventHandler onactivechange; Promise request(optional WakeLockRequestOptions options); + static sequence query(optional WakeLockQueryFilter filter); + [Exposed=Window] static Promise requestPermission(WakeLockType type); }; dictionary WakeLockRequestOptions { AbortSignal? signal; }; + +dictionary WakeLockQueryFilter { + WakeLockType? type; + boolean? active; +}; diff --git a/tests/wpt/web-platform-tests/interfaces/webrtc-stats.idl b/tests/wpt/web-platform-tests/interfaces/webrtc-stats.idl index 0992b341e1f..d9d20191ad8 100644 --- a/tests/wpt/web-platform-tests/interfaces/webrtc-stats.idl +++ b/tests/wpt/web-platform-tests/interfaces/webrtc-stats.idl @@ -102,7 +102,10 @@ dictionary RTCOutboundRtpStreamStats : RTCSentRtpStreamStats { DOMString senderId; DOMString remoteId; DOMHighResTimeStamp lastPacketSentTimestamp; + unsigned long long retransmittedPacketsSent; + unsigned long long retransmittedBytesSent; double targetBitrate; + unsigned long long totalEncodedBytesTarget; unsigned long framesEncoded; unsigned long long qpSum; double totalEncodeTime; diff --git a/tests/wpt/web-platform-tests/interfaces/webxr.idl b/tests/wpt/web-platform-tests/interfaces/webxr.idl index 8a3264073e8..4c74fdac384 100644 --- a/tests/wpt/web-platform-tests/interfaces/webxr.idl +++ b/tests/wpt/web-platform-tests/interfaces/webxr.idl @@ -188,6 +188,13 @@ interface XRInputSource { readonly attribute XRTargetRayMode targetRayMode; readonly attribute XRSpace targetRaySpace; readonly attribute XRSpace? gripSpace; + readonly attribute Gamepad? gamepad; +}; + +enum GamepadMappingType { + "", // Defined in the Gamepad API + "standard", // Defined in the Gamepad API + "xr-standard", }; [SecureContext, Exposed=Window] interface XRLayer {}; @@ -254,11 +261,13 @@ dictionary XRSessionEventInit : EventInit { interface XRInputSourceEvent : Event { readonly attribute XRFrame frame; readonly attribute XRInputSource inputSource; + readonly attribute long? buttonIndex; }; dictionary XRInputSourceEventInit : EventInit { required XRFrame frame; required XRInputSource inputSource; + long? buttonIndex = null; }; [SecureContext, Exposed=Window, Constructor(DOMString type, XRReferenceSpaceEventInit eventInitDict)] diff --git a/tests/wpt/web-platform-tests/url/resources/urltestdata.json b/tests/wpt/web-platform-tests/url/resources/urltestdata.json index 26b8ea2e0bc..bf4e2a7833d 100644 --- a/tests/wpt/web-platform-tests/url/resources/urltestdata.json +++ b/tests/wpt/web-platform-tests/url/resources/urltestdata.json @@ -4633,6 +4633,22 @@ "search": "", "hash": "" }, + "# unknown scheme with non-URL characters in the path", + { + "input": "wow:\uFFFF", + "base": "about:blank", + "href": "wow:%EF%BF%BF", + "origin": "null", + "protocol": "wow:", + "username": "", + "password": "", + "host": "", + "hostname": "", + "port": "", + "pathname": "%EF%BF%BF", + "search": "", + "hash": "" + }, "# Hosts and percent-encoding", { "input": "ftp://example.com%80/", diff --git a/tests/wpt/web-platform-tests/webrtc/RTCPeerConnection-onnegotiationneeded.html b/tests/wpt/web-platform-tests/webrtc/RTCPeerConnection-onnegotiationneeded.html index f7bf8bd3e3b..336b100de05 100644 --- a/tests/wpt/web-platform-tests/webrtc/RTCPeerConnection-onnegotiationneeded.html +++ b/tests/wpt/web-platform-tests/webrtc/RTCPeerConnection-onnegotiationneeded.html @@ -199,10 +199,133 @@ pc.onnegotiationneeded = e => fired = true; pc.createDataChannel('test'); const answer = await generateAnswer(offer); - await pc.setRemoteDescription(answer); + pc.setRemoteDescription(answer); assert_false(fired, "negotiationneeded should not fire until the next iteration of the event loop after returning to stable"); await new Promise(resolve => pc.onnegotiationneeded = resolve); - }, 'negotiationneeded event should fire only after signaling state go back to stable'); + }, 'negotiationneeded event should fire only after signaling state go back to stable after setRemoteDescription'); + + promise_test(async t => { + const callee = new RTCPeerConnection(); + t.add_cleanup(() => callee.close()); + + const caller = new RTCPeerConnection(); + t.add_cleanup(() => caller.close()); + + callee.addTransceiver('audio'); + + const offer = await caller.createOffer(); + let fired = false; + callee.onnegotiationneeded = e => fired = true; + await callee.setRemoteDescription(offer); + callee.createDataChannel('test'); + + const answer = await callee.createAnswer(offer); + callee.setLocalDescription(answer); + assert_false(fired, "negotiationneeded should not fire until the next iteration of the event loop after returning to stable"); + + await new Promise(resolve => callee.onnegotiationneeded = resolve); + }, 'negotiationneeded event should fire only after signaling state go back to stable after setLocalDescription'); + + /* + 5.1. RTCPeerConnection Interface Extensions + + addTrack + 10. Update the negotiation-needed flag for connection. + */ + promise_test(async t => { + const pc = new RTCPeerConnection(); + t.add_cleanup(() => pc.close()); + + const stream = await getNoiseStream({ audio: true }); + t.add_cleanup(() => stream.getTracks().forEach(track => track.stop())); + const [track] = stream.getTracks(); + pc.addTrack(track, stream); + + await new Promise(resolve => pc.onnegotiationneeded = resolve); + }, 'addTrack should cause negotiationneeded to fire'); + + /* + 5.1. RTCPeerConnection Interface Extensions + + removeTrack + 12. Update the negotiation-needed flag for connection. + */ + async_test(async t => { + const pc = new RTCPeerConnection(); + t.add_cleanup(() => pc.close()); + + const stream = await getNoiseStream({ audio: true }); + t.add_cleanup(() => stream.getTracks().forEach(track => track.stop())); + const [track] = stream.getTracks(); + const sender = pc.addTrack(track, stream); + pc.onnegotiationneeded = t.step_func(async () => { + pc.onnegotiationneeded = t.step_func(async () => { + assert_unreached('onnegotiationneeded misfired'); + }); + const offer = await pc.createOffer(); + await pc.setLocalDescription(offer); + + const answer = await generateAnswer(offer); + await pc.setRemoteDescription(answer); + + pc.removeTrack(sender); + await new Promise(resolve => pc.onnegotiationneeded = resolve) + t.done(); + }); + }, 'removeTrack should cause negotiationneeded to fire on the caller'); + + /* + 5.1. RTCPeerConnection Interface Extensions + + removeTrack + 12. Update the negotiation-needed flag for connection. + */ + async_test(async t => { + const caller = new RTCPeerConnection(); + t.add_cleanup(() => caller.close()); + caller.addTransceiver('audio', {direction:'recvonly'}); + const offer = await caller.createOffer(); + + const callee = new RTCPeerConnection(); + t.add_cleanup(() => callee.close()); + + const stream = await getNoiseStream({ audio: true }); + t.add_cleanup(() => stream.getTracks().forEach(track => track.stop())); + const [track] = stream.getTracks(); + const sender = callee.addTrack(track, stream); + + callee.onnegotiationneeded = t.step_func(async () => { + callee.onnegotiationneeded = t.step_func(async () => { + assert_unreached('onnegotiationneeded misfired'); + }); + await callee.setRemoteDescription(offer); + const answer = await callee.createAnswer(offer); + callee.setLocalDescription(answer); + + callee.removeTrack(sender); + await new Promise(resolve => callee.onnegotiationneeded = resolve) + t.done(); + }); + }, 'removeTrack should cause negotiationneeded to fire on the callee'); + + /* + 5.4. RTCRtpTransceiver Interface + + setDirection + 7. Update the negotiation-needed flag for connection. + */ + promise_test(async t => { + const pc = new RTCPeerConnection(); + t.add_cleanup(() => pc.close()); + + const transceiver = pc.addTransceiver('audio', {direction:'sendrecv'}); + const offer = await pc.createOffer(); + await pc.setLocalDescription(offer); + const answer = await generateAnswer(offer); + await pc.setRemoteDescription(answer); + transceiver.direction = 'recvonly'; + await new Promise(resolve => pc.onnegotiationneeded = resolve); + }, 'Updating the direction of the transceiver should cause negotiationneeded to fire'); /* TODO @@ -243,19 +366,8 @@ When the RTCPeerConnection() constructor is invoked 7. Let connection have a [[needNegotiation]] internal slot, initialized to false. - 5.1. RTCPeerConnection Interface Extensions - - addTrack - 10. Update the negotiation-needed flag for connection. - - removeTrack - 12. Update the negotiation-needed flag for connection. - 5.4. RTCRtpTransceiver Interface - setDirection - 7. Update the negotiation-needed flag for connection. - stop 11. Update the negotiation-needed flag for connection.