Import WPT infrastructure tests
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 3 Jul 2018 15:21:07 +0000 (15:21 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 3 Jul 2018 15:21:07 +0000 (15:21 +0000)
https://bugs.webkit.org/show_bug.cgi?id=187095

Patch by Frederic Wang <fwang@igalia.com> on 2018-07-03
Reviewed by Youenn Fablet.

LayoutTests/imported/w3c:

* resources/import-expectations.json:
* resources/resource-files.json:
* web-platform-tests/infrastructure/META.yml: Added.
* web-platform-tests/infrastructure/README.md: Added.
* web-platform-tests/infrastructure/assumptions/META.yml: Added.
* web-platform-tests/infrastructure/assumptions/ahem-expected.html: Added.
* web-platform-tests/infrastructure/assumptions/ahem-notref.html: Added.
* web-platform-tests/infrastructure/assumptions/ahem-ref-expected.html: Added.
* web-platform-tests/infrastructure/assumptions/ahem-ref.html: Added.
* web-platform-tests/infrastructure/assumptions/ahem.html: Added.
* web-platform-tests/infrastructure/assumptions/canvas-background-expected.html: Added.
* web-platform-tests/infrastructure/assumptions/canvas-background.html: Added.
* web-platform-tests/infrastructure/assumptions/html-elements-expected.txt: Added.
* web-platform-tests/infrastructure/assumptions/html-elements.html: Added.
* web-platform-tests/infrastructure/assumptions/initial-color-expected.html: Added.
* web-platform-tests/infrastructure/assumptions/initial-color.html: Added.
* web-platform-tests/infrastructure/assumptions/medium-font-size-expected.html: Added.
* web-platform-tests/infrastructure/assumptions/medium-font-size.html: Added.
* web-platform-tests/infrastructure/assumptions/min-font-size-expected.html: Added.
* web-platform-tests/infrastructure/assumptions/min-font-size.html: Added.
* web-platform-tests/infrastructure/assumptions/non-secure-context.any-expected.txt: Added.
* web-platform-tests/infrastructure/assumptions/non-secure-context.any.html: Added.
* web-platform-tests/infrastructure/assumptions/non-secure-context.any.js: Added.
(test):
* web-platform-tests/infrastructure/assumptions/non-secure-context.any.worker-expected.txt: Added.
* web-platform-tests/infrastructure/assumptions/non-secure-context.any.worker.html: Added.
* web-platform-tests/infrastructure/assumptions/tools/ahem-generate-table.py: Added.
(grouper):
(build_header):
(build_table):
* web-platform-tests/infrastructure/assumptions/tools/build.sh: Added.
* web-platform-tests/infrastructure/assumptions/tools/w3c-import.log: Added.
* web-platform-tests/infrastructure/assumptions/w3c-import.log: Added.
* web-platform-tests/infrastructure/browsers/firefox/prefs.html: Added.
* web-platform-tests/infrastructure/browsers/firefox/w3c-import.log: Added.
* web-platform-tests/infrastructure/expected-fail/failing-test.html: Added.
* web-platform-tests/infrastructure/expected-fail/timeout.html: Added.
* web-platform-tests/infrastructure/expected-fail/w3c-import.log: Added.
* web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/__dir__.ini: Added.
* web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/prefs.html.ini: Added.
* web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/w3c-import.log: Added.
* web-platform-tests/infrastructure/metadata/infrastructure/expected-fail/failing-test.html.ini: Added.
* web-platform-tests/infrastructure/metadata/infrastructure/expected-fail/timeout.html.ini: Added.
* web-platform-tests/infrastructure/metadata/infrastructure/expected-fail/w3c-import.log: Added.
* web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_and_fail.html.ini: Added.
* web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_cycle_fail.html.ini: Added.
* web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_match_fail.html.ini: Added.
* web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_mismatch_fail.html.ini: Added.
* web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_ref_timeout.html.ini: Added.
* web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_timeout.html.ini: Added.
* web-platform-tests/infrastructure/metadata/infrastructure/reftest/w3c-import.log: Added.
* web-platform-tests/infrastructure/reftest-wait-expected.html: Added.
* web-platform-tests/infrastructure/reftest-wait.html: Added.
* web-platform-tests/infrastructure/reftest/green-expected.html: Added.
* web-platform-tests/infrastructure/reftest/green-ref-expected.html: Added.
* web-platform-tests/infrastructure/reftest/green-ref.html: Added.
* web-platform-tests/infrastructure/reftest/green.html: Added.
* web-platform-tests/infrastructure/reftest/red.html: Added.
* web-platform-tests/infrastructure/reftest/reftest.https-expected.html: Added.
* web-platform-tests/infrastructure/reftest/reftest.https.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_and_fail-expected.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_and_fail.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_and_fail_0-ref-expected.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_and_fail_0-ref.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_cycle-expected.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_cycle.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_cycle_0-ref-expected.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_cycle_0-ref.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_cycle_1-ref-expected.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_cycle_1-ref.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_cycle_fail-expected.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_cycle_fail.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_cycle_fail_0-ref-expected.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_cycle_fail_0-ref.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_match-expected.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_match.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_match_fail-expected.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_match_fail.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_mismatch-expected.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_mismatch.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_mismatch_fail-expected.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_mismatch_fail.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_or_0-expected.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_or_0.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_ref_timeout-expected.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_ref_timeout.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_timeout-expected.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_timeout.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_wait_0-expected.html: Added.
* web-platform-tests/infrastructure/reftest/reftest_wait_0.html: Added.
* web-platform-tests/infrastructure/reftest/w3c-import.log: Added.
* web-platform-tests/infrastructure/server/order-of-metas.any-expected.txt: Added.
* web-platform-tests/infrastructure/server/order-of-metas.any.html: Added.
* web-platform-tests/infrastructure/server/order-of-metas.any.js: Added.
(test):
* web-platform-tests/infrastructure/server/order-of-metas.any.worker-expected.txt: Added.
* web-platform-tests/infrastructure/server/order-of-metas.any.worker.html: Added.
* web-platform-tests/infrastructure/server/order-of-metas.window.js: Added.
(test):
* web-platform-tests/infrastructure/server/resources/expect-global.js: Added.
(test):
* web-platform-tests/infrastructure/server/resources/expect-seen-testharness.js: Added.
(test):
* web-platform-tests/infrastructure/server/resources/expect-title-meta.js: Added.
(self.GLOBAL.self.GLOBAL.isWindow):
* web-platform-tests/infrastructure/server/resources/w3c-import.log: Added.
* web-platform-tests/infrastructure/server/secure-context.https.any-expected.txt: Added.
* web-platform-tests/infrastructure/server/secure-context.https.any.html: Added.
* web-platform-tests/infrastructure/server/secure-context.https.any.js: Added.
(test):
* web-platform-tests/infrastructure/server/secure-context.https.any.worker-expected.txt: Added.
* web-platform-tests/infrastructure/server/secure-context.https.any.worker.html: Added.
* web-platform-tests/infrastructure/server/title.any-expected.txt: Added.
* web-platform-tests/infrastructure/server/title.any.html: Added.
* web-platform-tests/infrastructure/server/title.any.js: Added.
(test.t.GLOBAL.isWindow):
* web-platform-tests/infrastructure/server/title.any.worker-expected.txt: Added.
* web-platform-tests/infrastructure/server/title.any.worker.html: Added.
* web-platform-tests/infrastructure/server/w3c-import.log: Added.
* web-platform-tests/infrastructure/server/wpt-server-http.sub-expected.txt: Added.
* web-platform-tests/infrastructure/server/wpt-server-http.sub.html: Added.
* web-platform-tests/infrastructure/server/wpt-server-websocket.sub.html: Added.
* web-platform-tests/infrastructure/testdriver/click.html: Added.
* web-platform-tests/infrastructure/testdriver/send_keys.html: Added.
* web-platform-tests/infrastructure/testdriver/w3c-import.log: Added.
* web-platform-tests/infrastructure/w3c-import.log: Added.
* web-platform-tests/infrastructure/webdriver/tests/conftest.py: Added.
* web-platform-tests/infrastructure/webdriver/tests/test_load_file.py: Added.
(test_load):
* web-platform-tests/infrastructure/webdriver/tests/w3c-import.log: Added.

LayoutTests:

* TestExpectations: Mark known failures.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@233463 268f45cc-cd09-0410-ab3c-d52691b4dbfc

121 files changed:
LayoutTests/ChangeLog
LayoutTests/TestExpectations
LayoutTests/imported/w3c/ChangeLog
LayoutTests/imported/w3c/resources/import-expectations.json
LayoutTests/imported/w3c/resources/resource-files.json
LayoutTests/imported/w3c/web-platform-tests/infrastructure/META.yml [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/README.md [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/META.yml [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/ahem-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/ahem-notref.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/ahem-ref-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/ahem-ref.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/ahem.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/canvas-background-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/canvas-background.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/html-elements-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/html-elements.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/initial-color-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/initial-color.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/medium-font-size-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/medium-font-size.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/min-font-size-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/min-font-size.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/non-secure-context.any-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/non-secure-context.any.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/non-secure-context.any.js [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/non-secure-context.any.worker-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/non-secure-context.any.worker.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/tools/ahem-generate-table.py [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/tools/build.sh [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/tools/w3c-import.log [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/w3c-import.log [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/browsers/firefox/prefs.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/browsers/firefox/w3c-import.log [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/expected-fail/failing-test.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/expected-fail/timeout.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/expected-fail/w3c-import.log [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/__dir__.ini [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/prefs.html.ini [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/w3c-import.log [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/expected-fail/failing-test.html.ini [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/expected-fail/timeout.html.ini [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/expected-fail/w3c-import.log [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_and_fail.html.ini [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_cycle_fail.html.ini [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_match_fail.html.ini [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_mismatch_fail.html.ini [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_ref_timeout.html.ini [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_timeout.html.ini [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/w3c-import.log [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest-wait-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest-wait.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/green-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/green-ref-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/green-ref.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/green.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/red.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest.https-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest.https.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_and_fail-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_and_fail.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_and_fail_0-ref-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_and_fail_0-ref.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_0-ref-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_0-ref.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_1-ref-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_1-ref.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_fail-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_fail.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_fail_0-ref-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_fail_0-ref.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_match-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_match.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_match_fail-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_match_fail.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_mismatch-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_mismatch.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_mismatch_fail-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_mismatch_fail.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_or_0-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_or_0.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_ref_timeout-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_ref_timeout.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_timeout-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_timeout.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_wait_0-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_wait_0.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/w3c-import.log [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/order-of-metas.any-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/order-of-metas.any.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/order-of-metas.any.js [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/order-of-metas.any.worker-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/order-of-metas.any.worker.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/order-of-metas.window.js [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/resources/expect-global.js [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/resources/expect-seen-testharness.js [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/resources/expect-title-meta.js [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/resources/w3c-import.log [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/secure-context.https.any-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/secure-context.https.any.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/secure-context.https.any.js [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/secure-context.https.any.worker-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/secure-context.https.any.worker.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/title.any-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/title.any.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/title.any.js [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/title.any.worker-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/title.any.worker.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/w3c-import.log [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/wpt-server-http.sub-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/wpt-server-http.sub.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/wpt-server-websocket.sub.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/testdriver/click.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/testdriver/send_keys.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/testdriver/w3c-import.log [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/w3c-import.log [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/webdriver/tests/conftest.py [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/webdriver/tests/test_load_file.py [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/infrastructure/webdriver/tests/w3c-import.log [new file with mode: 0644]

index 38b41e9..e2bb8d3 100644 (file)
@@ -1,5 +1,14 @@
 2018-07-03  Frederic Wang  <fwang@igalia.com>
 
+        Import WPT infrastructure tests
+        https://bugs.webkit.org/show_bug.cgi?id=187095
+
+        Reviewed by Youenn Fablet.
+
+        * TestExpectations: Mark known failures.
+
+2018-07-03  Frederic Wang  <fwang@igalia.com>
+
         REGRESSION (r232186): Hardware-accelerated CSS animations using steps() timing function no longer work
         https://bugs.webkit.org/show_bug.cgi?id=186129
 
index cb29f57..8ced3ca 100644 (file)
@@ -803,6 +803,25 @@ imported/w3c/web-platform-tests/fonts [ Skip ]
 imported/w3c/web-platform-tests/images [ Skip ]
 imported/w3c/web-platform-tests/tools [ Skip ]
 
+# Skip WPT infrastructure tests using expectation manifest.
+webkit.org/b/187003 imported/w3c/web-platform-tests/infrastructure/browsers/firefox [ Skip ]
+webkit.org/b/187003 imported/w3c/web-platform-tests/infrastructure/expected-fail/failing-test.html [ Skip ]
+webkit.org/b/187003 imported/w3c/web-platform-tests/infrastructure/expected-fail/timeout.html [ Skip ]
+webkit.org/b/187003 imported/w3c/web-platform-tests/infrastructure/reftest/reftest_and_fail.html [ Skip ]
+webkit.org/b/187003 imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_fail.html [ Skip ]
+webkit.org/b/187003 imported/w3c/web-platform-tests/infrastructure/reftest/reftest_match_fail.html [ Skip ]
+webkit.org/b/187003 imported/w3c/web-platform-tests/infrastructure/reftest/reftest_mismatch_fail.html [ Skip ]
+webkit.org/b/187003 imported/w3c/web-platform-tests/infrastructure/reftest/reftest_ref_timeout.html [ Skip ]
+webkit.org/b/187003 imported/w3c/web-platform-tests/infrastructure/reftest/reftest_timeout.html [ Skip ]
+
+# WPT infrastructure tests failing.
+imported/w3c/web-platform-tests/infrastructure/assumptions/ahem.html [ ImageOnlyFailure ]
+imported/w3c/web-platform-tests/infrastructure/assumptions/min-font-size.html [ ImageOnlyFailure ]
+webkit.org/b/186045 imported/w3c/web-platform-tests/infrastructure/reftest-wait.html [ ImageOnlyFailure ] # reftest-wait not supported yet.
+webkit.org/b/187039 imported/w3c/web-platform-tests/infrastructure/testdriver [ Skip ] # testdriver not supported yet.
+webkit.org/b/187093 imported/w3c/web-platform-tests/infrastructure/assumptions/html-elements.html [ Pass Crash ]
+imported/w3c/web-platform-tests/infrastructure/server/wpt-server-websocket.sub.html [ Skip ] # non deterministic URL in text dump
+
 # Imported W3C canvas failed tests
 webkit.org/b/138676 imported/w3c/canvas/2d.pattern.image.null.html [ Failure ]
 webkit.org/b/138676 imported/w3c/canvas/2d.pattern.image.incomplete.omitted.html [ Failure ]
index 4572394..551d6eb 100644 (file)
@@ -1,3 +1,141 @@
+2018-07-03  Frederic Wang  <fwang@igalia.com>
+
+        Import WPT infrastructure tests
+        https://bugs.webkit.org/show_bug.cgi?id=187095
+
+        Reviewed by Youenn Fablet.
+
+        * resources/import-expectations.json:
+        * resources/resource-files.json:
+        * web-platform-tests/infrastructure/META.yml: Added.
+        * web-platform-tests/infrastructure/README.md: Added.
+        * web-platform-tests/infrastructure/assumptions/META.yml: Added.
+        * web-platform-tests/infrastructure/assumptions/ahem-expected.html: Added.
+        * web-platform-tests/infrastructure/assumptions/ahem-notref.html: Added.
+        * web-platform-tests/infrastructure/assumptions/ahem-ref-expected.html: Added.
+        * web-platform-tests/infrastructure/assumptions/ahem-ref.html: Added.
+        * web-platform-tests/infrastructure/assumptions/ahem.html: Added.
+        * web-platform-tests/infrastructure/assumptions/canvas-background-expected.html: Added.
+        * web-platform-tests/infrastructure/assumptions/canvas-background.html: Added.
+        * web-platform-tests/infrastructure/assumptions/html-elements-expected.txt: Added.
+        * web-platform-tests/infrastructure/assumptions/html-elements.html: Added.
+        * web-platform-tests/infrastructure/assumptions/initial-color-expected.html: Added.
+        * web-platform-tests/infrastructure/assumptions/initial-color.html: Added.
+        * web-platform-tests/infrastructure/assumptions/medium-font-size-expected.html: Added.
+        * web-platform-tests/infrastructure/assumptions/medium-font-size.html: Added.
+        * web-platform-tests/infrastructure/assumptions/min-font-size-expected.html: Added.
+        * web-platform-tests/infrastructure/assumptions/min-font-size.html: Added.
+        * web-platform-tests/infrastructure/assumptions/non-secure-context.any-expected.txt: Added.
+        * web-platform-tests/infrastructure/assumptions/non-secure-context.any.html: Added.
+        * web-platform-tests/infrastructure/assumptions/non-secure-context.any.js: Added.
+        (test):
+        * web-platform-tests/infrastructure/assumptions/non-secure-context.any.worker-expected.txt: Added.
+        * web-platform-tests/infrastructure/assumptions/non-secure-context.any.worker.html: Added.
+        * web-platform-tests/infrastructure/assumptions/tools/ahem-generate-table.py: Added.
+        (grouper):
+        (build_header):
+        (build_table):
+        * web-platform-tests/infrastructure/assumptions/tools/build.sh: Added.
+        * web-platform-tests/infrastructure/assumptions/tools/w3c-import.log: Added.
+        * web-platform-tests/infrastructure/assumptions/w3c-import.log: Added.
+        * web-platform-tests/infrastructure/browsers/firefox/prefs.html: Added.
+        * web-platform-tests/infrastructure/browsers/firefox/w3c-import.log: Added.
+        * web-platform-tests/infrastructure/expected-fail/failing-test.html: Added.
+        * web-platform-tests/infrastructure/expected-fail/timeout.html: Added.
+        * web-platform-tests/infrastructure/expected-fail/w3c-import.log: Added.
+        * web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/__dir__.ini: Added.
+        * web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/prefs.html.ini: Added.
+        * web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/w3c-import.log: Added.
+        * web-platform-tests/infrastructure/metadata/infrastructure/expected-fail/failing-test.html.ini: Added.
+        * web-platform-tests/infrastructure/metadata/infrastructure/expected-fail/timeout.html.ini: Added.
+        * web-platform-tests/infrastructure/metadata/infrastructure/expected-fail/w3c-import.log: Added.
+        * web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_and_fail.html.ini: Added.
+        * web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_cycle_fail.html.ini: Added.
+        * web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_match_fail.html.ini: Added.
+        * web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_mismatch_fail.html.ini: Added.
+        * web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_ref_timeout.html.ini: Added.
+        * web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_timeout.html.ini: Added.
+        * web-platform-tests/infrastructure/metadata/infrastructure/reftest/w3c-import.log: Added.
+        * web-platform-tests/infrastructure/reftest-wait-expected.html: Added.
+        * web-platform-tests/infrastructure/reftest-wait.html: Added.
+        * web-platform-tests/infrastructure/reftest/green-expected.html: Added.
+        * web-platform-tests/infrastructure/reftest/green-ref-expected.html: Added.
+        * web-platform-tests/infrastructure/reftest/green-ref.html: Added.
+        * web-platform-tests/infrastructure/reftest/green.html: Added.
+        * web-platform-tests/infrastructure/reftest/red.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest.https-expected.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest.https.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_and_fail-expected.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_and_fail.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_and_fail_0-ref-expected.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_and_fail_0-ref.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_cycle-expected.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_cycle.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_cycle_0-ref-expected.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_cycle_0-ref.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_cycle_1-ref-expected.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_cycle_1-ref.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_cycle_fail-expected.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_cycle_fail.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_cycle_fail_0-ref-expected.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_cycle_fail_0-ref.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_match-expected.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_match.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_match_fail-expected.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_match_fail.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_mismatch-expected.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_mismatch.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_mismatch_fail-expected.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_mismatch_fail.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_or_0-expected.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_or_0.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_ref_timeout-expected.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_ref_timeout.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_timeout-expected.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_timeout.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_wait_0-expected.html: Added.
+        * web-platform-tests/infrastructure/reftest/reftest_wait_0.html: Added.
+        * web-platform-tests/infrastructure/reftest/w3c-import.log: Added.
+        * web-platform-tests/infrastructure/server/order-of-metas.any-expected.txt: Added.
+        * web-platform-tests/infrastructure/server/order-of-metas.any.html: Added.
+        * web-platform-tests/infrastructure/server/order-of-metas.any.js: Added.
+        (test):
+        * web-platform-tests/infrastructure/server/order-of-metas.any.worker-expected.txt: Added.
+        * web-platform-tests/infrastructure/server/order-of-metas.any.worker.html: Added.
+        * web-platform-tests/infrastructure/server/order-of-metas.window.js: Added.
+        (test):
+        * web-platform-tests/infrastructure/server/resources/expect-global.js: Added.
+        (test):
+        * web-platform-tests/infrastructure/server/resources/expect-seen-testharness.js: Added.
+        (test):
+        * web-platform-tests/infrastructure/server/resources/expect-title-meta.js: Added.
+        (self.GLOBAL.self.GLOBAL.isWindow):
+        * web-platform-tests/infrastructure/server/resources/w3c-import.log: Added.
+        * web-platform-tests/infrastructure/server/secure-context.https.any-expected.txt: Added.
+        * web-platform-tests/infrastructure/server/secure-context.https.any.html: Added.
+        * web-platform-tests/infrastructure/server/secure-context.https.any.js: Added.
+        (test):
+        * web-platform-tests/infrastructure/server/secure-context.https.any.worker-expected.txt: Added.
+        * web-platform-tests/infrastructure/server/secure-context.https.any.worker.html: Added.
+        * web-platform-tests/infrastructure/server/title.any-expected.txt: Added.
+        * web-platform-tests/infrastructure/server/title.any.html: Added.
+        * web-platform-tests/infrastructure/server/title.any.js: Added.
+        (test.t.GLOBAL.isWindow):
+        * web-platform-tests/infrastructure/server/title.any.worker-expected.txt: Added.
+        * web-platform-tests/infrastructure/server/title.any.worker.html: Added.
+        * web-platform-tests/infrastructure/server/w3c-import.log: Added.
+        * web-platform-tests/infrastructure/server/wpt-server-http.sub-expected.txt: Added.
+        * web-platform-tests/infrastructure/server/wpt-server-http.sub.html: Added.
+        * web-platform-tests/infrastructure/server/wpt-server-websocket.sub.html: Added.
+        * web-platform-tests/infrastructure/testdriver/click.html: Added.
+        * web-platform-tests/infrastructure/testdriver/send_keys.html: Added.
+        * web-platform-tests/infrastructure/testdriver/w3c-import.log: Added.
+        * web-platform-tests/infrastructure/w3c-import.log: Added.
+        * web-platform-tests/infrastructure/webdriver/tests/conftest.py: Added.
+        * web-platform-tests/infrastructure/webdriver/tests/test_load_file.py: Added.
+        (test_load):
+        * web-platform-tests/infrastructure/webdriver/tests/w3c-import.log: Added.
+
 2018-07-03  Antoine Quint  <graouts@apple.com>
 
         Unreviewed, rebaselining a Web Animations test expectation.
index 42656d4..feb825a 100644 (file)
     "web-platform-tests/http": "skip", 
     "web-platform-tests/image-decodes": "skip", 
     "web-platform-tests/imagebitmap-renderingcontext": "import", 
-    "web-platform-tests/infrastructure": "skip", 
+    "web-platform-tests/infrastructure": "import", 
     "web-platform-tests/innerText": "import", 
     "web-platform-tests/input-events": "skip", 
     "web-platform-tests/interfaces": "skip", 
index dfcceab..4cbf4aa 100644 (file)
         "web-platform-tests/html/syntax/parsing/foreign_content_013.html",
         "web-platform-tests/html/the-xhtml-syntax/parsing-xhtml-documents/xhtml-mathml-dtd-entity-support.htm",
         "web-platform-tests/html/webappapis/scripting/events/onerroreventhandler-frame.html",
+        "web-platform-tests/infrastructure/assumptions/ahem-notref.html",
+        "web-platform-tests/infrastructure/reftest/red.html",
         "web-platform-tests/intersection-observer/observer-in-iframe.html",
         "web-platform-tests/mathml/relations/html5-tree/unique-identifier-1-iframe-1.html",
         "web-platform-tests/mathml/relations/html5-tree/unique-identifier-1-iframe-2.html",
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/META.yml b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/META.yml
new file mode 100644 (file)
index 0000000..59b44af
--- /dev/null
@@ -0,0 +1,5 @@
+suggested_reviewers:
+  - gsnedders
+  - jgraham
+  - jugglinmike
+  - kereliuk
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/README.md b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/README.md
new file mode 100644 (file)
index 0000000..82138a3
--- /dev/null
@@ -0,0 +1,9 @@
+This directory contains a number of tests to ensure test running
+infrastructure is operating correctly:
+
+ * The tests in assumptions/ are designed to test UA assumptions
+   documented in [assumptions.md](/docs/_writing-tests/assumptions.md).
+
+ * The tests in server/ are designed to test the WPT server configuration
+
+ * The tests in expected-fail/ should all fail.
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/META.yml b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/META.yml
new file mode 100644 (file)
index 0000000..0f0f7aa
--- /dev/null
@@ -0,0 +1,2 @@
+suggested_reviewers:
+  - gsnedders
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/ahem-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/ahem-expected.html
new file mode 100644 (file)
index 0000000..9116232
--- /dev/null
@@ -0,0 +1,320 @@
+<!doctype html>
+<title>Ahem checker</title>
+<link rel="mismatch" href="ahem-notref.html">
+<style>
+* {
+  padding: 0;
+  margin: 0;
+  border: none;
+}
+td {
+  width: 34px;
+}
+@font-face {
+  font-family: Ahem;
+  src: url("../../fonts/Ahem.ttf");
+}
+table {
+  font: 15px/1 Ahem;
+  border-collapse: separate;
+  border-spacing: 1px;
+  table-layout: fixed;
+}
+</style>
+<table>
+    <tr>
+        <td>&#x0020;x <!-- U+0020: SPACE -->
+        <td>&#x0021;x <!-- U+0021: EXCLAMATION MARK -->
+        <td>&#x0022;x <!-- U+0022: QUOTATION MARK -->
+        <td>&#x0023;x <!-- U+0023: NUMBER SIGN -->
+        <td>&#x0024;x <!-- U+0024: DOLLAR SIGN -->
+        <td>&#x0025;x <!-- U+0025: PERCENT SIGN -->
+        <td>&#x0026;x <!-- U+0026: AMPERSAND -->
+        <td>&#x0028;x <!-- U+0028: LEFT PARENTHESIS -->
+        <td>&#x0029;x <!-- U+0029: RIGHT PARENTHESIS -->
+        <td>&#x002A;x <!-- U+002A: ASTERISK -->
+        <td>&#x002B;x <!-- U+002B: PLUS SIGN -->
+        <td>&#x002C;x <!-- U+002C: COMMA -->
+        <td>&#x002D;x <!-- U+002D: HYPHEN-MINUS -->
+        <td>&#x002E;x <!-- U+002E: FULL STOP -->
+        <td>&#x002F;x <!-- U+002F: SOLIDUS -->
+        <td>&#x0030;x <!-- U+0030: DIGIT ZERO -->
+        <td>&#x0031;x <!-- U+0031: DIGIT ONE -->
+    <tr>
+        <td>&#x0032;x <!-- U+0032: DIGIT TWO -->
+        <td>&#x0033;x <!-- U+0033: DIGIT THREE -->
+        <td>&#x0034;x <!-- U+0034: DIGIT FOUR -->
+        <td>&#x0035;x <!-- U+0035: DIGIT FIVE -->
+        <td>&#x0036;x <!-- U+0036: DIGIT SIX -->
+        <td>&#x0037;x <!-- U+0037: DIGIT SEVEN -->
+        <td>&#x0038;x <!-- U+0038: DIGIT EIGHT -->
+        <td>&#x0039;x <!-- U+0039: DIGIT NINE -->
+        <td>&#x003A;x <!-- U+003A: COLON -->
+        <td>&#x003B;x <!-- U+003B: SEMICOLON -->
+        <td>&#x003C;x <!-- U+003C: LESS-THAN SIGN -->
+        <td>&#x003D;x <!-- U+003D: EQUALS SIGN -->
+        <td>&#x003E;x <!-- U+003E: GREATER-THAN SIGN -->
+        <td>&#x003F;x <!-- U+003F: QUESTION MARK -->
+        <td>&#x0040;x <!-- U+0040: COMMERCIAL AT -->
+        <td>&#x0041;x <!-- U+0041: LATIN CAPITAL LETTER A -->
+        <td>&#x0042;x <!-- U+0042: LATIN CAPITAL LETTER B -->
+    <tr>
+        <td>&#x0043;x <!-- U+0043: LATIN CAPITAL LETTER C -->
+        <td>&#x0044;x <!-- U+0044: LATIN CAPITAL LETTER D -->
+        <td>&#x0045;x <!-- U+0045: LATIN CAPITAL LETTER E -->
+        <td>&#x0046;x <!-- U+0046: LATIN CAPITAL LETTER F -->
+        <td>&#x0047;x <!-- U+0047: LATIN CAPITAL LETTER G -->
+        <td>&#x0048;x <!-- U+0048: LATIN CAPITAL LETTER H -->
+        <td>&#x0049;x <!-- U+0049: LATIN CAPITAL LETTER I -->
+        <td>&#x004A;x <!-- U+004A: LATIN CAPITAL LETTER J -->
+        <td>&#x004B;x <!-- U+004B: LATIN CAPITAL LETTER K -->
+        <td>&#x004C;x <!-- U+004C: LATIN CAPITAL LETTER L -->
+        <td>&#x004D;x <!-- U+004D: LATIN CAPITAL LETTER M -->
+        <td>&#x004E;x <!-- U+004E: LATIN CAPITAL LETTER N -->
+        <td>&#x004F;x <!-- U+004F: LATIN CAPITAL LETTER O -->
+        <td>&#x0050;x <!-- U+0050: LATIN CAPITAL LETTER P -->
+        <td>&#x0051;x <!-- U+0051: LATIN CAPITAL LETTER Q -->
+        <td>&#x0052;x <!-- U+0052: LATIN CAPITAL LETTER R -->
+        <td>&#x0053;x <!-- U+0053: LATIN CAPITAL LETTER S -->
+    <tr>
+        <td>&#x0054;x <!-- U+0054: LATIN CAPITAL LETTER T -->
+        <td>&#x0055;x <!-- U+0055: LATIN CAPITAL LETTER U -->
+        <td>&#x0056;x <!-- U+0056: LATIN CAPITAL LETTER V -->
+        <td>&#x0057;x <!-- U+0057: LATIN CAPITAL LETTER W -->
+        <td>&#x0058;x <!-- U+0058: LATIN CAPITAL LETTER X -->
+        <td>&#x0059;x <!-- U+0059: LATIN CAPITAL LETTER Y -->
+        <td>&#x005A;x <!-- U+005A: LATIN CAPITAL LETTER Z -->
+        <td>&#x005B;x <!-- U+005B: LEFT SQUARE BRACKET -->
+        <td>&#x005C;x <!-- U+005C: REVERSE SOLIDUS -->
+        <td>&#x005D;x <!-- U+005D: RIGHT SQUARE BRACKET -->
+        <td>&#x005E;x <!-- U+005E: CIRCUMFLEX ACCENT -->
+        <td>&#x005F;x <!-- U+005F: LOW LINE -->
+        <td>&#x0060;x <!-- U+0060: GRAVE ACCENT -->
+        <td>&#x0061;x <!-- U+0061: LATIN SMALL LETTER A -->
+        <td>&#x0062;x <!-- U+0062: LATIN SMALL LETTER B -->
+        <td>&#x0063;x <!-- U+0063: LATIN SMALL LETTER C -->
+        <td>&#x0064;x <!-- U+0064: LATIN SMALL LETTER D -->
+    <tr>
+        <td>&#x0065;x <!-- U+0065: LATIN SMALL LETTER E -->
+        <td>&#x0066;x <!-- U+0066: LATIN SMALL LETTER F -->
+        <td>&#x0067;x <!-- U+0067: LATIN SMALL LETTER G -->
+        <td>&#x0068;x <!-- U+0068: LATIN SMALL LETTER H -->
+        <td>&#x0069;x <!-- U+0069: LATIN SMALL LETTER I -->
+        <td>&#x006A;x <!-- U+006A: LATIN SMALL LETTER J -->
+        <td>&#x006B;x <!-- U+006B: LATIN SMALL LETTER K -->
+        <td>&#x006C;x <!-- U+006C: LATIN SMALL LETTER L -->
+        <td>&#x006D;x <!-- U+006D: LATIN SMALL LETTER M -->
+        <td>&#x006E;x <!-- U+006E: LATIN SMALL LETTER N -->
+        <td>&#x006F;x <!-- U+006F: LATIN SMALL LETTER O -->
+        <td>&#x0070;x <!-- U+0070: LATIN SMALL LETTER P -->
+        <td>&#x0071;x <!-- U+0071: LATIN SMALL LETTER Q -->
+        <td>&#x0072;x <!-- U+0072: LATIN SMALL LETTER R -->
+        <td>&#x0073;x <!-- U+0073: LATIN SMALL LETTER S -->
+        <td>&#x0074;x <!-- U+0074: LATIN SMALL LETTER T -->
+        <td>&#x0075;x <!-- U+0075: LATIN SMALL LETTER U -->
+    <tr>
+        <td>&#x0076;x <!-- U+0076: LATIN SMALL LETTER V -->
+        <td>&#x0077;x <!-- U+0077: LATIN SMALL LETTER W -->
+        <td>&#x0078;x <!-- U+0078: LATIN SMALL LETTER X -->
+        <td>&#x0079;x <!-- U+0079: LATIN SMALL LETTER Y -->
+        <td>&#x007A;x <!-- U+007A: LATIN SMALL LETTER Z -->
+        <td>&#x007B;x <!-- U+007B: LEFT CURLY BRACKET -->
+        <td>&#x007C;x <!-- U+007C: VERTICAL LINE -->
+        <td>&#x007D;x <!-- U+007D: RIGHT CURLY BRACKET -->
+        <td>&#x007E;x <!-- U+007E: TILDE -->
+        <td>&#x00A0;x <!-- U+00A0: NO-BREAK SPACE -->
+        <td>&#x00A1;x <!-- U+00A1: INVERTED EXCLAMATION MARK -->
+        <td>&#x00A2;x <!-- U+00A2: CENT SIGN -->
+        <td>&#x00A3;x <!-- U+00A3: POUND SIGN -->
+        <td>&#x00A4;x <!-- U+00A4: CURRENCY SIGN -->
+        <td>&#x00A5;x <!-- U+00A5: YEN SIGN -->
+        <td>&#x00A6;x <!-- U+00A6: BROKEN BAR -->
+        <td>&#x00A7;x <!-- U+00A7: SECTION SIGN -->
+    <tr>
+        <td>&#x00A8;x <!-- U+00A8: DIAERESIS -->
+        <td>&#x00A9;x <!-- U+00A9: COPYRIGHT SIGN -->
+        <td>&#x00AA;x <!-- U+00AA: FEMININE ORDINAL INDICATOR -->
+        <td>&#x00AB;x <!-- U+00AB: LEFT-POINTING DOUBLE ANGLE QUOTATION MARK -->
+        <td>&#x00AC;x <!-- U+00AC: NOT SIGN -->
+        <td>&#x00AD;x <!-- U+00AD: SOFT HYPHEN -->
+        <td>&#x00AE;x <!-- U+00AE: REGISTERED SIGN -->
+        <td>&#x00AF;x <!-- U+00AF: MACRON -->
+        <td>&#x00B0;x <!-- U+00B0: DEGREE SIGN -->
+        <td>&#x00B1;x <!-- U+00B1: PLUS-MINUS SIGN -->
+        <td>&#x00B2;x <!-- U+00B2: SUPERSCRIPT TWO -->
+        <td>&#x00B3;x <!-- U+00B3: SUPERSCRIPT THREE -->
+        <td>&#x00B4;x <!-- U+00B4: ACUTE ACCENT -->
+        <td>&#x00B5;x <!-- U+00B5: MICRO SIGN -->
+        <td>&#x00B6;x <!-- U+00B6: PILCROW SIGN -->
+        <td>&#x00B7;x <!-- U+00B7: MIDDLE DOT -->
+        <td>&#x00B8;x <!-- U+00B8: CEDILLA -->
+    <tr>
+        <td>&#x00B9;x <!-- U+00B9: SUPERSCRIPT ONE -->
+        <td>&#x00BA;x <!-- U+00BA: MASCULINE ORDINAL INDICATOR -->
+        <td>&#x00BB;x <!-- U+00BB: RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK -->
+        <td>&#x00BC;x <!-- U+00BC: VULGAR FRACTION ONE QUARTER -->
+        <td>&#x00BD;x <!-- U+00BD: VULGAR FRACTION ONE HALF -->
+        <td>&#x00BE;x <!-- U+00BE: VULGAR FRACTION THREE QUARTERS -->
+        <td>&#x00BF;x <!-- U+00BF: INVERTED QUESTION MARK -->
+        <td>&#x00C0;x <!-- U+00C0: LATIN CAPITAL LETTER A WITH GRAVE -->
+        <td>&#x00C1;x <!-- U+00C1: LATIN CAPITAL LETTER A WITH ACUTE -->
+        <td>&#x00C2;x <!-- U+00C2: LATIN CAPITAL LETTER A WITH CIRCUMFLEX -->
+        <td>&#x00C3;x <!-- U+00C3: LATIN CAPITAL LETTER A WITH TILDE -->
+        <td>&#x00C4;x <!-- U+00C4: LATIN CAPITAL LETTER A WITH DIAERESIS -->
+        <td>&#x00C5;x <!-- U+00C5: LATIN CAPITAL LETTER A WITH RING ABOVE -->
+        <td>&#x00C6;x <!-- U+00C6: LATIN CAPITAL LETTER AE -->
+        <td>&#x00C7;x <!-- U+00C7: LATIN CAPITAL LETTER C WITH CEDILLA -->
+        <td>&#x00C8;x <!-- U+00C8: LATIN CAPITAL LETTER E WITH GRAVE -->
+        <td>&#x00C9;x <!-- U+00C9: LATIN CAPITAL LETTER E WITH ACUTE -->
+    <tr>
+        <td>&#x00CA;x <!-- U+00CA: LATIN CAPITAL LETTER E WITH CIRCUMFLEX -->
+        <td>&#x00CB;x <!-- U+00CB: LATIN CAPITAL LETTER E WITH DIAERESIS -->
+        <td>&#x00CC;x <!-- U+00CC: LATIN CAPITAL LETTER I WITH GRAVE -->
+        <td>&#x00CD;x <!-- U+00CD: LATIN CAPITAL LETTER I WITH ACUTE -->
+        <td>&#x00CE;x <!-- U+00CE: LATIN CAPITAL LETTER I WITH CIRCUMFLEX -->
+        <td>&#x00CF;x <!-- U+00CF: LATIN CAPITAL LETTER I WITH DIAERESIS -->
+        <td>&#x00D0;x <!-- U+00D0: LATIN CAPITAL LETTER ETH -->
+        <td>&#x00D1;x <!-- U+00D1: LATIN CAPITAL LETTER N WITH TILDE -->
+        <td>&#x00D2;x <!-- U+00D2: LATIN CAPITAL LETTER O WITH GRAVE -->
+        <td>&#x00D3;x <!-- U+00D3: LATIN CAPITAL LETTER O WITH ACUTE -->
+        <td>&#x00D4;x <!-- U+00D4: LATIN CAPITAL LETTER O WITH CIRCUMFLEX -->
+        <td>&#x00D5;x <!-- U+00D5: LATIN CAPITAL LETTER O WITH TILDE -->
+        <td>&#x00D6;x <!-- U+00D6: LATIN CAPITAL LETTER O WITH DIAERESIS -->
+        <td>&#x00D7;x <!-- U+00D7: MULTIPLICATION SIGN -->
+        <td>&#x00D8;x <!-- U+00D8: LATIN CAPITAL LETTER O WITH STROKE -->
+        <td>&#x00D9;x <!-- U+00D9: LATIN CAPITAL LETTER U WITH GRAVE -->
+        <td>&#x00DA;x <!-- U+00DA: LATIN CAPITAL LETTER U WITH ACUTE -->
+    <tr>
+        <td>&#x00DB;x <!-- U+00DB: LATIN CAPITAL LETTER U WITH CIRCUMFLEX -->
+        <td>&#x00DC;x <!-- U+00DC: LATIN CAPITAL LETTER U WITH DIAERESIS -->
+        <td>&#x00DD;x <!-- U+00DD: LATIN CAPITAL LETTER Y WITH ACUTE -->
+        <td>&#x00DE;x <!-- U+00DE: LATIN CAPITAL LETTER THORN -->
+        <td>&#x00DF;x <!-- U+00DF: LATIN SMALL LETTER SHARP S -->
+        <td>&#x00E0;x <!-- U+00E0: LATIN SMALL LETTER A WITH GRAVE -->
+        <td>&#x00E1;x <!-- U+00E1: LATIN SMALL LETTER A WITH ACUTE -->
+        <td>&#x00E2;x <!-- U+00E2: LATIN SMALL LETTER A WITH CIRCUMFLEX -->
+        <td>&#x00E3;x <!-- U+00E3: LATIN SMALL LETTER A WITH TILDE -->
+        <td>&#x00E4;x <!-- U+00E4: LATIN SMALL LETTER A WITH DIAERESIS -->
+        <td>&#x00E5;x <!-- U+00E5: LATIN SMALL LETTER A WITH RING ABOVE -->
+        <td>&#x00E6;x <!-- U+00E6: LATIN SMALL LETTER AE -->
+        <td>&#x00E7;x <!-- U+00E7: LATIN SMALL LETTER C WITH CEDILLA -->
+        <td>&#x00E8;x <!-- U+00E8: LATIN SMALL LETTER E WITH GRAVE -->
+        <td>&#x00E9;x <!-- U+00E9: LATIN SMALL LETTER E WITH ACUTE -->
+        <td>&#x00EA;x <!-- U+00EA: LATIN SMALL LETTER E WITH CIRCUMFLEX -->
+        <td>&#x00EB;x <!-- U+00EB: LATIN SMALL LETTER E WITH DIAERESIS -->
+    <tr>
+        <td>&#x00EC;x <!-- U+00EC: LATIN SMALL LETTER I WITH GRAVE -->
+        <td>&#x00ED;x <!-- U+00ED: LATIN SMALL LETTER I WITH ACUTE -->
+        <td>&#x00EE;x <!-- U+00EE: LATIN SMALL LETTER I WITH CIRCUMFLEX -->
+        <td>&#x00EF;x <!-- U+00EF: LATIN SMALL LETTER I WITH DIAERESIS -->
+        <td>&#x00F0;x <!-- U+00F0: LATIN SMALL LETTER ETH -->
+        <td>&#x00F1;x <!-- U+00F1: LATIN SMALL LETTER N WITH TILDE -->
+        <td>&#x00F2;x <!-- U+00F2: LATIN SMALL LETTER O WITH GRAVE -->
+        <td>&#x00F3;x <!-- U+00F3: LATIN SMALL LETTER O WITH ACUTE -->
+        <td>&#x00F4;x <!-- U+00F4: LATIN SMALL LETTER O WITH CIRCUMFLEX -->
+        <td>&#x00F5;x <!-- U+00F5: LATIN SMALL LETTER O WITH TILDE -->
+        <td>&#x00F6;x <!-- U+00F6: LATIN SMALL LETTER O WITH DIAERESIS -->
+        <td>&#x00F7;x <!-- U+00F7: DIVISION SIGN -->
+        <td>&#x00F8;x <!-- U+00F8: LATIN SMALL LETTER O WITH STROKE -->
+        <td>&#x00F9;x <!-- U+00F9: LATIN SMALL LETTER U WITH GRAVE -->
+        <td>&#x00FA;x <!-- U+00FA: LATIN SMALL LETTER U WITH ACUTE -->
+        <td>&#x00FB;x <!-- U+00FB: LATIN SMALL LETTER U WITH CIRCUMFLEX -->
+        <td>&#x00FC;x <!-- U+00FC: LATIN SMALL LETTER U WITH DIAERESIS -->
+    <tr>
+        <td>&#x00FD;x <!-- U+00FD: LATIN SMALL LETTER Y WITH ACUTE -->
+        <td>&#x00FE;x <!-- U+00FE: LATIN SMALL LETTER THORN -->
+        <td>&#x00FF;x <!-- U+00FF: LATIN SMALL LETTER Y WITH DIAERESIS -->
+        <td>&#x0131;x <!-- U+0131: LATIN SMALL LETTER DOTLESS I -->
+        <td>&#x0152;x <!-- U+0152: LATIN CAPITAL LIGATURE OE -->
+        <td>&#x0153;x <!-- U+0153: LATIN SMALL LIGATURE OE -->
+        <td>&#x0178;x <!-- U+0178: LATIN CAPITAL LETTER Y WITH DIAERESIS -->
+        <td>&#x0192;x <!-- U+0192: LATIN SMALL LETTER F WITH HOOK -->
+        <td>&#x02C6;x <!-- U+02C6: MODIFIER LETTER CIRCUMFLEX ACCENT -->
+        <td>&#x02C7;x <!-- U+02C7: CARON -->
+        <td>&#x02C9;x <!-- U+02C9: MODIFIER LETTER MACRON -->
+        <td>&#x02D8;x <!-- U+02D8: BREVE -->
+        <td>&#x02D9;x <!-- U+02D9: DOT ABOVE -->
+        <td>&#x02DA;x <!-- U+02DA: RING ABOVE -->
+        <td>&#x02DB;x <!-- U+02DB: OGONEK -->
+        <td>&#x02DC;x <!-- U+02DC: SMALL TILDE -->
+        <td>&#x02DD;x <!-- U+02DD: DOUBLE ACUTE ACCENT -->
+    <tr>
+        <td>&#x0394;x <!-- U+0394: GREEK CAPITAL LETTER DELTA -->
+        <td>&#x03A5;x <!-- U+03A5: GREEK CAPITAL LETTER UPSILON -->
+        <td>&#x03A7;x <!-- U+03A7: GREEK CAPITAL LETTER CHI -->
+        <td>&#x03A9;x <!-- U+03A9: GREEK CAPITAL LETTER OMEGA -->
+        <td>&#x03BC;x <!-- U+03BC: GREEK SMALL LETTER MU -->
+        <td>&#x03C0;x <!-- U+03C0: GREEK SMALL LETTER PI -->
+        <td>&#x2002;x <!-- U+2002: EN SPACE -->
+        <td>&#x2003;x <!-- U+2003: EM SPACE -->
+        <td>&#x2004;x <!-- U+2004: THREE-PER-EM SPACE -->
+        <td>&#x2005;x <!-- U+2005: FOUR-PER-EM SPACE -->
+        <td>&#x2006;x <!-- U+2006: SIX-PER-EM SPACE -->
+        <td>&#x2009;x <!-- U+2009: THIN SPACE -->
+        <td>&#x200A;x <!-- U+200A: HAIR SPACE -->
+        <td>&#x200B;x <!-- U+200B: ZERO WIDTH SPACE -->
+        <td>&#x200C;x <!-- U+200C: ZERO WIDTH NON-JOINER -->
+        <td>&#x200D;x <!-- U+200D: ZERO WIDTH JOINER -->
+        <td>&#x2010;x <!-- U+2010: HYPHEN -->
+    <tr>
+        <td>&#x2013;x <!-- U+2013: EN DASH -->
+        <td>&#x2014;x <!-- U+2014: EM DASH -->
+        <td>&#x2018;x <!-- U+2018: LEFT SINGLE QUOTATION MARK -->
+        <td>&#x2019;x <!-- U+2019: RIGHT SINGLE QUOTATION MARK -->
+        <td>&#x201A;x <!-- U+201A: SINGLE LOW-9 QUOTATION MARK -->
+        <td>&#x201C;x <!-- U+201C: LEFT DOUBLE QUOTATION MARK -->
+        <td>&#x201D;x <!-- U+201D: RIGHT DOUBLE QUOTATION MARK -->
+        <td>&#x201E;x <!-- U+201E: DOUBLE LOW-9 QUOTATION MARK -->
+        <td>&#x2020;x <!-- U+2020: DAGGER -->
+        <td>&#x2021;x <!-- U+2021: DOUBLE DAGGER -->
+        <td>&#x2022;x <!-- U+2022: BULLET -->
+        <td>&#x2026;x <!-- U+2026: HORIZONTAL ELLIPSIS -->
+        <td>&#x2030;x <!-- U+2030: PER MILLE SIGN -->
+        <td>&#x2039;x <!-- U+2039: SINGLE LEFT-POINTING ANGLE QUOTATION MARK -->
+        <td>&#x203A;x <!-- U+203A: SINGLE RIGHT-POINTING ANGLE QUOTATION MARK -->
+        <td>&#x2044;x <!-- U+2044: FRACTION SLASH -->
+        <td>&#x2122;x <!-- U+2122: TRADE MARK SIGN -->
+    <tr>
+        <td>&#x2126;x <!-- U+2126: OHM SIGN -->
+        <td>&#x2202;x <!-- U+2202: PARTIAL DIFFERENTIAL -->
+        <td>&#x2206;x <!-- U+2206: INCREMENT -->
+        <td>&#x220F;x <!-- U+220F: N-ARY PRODUCT -->
+        <td>&#x2211;x <!-- U+2211: N-ARY SUMMATION -->
+        <td>&#x2212;x <!-- U+2212: MINUS SIGN -->
+        <td>&#x2219;x <!-- U+2219: BULLET OPERATOR -->
+        <td>&#x221A;x <!-- U+221A: SQUARE ROOT -->
+        <td>&#x221E;x <!-- U+221E: INFINITY -->
+        <td>&#x222B;x <!-- U+222B: INTEGRAL -->
+        <td>&#x2248;x <!-- U+2248: ALMOST EQUAL TO -->
+        <td>&#x2260;x <!-- U+2260: NOT EQUAL TO -->
+        <td>&#x2264;x <!-- U+2264: LESS-THAN OR EQUAL TO -->
+        <td>&#x2265;x <!-- U+2265: GREATER-THAN OR EQUAL TO -->
+        <td>&#x22F2;x <!-- U+22F2: ELEMENT OF WITH LONG HORIZONTAL STROKE -->
+        <td>&#x25CA;x <!-- U+25CA: LOZENGE -->
+        <td>&#x3000;x <!-- U+3000: IDEOGRAPHIC SPACE -->
+    <tr>
+        <td>&#x3007;x <!-- U+3007: IDEOGRAPHIC NUMBER ZERO -->
+        <td>&#x4E00;x <!-- U+4E00: CJK UNIFIED IDEOGRAPH-4E00 -->
+        <td>&#x4E03;x <!-- U+4E03: CJK UNIFIED IDEOGRAPH-4E03 -->
+        <td>&#x4E09;x <!-- U+4E09: CJK UNIFIED IDEOGRAPH-4E09 -->
+        <td>&#x4E5D;x <!-- U+4E5D: CJK UNIFIED IDEOGRAPH-4E5D -->
+        <td>&#x4E8C;x <!-- U+4E8C: CJK UNIFIED IDEOGRAPH-4E8C -->
+        <td>&#x4E94;x <!-- U+4E94: CJK UNIFIED IDEOGRAPH-4E94 -->
+        <td>&#x516B;x <!-- U+516B: CJK UNIFIED IDEOGRAPH-516B -->
+        <td>&#x516D;x <!-- U+516D: CJK UNIFIED IDEOGRAPH-516D -->
+        <td>&#x5341;x <!-- U+5341: CJK UNIFIED IDEOGRAPH-5341 -->
+        <td>&#x56D7;x <!-- U+56D7: CJK UNIFIED IDEOGRAPH-56D7 -->
+        <td>&#x56DB;x <!-- U+56DB: CJK UNIFIED IDEOGRAPH-56DB -->
+        <td>&#x571F;x <!-- U+571F: CJK UNIFIED IDEOGRAPH-571F -->
+        <td>&#x6728;x <!-- U+6728: CJK UNIFIED IDEOGRAPH-6728 -->
+        <td>&#x6A2A;x <!-- U+6A2A: CJK UNIFIED IDEOGRAPH-6A2A -->
+        <td>&#x6C34;x <!-- U+6C34: CJK UNIFIED IDEOGRAPH-6C34 -->
+        <td>&#x706B;x <!-- U+706B: CJK UNIFIED IDEOGRAPH-706B -->
+    <tr>
+        <td>&#x7EB5;x <!-- U+7EB5: CJK UNIFIED IDEOGRAPH-7EB5 -->
+        <td>&#x91D1;x <!-- U+91D1: CJK UNIFIED IDEOGRAPH-91D1 -->
+        <td>&#xF000;x <!-- U+F000 -->
+        <td>&#xF001;x <!-- U+F001 -->
+        <td>&#xF002;x <!-- U+F002 -->
+        <td>&#xFEFF;x <!-- U+FEFF: ZERO WIDTH NO-BREAK SPACE -->
+</table>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/ahem-notref.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/ahem-notref.html
new file mode 100644 (file)
index 0000000..51767c2
--- /dev/null
@@ -0,0 +1,316 @@
+<!doctype html>
+<title>Ahem checker</title>
+<style>
+* {
+  padding: 0;
+  margin: 0;
+  border: none;
+}
+td {
+  width: 34px;
+}
+table {
+  font-size: 15px;
+  line-height: 1;
+  border-collapse: separate;
+  border-spacing: 1px;
+  table-layout: fixed;
+}
+</style>
+<table>
+    <tr>
+        <td>&#x0020;x <!-- U+0020: SPACE -->
+        <td>&#x0021;x <!-- U+0021: EXCLAMATION MARK -->
+        <td>&#x0022;x <!-- U+0022: QUOTATION MARK -->
+        <td>&#x0023;x <!-- U+0023: NUMBER SIGN -->
+        <td>&#x0024;x <!-- U+0024: DOLLAR SIGN -->
+        <td>&#x0025;x <!-- U+0025: PERCENT SIGN -->
+        <td>&#x0026;x <!-- U+0026: AMPERSAND -->
+        <td>&#x0028;x <!-- U+0028: LEFT PARENTHESIS -->
+        <td>&#x0029;x <!-- U+0029: RIGHT PARENTHESIS -->
+        <td>&#x002A;x <!-- U+002A: ASTERISK -->
+        <td>&#x002B;x <!-- U+002B: PLUS SIGN -->
+        <td>&#x002C;x <!-- U+002C: COMMA -->
+        <td>&#x002D;x <!-- U+002D: HYPHEN-MINUS -->
+        <td>&#x002E;x <!-- U+002E: FULL STOP -->
+        <td>&#x002F;x <!-- U+002F: SOLIDUS -->
+        <td>&#x0030;x <!-- U+0030: DIGIT ZERO -->
+        <td>&#x0031;x <!-- U+0031: DIGIT ONE -->
+    <tr>
+        <td>&#x0032;x <!-- U+0032: DIGIT TWO -->
+        <td>&#x0033;x <!-- U+0033: DIGIT THREE -->
+        <td>&#x0034;x <!-- U+0034: DIGIT FOUR -->
+        <td>&#x0035;x <!-- U+0035: DIGIT FIVE -->
+        <td>&#x0036;x <!-- U+0036: DIGIT SIX -->
+        <td>&#x0037;x <!-- U+0037: DIGIT SEVEN -->
+        <td>&#x0038;x <!-- U+0038: DIGIT EIGHT -->
+        <td>&#x0039;x <!-- U+0039: DIGIT NINE -->
+        <td>&#x003A;x <!-- U+003A: COLON -->
+        <td>&#x003B;x <!-- U+003B: SEMICOLON -->
+        <td>&#x003C;x <!-- U+003C: LESS-THAN SIGN -->
+        <td>&#x003D;x <!-- U+003D: EQUALS SIGN -->
+        <td>&#x003E;x <!-- U+003E: GREATER-THAN SIGN -->
+        <td>&#x003F;x <!-- U+003F: QUESTION MARK -->
+        <td>&#x0040;x <!-- U+0040: COMMERCIAL AT -->
+        <td>&#x0041;x <!-- U+0041: LATIN CAPITAL LETTER A -->
+        <td>&#x0042;x <!-- U+0042: LATIN CAPITAL LETTER B -->
+    <tr>
+        <td>&#x0043;x <!-- U+0043: LATIN CAPITAL LETTER C -->
+        <td>&#x0044;x <!-- U+0044: LATIN CAPITAL LETTER D -->
+        <td>&#x0045;x <!-- U+0045: LATIN CAPITAL LETTER E -->
+        <td>&#x0046;x <!-- U+0046: LATIN CAPITAL LETTER F -->
+        <td>&#x0047;x <!-- U+0047: LATIN CAPITAL LETTER G -->
+        <td>&#x0048;x <!-- U+0048: LATIN CAPITAL LETTER H -->
+        <td>&#x0049;x <!-- U+0049: LATIN CAPITAL LETTER I -->
+        <td>&#x004A;x <!-- U+004A: LATIN CAPITAL LETTER J -->
+        <td>&#x004B;x <!-- U+004B: LATIN CAPITAL LETTER K -->
+        <td>&#x004C;x <!-- U+004C: LATIN CAPITAL LETTER L -->
+        <td>&#x004D;x <!-- U+004D: LATIN CAPITAL LETTER M -->
+        <td>&#x004E;x <!-- U+004E: LATIN CAPITAL LETTER N -->
+        <td>&#x004F;x <!-- U+004F: LATIN CAPITAL LETTER O -->
+        <td>&#x0050;x <!-- U+0050: LATIN CAPITAL LETTER P -->
+        <td>&#x0051;x <!-- U+0051: LATIN CAPITAL LETTER Q -->
+        <td>&#x0052;x <!-- U+0052: LATIN CAPITAL LETTER R -->
+        <td>&#x0053;x <!-- U+0053: LATIN CAPITAL LETTER S -->
+    <tr>
+        <td>&#x0054;x <!-- U+0054: LATIN CAPITAL LETTER T -->
+        <td>&#x0055;x <!-- U+0055: LATIN CAPITAL LETTER U -->
+        <td>&#x0056;x <!-- U+0056: LATIN CAPITAL LETTER V -->
+        <td>&#x0057;x <!-- U+0057: LATIN CAPITAL LETTER W -->
+        <td>&#x0058;x <!-- U+0058: LATIN CAPITAL LETTER X -->
+        <td>&#x0059;x <!-- U+0059: LATIN CAPITAL LETTER Y -->
+        <td>&#x005A;x <!-- U+005A: LATIN CAPITAL LETTER Z -->
+        <td>&#x005B;x <!-- U+005B: LEFT SQUARE BRACKET -->
+        <td>&#x005C;x <!-- U+005C: REVERSE SOLIDUS -->
+        <td>&#x005D;x <!-- U+005D: RIGHT SQUARE BRACKET -->
+        <td>&#x005E;x <!-- U+005E: CIRCUMFLEX ACCENT -->
+        <td>&#x005F;x <!-- U+005F: LOW LINE -->
+        <td>&#x0060;x <!-- U+0060: GRAVE ACCENT -->
+        <td>&#x0061;x <!-- U+0061: LATIN SMALL LETTER A -->
+        <td>&#x0062;x <!-- U+0062: LATIN SMALL LETTER B -->
+        <td>&#x0063;x <!-- U+0063: LATIN SMALL LETTER C -->
+        <td>&#x0064;x <!-- U+0064: LATIN SMALL LETTER D -->
+    <tr>
+        <td>&#x0065;x <!-- U+0065: LATIN SMALL LETTER E -->
+        <td>&#x0066;x <!-- U+0066: LATIN SMALL LETTER F -->
+        <td>&#x0067;x <!-- U+0067: LATIN SMALL LETTER G -->
+        <td>&#x0068;x <!-- U+0068: LATIN SMALL LETTER H -->
+        <td>&#x0069;x <!-- U+0069: LATIN SMALL LETTER I -->
+        <td>&#x006A;x <!-- U+006A: LATIN SMALL LETTER J -->
+        <td>&#x006B;x <!-- U+006B: LATIN SMALL LETTER K -->
+        <td>&#x006C;x <!-- U+006C: LATIN SMALL LETTER L -->
+        <td>&#x006D;x <!-- U+006D: LATIN SMALL LETTER M -->
+        <td>&#x006E;x <!-- U+006E: LATIN SMALL LETTER N -->
+        <td>&#x006F;x <!-- U+006F: LATIN SMALL LETTER O -->
+        <td>&#x0070;x <!-- U+0070: LATIN SMALL LETTER P -->
+        <td>&#x0071;x <!-- U+0071: LATIN SMALL LETTER Q -->
+        <td>&#x0072;x <!-- U+0072: LATIN SMALL LETTER R -->
+        <td>&#x0073;x <!-- U+0073: LATIN SMALL LETTER S -->
+        <td>&#x0074;x <!-- U+0074: LATIN SMALL LETTER T -->
+        <td>&#x0075;x <!-- U+0075: LATIN SMALL LETTER U -->
+    <tr>
+        <td>&#x0076;x <!-- U+0076: LATIN SMALL LETTER V -->
+        <td>&#x0077;x <!-- U+0077: LATIN SMALL LETTER W -->
+        <td>&#x0078;x <!-- U+0078: LATIN SMALL LETTER X -->
+        <td>&#x0079;x <!-- U+0079: LATIN SMALL LETTER Y -->
+        <td>&#x007A;x <!-- U+007A: LATIN SMALL LETTER Z -->
+        <td>&#x007B;x <!-- U+007B: LEFT CURLY BRACKET -->
+        <td>&#x007C;x <!-- U+007C: VERTICAL LINE -->
+        <td>&#x007D;x <!-- U+007D: RIGHT CURLY BRACKET -->
+        <td>&#x007E;x <!-- U+007E: TILDE -->
+        <td>&#x00A0;x <!-- U+00A0: NO-BREAK SPACE -->
+        <td>&#x00A1;x <!-- U+00A1: INVERTED EXCLAMATION MARK -->
+        <td>&#x00A2;x <!-- U+00A2: CENT SIGN -->
+        <td>&#x00A3;x <!-- U+00A3: POUND SIGN -->
+        <td>&#x00A4;x <!-- U+00A4: CURRENCY SIGN -->
+        <td>&#x00A5;x <!-- U+00A5: YEN SIGN -->
+        <td>&#x00A6;x <!-- U+00A6: BROKEN BAR -->
+        <td>&#x00A7;x <!-- U+00A7: SECTION SIGN -->
+    <tr>
+        <td>&#x00A8;x <!-- U+00A8: DIAERESIS -->
+        <td>&#x00A9;x <!-- U+00A9: COPYRIGHT SIGN -->
+        <td>&#x00AA;x <!-- U+00AA: FEMININE ORDINAL INDICATOR -->
+        <td>&#x00AB;x <!-- U+00AB: LEFT-POINTING DOUBLE ANGLE QUOTATION MARK -->
+        <td>&#x00AC;x <!-- U+00AC: NOT SIGN -->
+        <td>&#x00AD;x <!-- U+00AD: SOFT HYPHEN -->
+        <td>&#x00AE;x <!-- U+00AE: REGISTERED SIGN -->
+        <td>&#x00AF;x <!-- U+00AF: MACRON -->
+        <td>&#x00B0;x <!-- U+00B0: DEGREE SIGN -->
+        <td>&#x00B1;x <!-- U+00B1: PLUS-MINUS SIGN -->
+        <td>&#x00B2;x <!-- U+00B2: SUPERSCRIPT TWO -->
+        <td>&#x00B3;x <!-- U+00B3: SUPERSCRIPT THREE -->
+        <td>&#x00B4;x <!-- U+00B4: ACUTE ACCENT -->
+        <td>&#x00B5;x <!-- U+00B5: MICRO SIGN -->
+        <td>&#x00B6;x <!-- U+00B6: PILCROW SIGN -->
+        <td>&#x00B7;x <!-- U+00B7: MIDDLE DOT -->
+        <td>&#x00B8;x <!-- U+00B8: CEDILLA -->
+    <tr>
+        <td>&#x00B9;x <!-- U+00B9: SUPERSCRIPT ONE -->
+        <td>&#x00BA;x <!-- U+00BA: MASCULINE ORDINAL INDICATOR -->
+        <td>&#x00BB;x <!-- U+00BB: RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK -->
+        <td>&#x00BC;x <!-- U+00BC: VULGAR FRACTION ONE QUARTER -->
+        <td>&#x00BD;x <!-- U+00BD: VULGAR FRACTION ONE HALF -->
+        <td>&#x00BE;x <!-- U+00BE: VULGAR FRACTION THREE QUARTERS -->
+        <td>&#x00BF;x <!-- U+00BF: INVERTED QUESTION MARK -->
+        <td>&#x00C0;x <!-- U+00C0: LATIN CAPITAL LETTER A WITH GRAVE -->
+        <td>&#x00C1;x <!-- U+00C1: LATIN CAPITAL LETTER A WITH ACUTE -->
+        <td>&#x00C2;x <!-- U+00C2: LATIN CAPITAL LETTER A WITH CIRCUMFLEX -->
+        <td>&#x00C3;x <!-- U+00C3: LATIN CAPITAL LETTER A WITH TILDE -->
+        <td>&#x00C4;x <!-- U+00C4: LATIN CAPITAL LETTER A WITH DIAERESIS -->
+        <td>&#x00C5;x <!-- U+00C5: LATIN CAPITAL LETTER A WITH RING ABOVE -->
+        <td>&#x00C6;x <!-- U+00C6: LATIN CAPITAL LETTER AE -->
+        <td>&#x00C7;x <!-- U+00C7: LATIN CAPITAL LETTER C WITH CEDILLA -->
+        <td>&#x00C8;x <!-- U+00C8: LATIN CAPITAL LETTER E WITH GRAVE -->
+        <td>&#x00C9;x <!-- U+00C9: LATIN CAPITAL LETTER E WITH ACUTE -->
+    <tr>
+        <td>&#x00CA;x <!-- U+00CA: LATIN CAPITAL LETTER E WITH CIRCUMFLEX -->
+        <td>&#x00CB;x <!-- U+00CB: LATIN CAPITAL LETTER E WITH DIAERESIS -->
+        <td>&#x00CC;x <!-- U+00CC: LATIN CAPITAL LETTER I WITH GRAVE -->
+        <td>&#x00CD;x <!-- U+00CD: LATIN CAPITAL LETTER I WITH ACUTE -->
+        <td>&#x00CE;x <!-- U+00CE: LATIN CAPITAL LETTER I WITH CIRCUMFLEX -->
+        <td>&#x00CF;x <!-- U+00CF: LATIN CAPITAL LETTER I WITH DIAERESIS -->
+        <td>&#x00D0;x <!-- U+00D0: LATIN CAPITAL LETTER ETH -->
+        <td>&#x00D1;x <!-- U+00D1: LATIN CAPITAL LETTER N WITH TILDE -->
+        <td>&#x00D2;x <!-- U+00D2: LATIN CAPITAL LETTER O WITH GRAVE -->
+        <td>&#x00D3;x <!-- U+00D3: LATIN CAPITAL LETTER O WITH ACUTE -->
+        <td>&#x00D4;x <!-- U+00D4: LATIN CAPITAL LETTER O WITH CIRCUMFLEX -->
+        <td>&#x00D5;x <!-- U+00D5: LATIN CAPITAL LETTER O WITH TILDE -->
+        <td>&#x00D6;x <!-- U+00D6: LATIN CAPITAL LETTER O WITH DIAERESIS -->
+        <td>&#x00D7;x <!-- U+00D7: MULTIPLICATION SIGN -->
+        <td>&#x00D8;x <!-- U+00D8: LATIN CAPITAL LETTER O WITH STROKE -->
+        <td>&#x00D9;x <!-- U+00D9: LATIN CAPITAL LETTER U WITH GRAVE -->
+        <td>&#x00DA;x <!-- U+00DA: LATIN CAPITAL LETTER U WITH ACUTE -->
+    <tr>
+        <td>&#x00DB;x <!-- U+00DB: LATIN CAPITAL LETTER U WITH CIRCUMFLEX -->
+        <td>&#x00DC;x <!-- U+00DC: LATIN CAPITAL LETTER U WITH DIAERESIS -->
+        <td>&#x00DD;x <!-- U+00DD: LATIN CAPITAL LETTER Y WITH ACUTE -->
+        <td>&#x00DE;x <!-- U+00DE: LATIN CAPITAL LETTER THORN -->
+        <td>&#x00DF;x <!-- U+00DF: LATIN SMALL LETTER SHARP S -->
+        <td>&#x00E0;x <!-- U+00E0: LATIN SMALL LETTER A WITH GRAVE -->
+        <td>&#x00E1;x <!-- U+00E1: LATIN SMALL LETTER A WITH ACUTE -->
+        <td>&#x00E2;x <!-- U+00E2: LATIN SMALL LETTER A WITH CIRCUMFLEX -->
+        <td>&#x00E3;x <!-- U+00E3: LATIN SMALL LETTER A WITH TILDE -->
+        <td>&#x00E4;x <!-- U+00E4: LATIN SMALL LETTER A WITH DIAERESIS -->
+        <td>&#x00E5;x <!-- U+00E5: LATIN SMALL LETTER A WITH RING ABOVE -->
+        <td>&#x00E6;x <!-- U+00E6: LATIN SMALL LETTER AE -->
+        <td>&#x00E7;x <!-- U+00E7: LATIN SMALL LETTER C WITH CEDILLA -->
+        <td>&#x00E8;x <!-- U+00E8: LATIN SMALL LETTER E WITH GRAVE -->
+        <td>&#x00E9;x <!-- U+00E9: LATIN SMALL LETTER E WITH ACUTE -->
+        <td>&#x00EA;x <!-- U+00EA: LATIN SMALL LETTER E WITH CIRCUMFLEX -->
+        <td>&#x00EB;x <!-- U+00EB: LATIN SMALL LETTER E WITH DIAERESIS -->
+    <tr>
+        <td>&#x00EC;x <!-- U+00EC: LATIN SMALL LETTER I WITH GRAVE -->
+        <td>&#x00ED;x <!-- U+00ED: LATIN SMALL LETTER I WITH ACUTE -->
+        <td>&#x00EE;x <!-- U+00EE: LATIN SMALL LETTER I WITH CIRCUMFLEX -->
+        <td>&#x00EF;x <!-- U+00EF: LATIN SMALL LETTER I WITH DIAERESIS -->
+        <td>&#x00F0;x <!-- U+00F0: LATIN SMALL LETTER ETH -->
+        <td>&#x00F1;x <!-- U+00F1: LATIN SMALL LETTER N WITH TILDE -->
+        <td>&#x00F2;x <!-- U+00F2: LATIN SMALL LETTER O WITH GRAVE -->
+        <td>&#x00F3;x <!-- U+00F3: LATIN SMALL LETTER O WITH ACUTE -->
+        <td>&#x00F4;x <!-- U+00F4: LATIN SMALL LETTER O WITH CIRCUMFLEX -->
+        <td>&#x00F5;x <!-- U+00F5: LATIN SMALL LETTER O WITH TILDE -->
+        <td>&#x00F6;x <!-- U+00F6: LATIN SMALL LETTER O WITH DIAERESIS -->
+        <td>&#x00F7;x <!-- U+00F7: DIVISION SIGN -->
+        <td>&#x00F8;x <!-- U+00F8: LATIN SMALL LETTER O WITH STROKE -->
+        <td>&#x00F9;x <!-- U+00F9: LATIN SMALL LETTER U WITH GRAVE -->
+        <td>&#x00FA;x <!-- U+00FA: LATIN SMALL LETTER U WITH ACUTE -->
+        <td>&#x00FB;x <!-- U+00FB: LATIN SMALL LETTER U WITH CIRCUMFLEX -->
+        <td>&#x00FC;x <!-- U+00FC: LATIN SMALL LETTER U WITH DIAERESIS -->
+    <tr>
+        <td>&#x00FD;x <!-- U+00FD: LATIN SMALL LETTER Y WITH ACUTE -->
+        <td>&#x00FE;x <!-- U+00FE: LATIN SMALL LETTER THORN -->
+        <td>&#x00FF;x <!-- U+00FF: LATIN SMALL LETTER Y WITH DIAERESIS -->
+        <td>&#x0131;x <!-- U+0131: LATIN SMALL LETTER DOTLESS I -->
+        <td>&#x0152;x <!-- U+0152: LATIN CAPITAL LIGATURE OE -->
+        <td>&#x0153;x <!-- U+0153: LATIN SMALL LIGATURE OE -->
+        <td>&#x0178;x <!-- U+0178: LATIN CAPITAL LETTER Y WITH DIAERESIS -->
+        <td>&#x0192;x <!-- U+0192: LATIN SMALL LETTER F WITH HOOK -->
+        <td>&#x02C6;x <!-- U+02C6: MODIFIER LETTER CIRCUMFLEX ACCENT -->
+        <td>&#x02C7;x <!-- U+02C7: CARON -->
+        <td>&#x02C9;x <!-- U+02C9: MODIFIER LETTER MACRON -->
+        <td>&#x02D8;x <!-- U+02D8: BREVE -->
+        <td>&#x02D9;x <!-- U+02D9: DOT ABOVE -->
+        <td>&#x02DA;x <!-- U+02DA: RING ABOVE -->
+        <td>&#x02DB;x <!-- U+02DB: OGONEK -->
+        <td>&#x02DC;x <!-- U+02DC: SMALL TILDE -->
+        <td>&#x02DD;x <!-- U+02DD: DOUBLE ACUTE ACCENT -->
+    <tr>
+        <td>&#x0394;x <!-- U+0394: GREEK CAPITAL LETTER DELTA -->
+        <td>&#x03A5;x <!-- U+03A5: GREEK CAPITAL LETTER UPSILON -->
+        <td>&#x03A7;x <!-- U+03A7: GREEK CAPITAL LETTER CHI -->
+        <td>&#x03A9;x <!-- U+03A9: GREEK CAPITAL LETTER OMEGA -->
+        <td>&#x03BC;x <!-- U+03BC: GREEK SMALL LETTER MU -->
+        <td>&#x03C0;x <!-- U+03C0: GREEK SMALL LETTER PI -->
+        <td>&#x2002;x <!-- U+2002: EN SPACE -->
+        <td>&#x2003;x <!-- U+2003: EM SPACE -->
+        <td>&#x2004;x <!-- U+2004: THREE-PER-EM SPACE -->
+        <td>&#x2005;x <!-- U+2005: FOUR-PER-EM SPACE -->
+        <td>&#x2006;x <!-- U+2006: SIX-PER-EM SPACE -->
+        <td>&#x2009;x <!-- U+2009: THIN SPACE -->
+        <td>&#x200A;x <!-- U+200A: HAIR SPACE -->
+        <td>&#x200B;x <!-- U+200B: ZERO WIDTH SPACE -->
+        <td>&#x200C;x <!-- U+200C: ZERO WIDTH NON-JOINER -->
+        <td>&#x200D;x <!-- U+200D: ZERO WIDTH JOINER -->
+        <td>&#x2010;x <!-- U+2010: HYPHEN -->
+    <tr>
+        <td>&#x2013;x <!-- U+2013: EN DASH -->
+        <td>&#x2014;x <!-- U+2014: EM DASH -->
+        <td>&#x2018;x <!-- U+2018: LEFT SINGLE QUOTATION MARK -->
+        <td>&#x2019;x <!-- U+2019: RIGHT SINGLE QUOTATION MARK -->
+        <td>&#x201A;x <!-- U+201A: SINGLE LOW-9 QUOTATION MARK -->
+        <td>&#x201C;x <!-- U+201C: LEFT DOUBLE QUOTATION MARK -->
+        <td>&#x201D;x <!-- U+201D: RIGHT DOUBLE QUOTATION MARK -->
+        <td>&#x201E;x <!-- U+201E: DOUBLE LOW-9 QUOTATION MARK -->
+        <td>&#x2020;x <!-- U+2020: DAGGER -->
+        <td>&#x2021;x <!-- U+2021: DOUBLE DAGGER -->
+        <td>&#x2022;x <!-- U+2022: BULLET -->
+        <td>&#x2026;x <!-- U+2026: HORIZONTAL ELLIPSIS -->
+        <td>&#x2030;x <!-- U+2030: PER MILLE SIGN -->
+        <td>&#x2039;x <!-- U+2039: SINGLE LEFT-POINTING ANGLE QUOTATION MARK -->
+        <td>&#x203A;x <!-- U+203A: SINGLE RIGHT-POINTING ANGLE QUOTATION MARK -->
+        <td>&#x2044;x <!-- U+2044: FRACTION SLASH -->
+        <td>&#x2122;x <!-- U+2122: TRADE MARK SIGN -->
+    <tr>
+        <td>&#x2126;x <!-- U+2126: OHM SIGN -->
+        <td>&#x2202;x <!-- U+2202: PARTIAL DIFFERENTIAL -->
+        <td>&#x2206;x <!-- U+2206: INCREMENT -->
+        <td>&#x220F;x <!-- U+220F: N-ARY PRODUCT -->
+        <td>&#x2211;x <!-- U+2211: N-ARY SUMMATION -->
+        <td>&#x2212;x <!-- U+2212: MINUS SIGN -->
+        <td>&#x2219;x <!-- U+2219: BULLET OPERATOR -->
+        <td>&#x221A;x <!-- U+221A: SQUARE ROOT -->
+        <td>&#x221E;x <!-- U+221E: INFINITY -->
+        <td>&#x222B;x <!-- U+222B: INTEGRAL -->
+        <td>&#x2248;x <!-- U+2248: ALMOST EQUAL TO -->
+        <td>&#x2260;x <!-- U+2260: NOT EQUAL TO -->
+        <td>&#x2264;x <!-- U+2264: LESS-THAN OR EQUAL TO -->
+        <td>&#x2265;x <!-- U+2265: GREATER-THAN OR EQUAL TO -->
+        <td>&#x22F2;x <!-- U+22F2: ELEMENT OF WITH LONG HORIZONTAL STROKE -->
+        <td>&#x25CA;x <!-- U+25CA: LOZENGE -->
+        <td>&#x3000;x <!-- U+3000: IDEOGRAPHIC SPACE -->
+    <tr>
+        <td>&#x3007;x <!-- U+3007: IDEOGRAPHIC NUMBER ZERO -->
+        <td>&#x4E00;x <!-- U+4E00: CJK UNIFIED IDEOGRAPH-4E00 -->
+        <td>&#x4E03;x <!-- U+4E03: CJK UNIFIED IDEOGRAPH-4E03 -->
+        <td>&#x4E09;x <!-- U+4E09: CJK UNIFIED IDEOGRAPH-4E09 -->
+        <td>&#x4E5D;x <!-- U+4E5D: CJK UNIFIED IDEOGRAPH-4E5D -->
+        <td>&#x4E8C;x <!-- U+4E8C: CJK UNIFIED IDEOGRAPH-4E8C -->
+        <td>&#x4E94;x <!-- U+4E94: CJK UNIFIED IDEOGRAPH-4E94 -->
+        <td>&#x516B;x <!-- U+516B: CJK UNIFIED IDEOGRAPH-516B -->
+        <td>&#x516D;x <!-- U+516D: CJK UNIFIED IDEOGRAPH-516D -->
+        <td>&#x5341;x <!-- U+5341: CJK UNIFIED IDEOGRAPH-5341 -->
+        <td>&#x56D7;x <!-- U+56D7: CJK UNIFIED IDEOGRAPH-56D7 -->
+        <td>&#x56DB;x <!-- U+56DB: CJK UNIFIED IDEOGRAPH-56DB -->
+        <td>&#x571F;x <!-- U+571F: CJK UNIFIED IDEOGRAPH-571F -->
+        <td>&#x6728;x <!-- U+6728: CJK UNIFIED IDEOGRAPH-6728 -->
+        <td>&#x6A2A;x <!-- U+6A2A: CJK UNIFIED IDEOGRAPH-6A2A -->
+        <td>&#x6C34;x <!-- U+6C34: CJK UNIFIED IDEOGRAPH-6C34 -->
+        <td>&#x706B;x <!-- U+706B: CJK UNIFIED IDEOGRAPH-706B -->
+    <tr>
+        <td>&#x7EB5;x <!-- U+7EB5: CJK UNIFIED IDEOGRAPH-7EB5 -->
+        <td>&#x91D1;x <!-- U+91D1: CJK UNIFIED IDEOGRAPH-91D1 -->
+        <td>&#xF000;x <!-- U+F000 -->
+        <td>&#xF001;x <!-- U+F001 -->
+        <td>&#xF002;x <!-- U+F002 -->
+        <td>&#xFEFF;x <!-- U+FEFF: ZERO WIDTH NO-BREAK SPACE -->
+</table>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/ahem-ref-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/ahem-ref-expected.html
new file mode 100644 (file)
index 0000000..51767c2
--- /dev/null
@@ -0,0 +1,316 @@
+<!doctype html>
+<title>Ahem checker</title>
+<style>
+* {
+  padding: 0;
+  margin: 0;
+  border: none;
+}
+td {
+  width: 34px;
+}
+table {
+  font-size: 15px;
+  line-height: 1;
+  border-collapse: separate;
+  border-spacing: 1px;
+  table-layout: fixed;
+}
+</style>
+<table>
+    <tr>
+        <td>&#x0020;x <!-- U+0020: SPACE -->
+        <td>&#x0021;x <!-- U+0021: EXCLAMATION MARK -->
+        <td>&#x0022;x <!-- U+0022: QUOTATION MARK -->
+        <td>&#x0023;x <!-- U+0023: NUMBER SIGN -->
+        <td>&#x0024;x <!-- U+0024: DOLLAR SIGN -->
+        <td>&#x0025;x <!-- U+0025: PERCENT SIGN -->
+        <td>&#x0026;x <!-- U+0026: AMPERSAND -->
+        <td>&#x0028;x <!-- U+0028: LEFT PARENTHESIS -->
+        <td>&#x0029;x <!-- U+0029: RIGHT PARENTHESIS -->
+        <td>&#x002A;x <!-- U+002A: ASTERISK -->
+        <td>&#x002B;x <!-- U+002B: PLUS SIGN -->
+        <td>&#x002C;x <!-- U+002C: COMMA -->
+        <td>&#x002D;x <!-- U+002D: HYPHEN-MINUS -->
+        <td>&#x002E;x <!-- U+002E: FULL STOP -->
+        <td>&#x002F;x <!-- U+002F: SOLIDUS -->
+        <td>&#x0030;x <!-- U+0030: DIGIT ZERO -->
+        <td>&#x0031;x <!-- U+0031: DIGIT ONE -->
+    <tr>
+        <td>&#x0032;x <!-- U+0032: DIGIT TWO -->
+        <td>&#x0033;x <!-- U+0033: DIGIT THREE -->
+        <td>&#x0034;x <!-- U+0034: DIGIT FOUR -->
+        <td>&#x0035;x <!-- U+0035: DIGIT FIVE -->
+        <td>&#x0036;x <!-- U+0036: DIGIT SIX -->
+        <td>&#x0037;x <!-- U+0037: DIGIT SEVEN -->
+        <td>&#x0038;x <!-- U+0038: DIGIT EIGHT -->
+        <td>&#x0039;x <!-- U+0039: DIGIT NINE -->
+        <td>&#x003A;x <!-- U+003A: COLON -->
+        <td>&#x003B;x <!-- U+003B: SEMICOLON -->
+        <td>&#x003C;x <!-- U+003C: LESS-THAN SIGN -->
+        <td>&#x003D;x <!-- U+003D: EQUALS SIGN -->
+        <td>&#x003E;x <!-- U+003E: GREATER-THAN SIGN -->
+        <td>&#x003F;x <!-- U+003F: QUESTION MARK -->
+        <td>&#x0040;x <!-- U+0040: COMMERCIAL AT -->
+        <td>&#x0041;x <!-- U+0041: LATIN CAPITAL LETTER A -->
+        <td>&#x0042;x <!-- U+0042: LATIN CAPITAL LETTER B -->
+    <tr>
+        <td>&#x0043;x <!-- U+0043: LATIN CAPITAL LETTER C -->
+        <td>&#x0044;x <!-- U+0044: LATIN CAPITAL LETTER D -->
+        <td>&#x0045;x <!-- U+0045: LATIN CAPITAL LETTER E -->
+        <td>&#x0046;x <!-- U+0046: LATIN CAPITAL LETTER F -->
+        <td>&#x0047;x <!-- U+0047: LATIN CAPITAL LETTER G -->
+        <td>&#x0048;x <!-- U+0048: LATIN CAPITAL LETTER H -->
+        <td>&#x0049;x <!-- U+0049: LATIN CAPITAL LETTER I -->
+        <td>&#x004A;x <!-- U+004A: LATIN CAPITAL LETTER J -->
+        <td>&#x004B;x <!-- U+004B: LATIN CAPITAL LETTER K -->
+        <td>&#x004C;x <!-- U+004C: LATIN CAPITAL LETTER L -->
+        <td>&#x004D;x <!-- U+004D: LATIN CAPITAL LETTER M -->
+        <td>&#x004E;x <!-- U+004E: LATIN CAPITAL LETTER N -->
+        <td>&#x004F;x <!-- U+004F: LATIN CAPITAL LETTER O -->
+        <td>&#x0050;x <!-- U+0050: LATIN CAPITAL LETTER P -->
+        <td>&#x0051;x <!-- U+0051: LATIN CAPITAL LETTER Q -->
+        <td>&#x0052;x <!-- U+0052: LATIN CAPITAL LETTER R -->
+        <td>&#x0053;x <!-- U+0053: LATIN CAPITAL LETTER S -->
+    <tr>
+        <td>&#x0054;x <!-- U+0054: LATIN CAPITAL LETTER T -->
+        <td>&#x0055;x <!-- U+0055: LATIN CAPITAL LETTER U -->
+        <td>&#x0056;x <!-- U+0056: LATIN CAPITAL LETTER V -->
+        <td>&#x0057;x <!-- U+0057: LATIN CAPITAL LETTER W -->
+        <td>&#x0058;x <!-- U+0058: LATIN CAPITAL LETTER X -->
+        <td>&#x0059;x <!-- U+0059: LATIN CAPITAL LETTER Y -->
+        <td>&#x005A;x <!-- U+005A: LATIN CAPITAL LETTER Z -->
+        <td>&#x005B;x <!-- U+005B: LEFT SQUARE BRACKET -->
+        <td>&#x005C;x <!-- U+005C: REVERSE SOLIDUS -->
+        <td>&#x005D;x <!-- U+005D: RIGHT SQUARE BRACKET -->
+        <td>&#x005E;x <!-- U+005E: CIRCUMFLEX ACCENT -->
+        <td>&#x005F;x <!-- U+005F: LOW LINE -->
+        <td>&#x0060;x <!-- U+0060: GRAVE ACCENT -->
+        <td>&#x0061;x <!-- U+0061: LATIN SMALL LETTER A -->
+        <td>&#x0062;x <!-- U+0062: LATIN SMALL LETTER B -->
+        <td>&#x0063;x <!-- U+0063: LATIN SMALL LETTER C -->
+        <td>&#x0064;x <!-- U+0064: LATIN SMALL LETTER D -->
+    <tr>
+        <td>&#x0065;x <!-- U+0065: LATIN SMALL LETTER E -->
+        <td>&#x0066;x <!-- U+0066: LATIN SMALL LETTER F -->
+        <td>&#x0067;x <!-- U+0067: LATIN SMALL LETTER G -->
+        <td>&#x0068;x <!-- U+0068: LATIN SMALL LETTER H -->
+        <td>&#x0069;x <!-- U+0069: LATIN SMALL LETTER I -->
+        <td>&#x006A;x <!-- U+006A: LATIN SMALL LETTER J -->
+        <td>&#x006B;x <!-- U+006B: LATIN SMALL LETTER K -->
+        <td>&#x006C;x <!-- U+006C: LATIN SMALL LETTER L -->
+        <td>&#x006D;x <!-- U+006D: LATIN SMALL LETTER M -->
+        <td>&#x006E;x <!-- U+006E: LATIN SMALL LETTER N -->
+        <td>&#x006F;x <!-- U+006F: LATIN SMALL LETTER O -->
+        <td>&#x0070;x <!-- U+0070: LATIN SMALL LETTER P -->
+        <td>&#x0071;x <!-- U+0071: LATIN SMALL LETTER Q -->
+        <td>&#x0072;x <!-- U+0072: LATIN SMALL LETTER R -->
+        <td>&#x0073;x <!-- U+0073: LATIN SMALL LETTER S -->
+        <td>&#x0074;x <!-- U+0074: LATIN SMALL LETTER T -->
+        <td>&#x0075;x <!-- U+0075: LATIN SMALL LETTER U -->
+    <tr>
+        <td>&#x0076;x <!-- U+0076: LATIN SMALL LETTER V -->
+        <td>&#x0077;x <!-- U+0077: LATIN SMALL LETTER W -->
+        <td>&#x0078;x <!-- U+0078: LATIN SMALL LETTER X -->
+        <td>&#x0079;x <!-- U+0079: LATIN SMALL LETTER Y -->
+        <td>&#x007A;x <!-- U+007A: LATIN SMALL LETTER Z -->
+        <td>&#x007B;x <!-- U+007B: LEFT CURLY BRACKET -->
+        <td>&#x007C;x <!-- U+007C: VERTICAL LINE -->
+        <td>&#x007D;x <!-- U+007D: RIGHT CURLY BRACKET -->
+        <td>&#x007E;x <!-- U+007E: TILDE -->
+        <td>&#x00A0;x <!-- U+00A0: NO-BREAK SPACE -->
+        <td>&#x00A1;x <!-- U+00A1: INVERTED EXCLAMATION MARK -->
+        <td>&#x00A2;x <!-- U+00A2: CENT SIGN -->
+        <td>&#x00A3;x <!-- U+00A3: POUND SIGN -->
+        <td>&#x00A4;x <!-- U+00A4: CURRENCY SIGN -->
+        <td>&#x00A5;x <!-- U+00A5: YEN SIGN -->
+        <td>&#x00A6;x <!-- U+00A6: BROKEN BAR -->
+        <td>&#x00A7;x <!-- U+00A7: SECTION SIGN -->
+    <tr>
+        <td>&#x00A8;x <!-- U+00A8: DIAERESIS -->
+        <td>&#x00A9;x <!-- U+00A9: COPYRIGHT SIGN -->
+        <td>&#x00AA;x <!-- U+00AA: FEMININE ORDINAL INDICATOR -->
+        <td>&#x00AB;x <!-- U+00AB: LEFT-POINTING DOUBLE ANGLE QUOTATION MARK -->
+        <td>&#x00AC;x <!-- U+00AC: NOT SIGN -->
+        <td>&#x00AD;x <!-- U+00AD: SOFT HYPHEN -->
+        <td>&#x00AE;x <!-- U+00AE: REGISTERED SIGN -->
+        <td>&#x00AF;x <!-- U+00AF: MACRON -->
+        <td>&#x00B0;x <!-- U+00B0: DEGREE SIGN -->
+        <td>&#x00B1;x <!-- U+00B1: PLUS-MINUS SIGN -->
+        <td>&#x00B2;x <!-- U+00B2: SUPERSCRIPT TWO -->
+        <td>&#x00B3;x <!-- U+00B3: SUPERSCRIPT THREE -->
+        <td>&#x00B4;x <!-- U+00B4: ACUTE ACCENT -->
+        <td>&#x00B5;x <!-- U+00B5: MICRO SIGN -->
+        <td>&#x00B6;x <!-- U+00B6: PILCROW SIGN -->
+        <td>&#x00B7;x <!-- U+00B7: MIDDLE DOT -->
+        <td>&#x00B8;x <!-- U+00B8: CEDILLA -->
+    <tr>
+        <td>&#x00B9;x <!-- U+00B9: SUPERSCRIPT ONE -->
+        <td>&#x00BA;x <!-- U+00BA: MASCULINE ORDINAL INDICATOR -->
+        <td>&#x00BB;x <!-- U+00BB: RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK -->
+        <td>&#x00BC;x <!-- U+00BC: VULGAR FRACTION ONE QUARTER -->
+        <td>&#x00BD;x <!-- U+00BD: VULGAR FRACTION ONE HALF -->
+        <td>&#x00BE;x <!-- U+00BE: VULGAR FRACTION THREE QUARTERS -->
+        <td>&#x00BF;x <!-- U+00BF: INVERTED QUESTION MARK -->
+        <td>&#x00C0;x <!-- U+00C0: LATIN CAPITAL LETTER A WITH GRAVE -->
+        <td>&#x00C1;x <!-- U+00C1: LATIN CAPITAL LETTER A WITH ACUTE -->
+        <td>&#x00C2;x <!-- U+00C2: LATIN CAPITAL LETTER A WITH CIRCUMFLEX -->
+        <td>&#x00C3;x <!-- U+00C3: LATIN CAPITAL LETTER A WITH TILDE -->
+        <td>&#x00C4;x <!-- U+00C4: LATIN CAPITAL LETTER A WITH DIAERESIS -->
+        <td>&#x00C5;x <!-- U+00C5: LATIN CAPITAL LETTER A WITH RING ABOVE -->
+        <td>&#x00C6;x <!-- U+00C6: LATIN CAPITAL LETTER AE -->
+        <td>&#x00C7;x <!-- U+00C7: LATIN CAPITAL LETTER C WITH CEDILLA -->
+        <td>&#x00C8;x <!-- U+00C8: LATIN CAPITAL LETTER E WITH GRAVE -->
+        <td>&#x00C9;x <!-- U+00C9: LATIN CAPITAL LETTER E WITH ACUTE -->
+    <tr>
+        <td>&#x00CA;x <!-- U+00CA: LATIN CAPITAL LETTER E WITH CIRCUMFLEX -->
+        <td>&#x00CB;x <!-- U+00CB: LATIN CAPITAL LETTER E WITH DIAERESIS -->
+        <td>&#x00CC;x <!-- U+00CC: LATIN CAPITAL LETTER I WITH GRAVE -->
+        <td>&#x00CD;x <!-- U+00CD: LATIN CAPITAL LETTER I WITH ACUTE -->
+        <td>&#x00CE;x <!-- U+00CE: LATIN CAPITAL LETTER I WITH CIRCUMFLEX -->
+        <td>&#x00CF;x <!-- U+00CF: LATIN CAPITAL LETTER I WITH DIAERESIS -->
+        <td>&#x00D0;x <!-- U+00D0: LATIN CAPITAL LETTER ETH -->
+        <td>&#x00D1;x <!-- U+00D1: LATIN CAPITAL LETTER N WITH TILDE -->
+        <td>&#x00D2;x <!-- U+00D2: LATIN CAPITAL LETTER O WITH GRAVE -->
+        <td>&#x00D3;x <!-- U+00D3: LATIN CAPITAL LETTER O WITH ACUTE -->
+        <td>&#x00D4;x <!-- U+00D4: LATIN CAPITAL LETTER O WITH CIRCUMFLEX -->
+        <td>&#x00D5;x <!-- U+00D5: LATIN CAPITAL LETTER O WITH TILDE -->
+        <td>&#x00D6;x <!-- U+00D6: LATIN CAPITAL LETTER O WITH DIAERESIS -->
+        <td>&#x00D7;x <!-- U+00D7: MULTIPLICATION SIGN -->
+        <td>&#x00D8;x <!-- U+00D8: LATIN CAPITAL LETTER O WITH STROKE -->
+        <td>&#x00D9;x <!-- U+00D9: LATIN CAPITAL LETTER U WITH GRAVE -->
+        <td>&#x00DA;x <!-- U+00DA: LATIN CAPITAL LETTER U WITH ACUTE -->
+    <tr>
+        <td>&#x00DB;x <!-- U+00DB: LATIN CAPITAL LETTER U WITH CIRCUMFLEX -->
+        <td>&#x00DC;x <!-- U+00DC: LATIN CAPITAL LETTER U WITH DIAERESIS -->
+        <td>&#x00DD;x <!-- U+00DD: LATIN CAPITAL LETTER Y WITH ACUTE -->
+        <td>&#x00DE;x <!-- U+00DE: LATIN CAPITAL LETTER THORN -->
+        <td>&#x00DF;x <!-- U+00DF: LATIN SMALL LETTER SHARP S -->
+        <td>&#x00E0;x <!-- U+00E0: LATIN SMALL LETTER A WITH GRAVE -->
+        <td>&#x00E1;x <!-- U+00E1: LATIN SMALL LETTER A WITH ACUTE -->
+        <td>&#x00E2;x <!-- U+00E2: LATIN SMALL LETTER A WITH CIRCUMFLEX -->
+        <td>&#x00E3;x <!-- U+00E3: LATIN SMALL LETTER A WITH TILDE -->
+        <td>&#x00E4;x <!-- U+00E4: LATIN SMALL LETTER A WITH DIAERESIS -->
+        <td>&#x00E5;x <!-- U+00E5: LATIN SMALL LETTER A WITH RING ABOVE -->
+        <td>&#x00E6;x <!-- U+00E6: LATIN SMALL LETTER AE -->
+        <td>&#x00E7;x <!-- U+00E7: LATIN SMALL LETTER C WITH CEDILLA -->
+        <td>&#x00E8;x <!-- U+00E8: LATIN SMALL LETTER E WITH GRAVE -->
+        <td>&#x00E9;x <!-- U+00E9: LATIN SMALL LETTER E WITH ACUTE -->
+        <td>&#x00EA;x <!-- U+00EA: LATIN SMALL LETTER E WITH CIRCUMFLEX -->
+        <td>&#x00EB;x <!-- U+00EB: LATIN SMALL LETTER E WITH DIAERESIS -->
+    <tr>
+        <td>&#x00EC;x <!-- U+00EC: LATIN SMALL LETTER I WITH GRAVE -->
+        <td>&#x00ED;x <!-- U+00ED: LATIN SMALL LETTER I WITH ACUTE -->
+        <td>&#x00EE;x <!-- U+00EE: LATIN SMALL LETTER I WITH CIRCUMFLEX -->
+        <td>&#x00EF;x <!-- U+00EF: LATIN SMALL LETTER I WITH DIAERESIS -->
+        <td>&#x00F0;x <!-- U+00F0: LATIN SMALL LETTER ETH -->
+        <td>&#x00F1;x <!-- U+00F1: LATIN SMALL LETTER N WITH TILDE -->
+        <td>&#x00F2;x <!-- U+00F2: LATIN SMALL LETTER O WITH GRAVE -->
+        <td>&#x00F3;x <!-- U+00F3: LATIN SMALL LETTER O WITH ACUTE -->
+        <td>&#x00F4;x <!-- U+00F4: LATIN SMALL LETTER O WITH CIRCUMFLEX -->
+        <td>&#x00F5;x <!-- U+00F5: LATIN SMALL LETTER O WITH TILDE -->
+        <td>&#x00F6;x <!-- U+00F6: LATIN SMALL LETTER O WITH DIAERESIS -->
+        <td>&#x00F7;x <!-- U+00F7: DIVISION SIGN -->
+        <td>&#x00F8;x <!-- U+00F8: LATIN SMALL LETTER O WITH STROKE -->
+        <td>&#x00F9;x <!-- U+00F9: LATIN SMALL LETTER U WITH GRAVE -->
+        <td>&#x00FA;x <!-- U+00FA: LATIN SMALL LETTER U WITH ACUTE -->
+        <td>&#x00FB;x <!-- U+00FB: LATIN SMALL LETTER U WITH CIRCUMFLEX -->
+        <td>&#x00FC;x <!-- U+00FC: LATIN SMALL LETTER U WITH DIAERESIS -->
+    <tr>
+        <td>&#x00FD;x <!-- U+00FD: LATIN SMALL LETTER Y WITH ACUTE -->
+        <td>&#x00FE;x <!-- U+00FE: LATIN SMALL LETTER THORN -->
+        <td>&#x00FF;x <!-- U+00FF: LATIN SMALL LETTER Y WITH DIAERESIS -->
+        <td>&#x0131;x <!-- U+0131: LATIN SMALL LETTER DOTLESS I -->
+        <td>&#x0152;x <!-- U+0152: LATIN CAPITAL LIGATURE OE -->
+        <td>&#x0153;x <!-- U+0153: LATIN SMALL LIGATURE OE -->
+        <td>&#x0178;x <!-- U+0178: LATIN CAPITAL LETTER Y WITH DIAERESIS -->
+        <td>&#x0192;x <!-- U+0192: LATIN SMALL LETTER F WITH HOOK -->
+        <td>&#x02C6;x <!-- U+02C6: MODIFIER LETTER CIRCUMFLEX ACCENT -->
+        <td>&#x02C7;x <!-- U+02C7: CARON -->
+        <td>&#x02C9;x <!-- U+02C9: MODIFIER LETTER MACRON -->
+        <td>&#x02D8;x <!-- U+02D8: BREVE -->
+        <td>&#x02D9;x <!-- U+02D9: DOT ABOVE -->
+        <td>&#x02DA;x <!-- U+02DA: RING ABOVE -->
+        <td>&#x02DB;x <!-- U+02DB: OGONEK -->
+        <td>&#x02DC;x <!-- U+02DC: SMALL TILDE -->
+        <td>&#x02DD;x <!-- U+02DD: DOUBLE ACUTE ACCENT -->
+    <tr>
+        <td>&#x0394;x <!-- U+0394: GREEK CAPITAL LETTER DELTA -->
+        <td>&#x03A5;x <!-- U+03A5: GREEK CAPITAL LETTER UPSILON -->
+        <td>&#x03A7;x <!-- U+03A7: GREEK CAPITAL LETTER CHI -->
+        <td>&#x03A9;x <!-- U+03A9: GREEK CAPITAL LETTER OMEGA -->
+        <td>&#x03BC;x <!-- U+03BC: GREEK SMALL LETTER MU -->
+        <td>&#x03C0;x <!-- U+03C0: GREEK SMALL LETTER PI -->
+        <td>&#x2002;x <!-- U+2002: EN SPACE -->
+        <td>&#x2003;x <!-- U+2003: EM SPACE -->
+        <td>&#x2004;x <!-- U+2004: THREE-PER-EM SPACE -->
+        <td>&#x2005;x <!-- U+2005: FOUR-PER-EM SPACE -->
+        <td>&#x2006;x <!-- U+2006: SIX-PER-EM SPACE -->
+        <td>&#x2009;x <!-- U+2009: THIN SPACE -->
+        <td>&#x200A;x <!-- U+200A: HAIR SPACE -->
+        <td>&#x200B;x <!-- U+200B: ZERO WIDTH SPACE -->
+        <td>&#x200C;x <!-- U+200C: ZERO WIDTH NON-JOINER -->
+        <td>&#x200D;x <!-- U+200D: ZERO WIDTH JOINER -->
+        <td>&#x2010;x <!-- U+2010: HYPHEN -->
+    <tr>
+        <td>&#x2013;x <!-- U+2013: EN DASH -->
+        <td>&#x2014;x <!-- U+2014: EM DASH -->
+        <td>&#x2018;x <!-- U+2018: LEFT SINGLE QUOTATION MARK -->
+        <td>&#x2019;x <!-- U+2019: RIGHT SINGLE QUOTATION MARK -->
+        <td>&#x201A;x <!-- U+201A: SINGLE LOW-9 QUOTATION MARK -->
+        <td>&#x201C;x <!-- U+201C: LEFT DOUBLE QUOTATION MARK -->
+        <td>&#x201D;x <!-- U+201D: RIGHT DOUBLE QUOTATION MARK -->
+        <td>&#x201E;x <!-- U+201E: DOUBLE LOW-9 QUOTATION MARK -->
+        <td>&#x2020;x <!-- U+2020: DAGGER -->
+        <td>&#x2021;x <!-- U+2021: DOUBLE DAGGER -->
+        <td>&#x2022;x <!-- U+2022: BULLET -->
+        <td>&#x2026;x <!-- U+2026: HORIZONTAL ELLIPSIS -->
+        <td>&#x2030;x <!-- U+2030: PER MILLE SIGN -->
+        <td>&#x2039;x <!-- U+2039: SINGLE LEFT-POINTING ANGLE QUOTATION MARK -->
+        <td>&#x203A;x <!-- U+203A: SINGLE RIGHT-POINTING ANGLE QUOTATION MARK -->
+        <td>&#x2044;x <!-- U+2044: FRACTION SLASH -->
+        <td>&#x2122;x <!-- U+2122: TRADE MARK SIGN -->
+    <tr>
+        <td>&#x2126;x <!-- U+2126: OHM SIGN -->
+        <td>&#x2202;x <!-- U+2202: PARTIAL DIFFERENTIAL -->
+        <td>&#x2206;x <!-- U+2206: INCREMENT -->
+        <td>&#x220F;x <!-- U+220F: N-ARY PRODUCT -->
+        <td>&#x2211;x <!-- U+2211: N-ARY SUMMATION -->
+        <td>&#x2212;x <!-- U+2212: MINUS SIGN -->
+        <td>&#x2219;x <!-- U+2219: BULLET OPERATOR -->
+        <td>&#x221A;x <!-- U+221A: SQUARE ROOT -->
+        <td>&#x221E;x <!-- U+221E: INFINITY -->
+        <td>&#x222B;x <!-- U+222B: INTEGRAL -->
+        <td>&#x2248;x <!-- U+2248: ALMOST EQUAL TO -->
+        <td>&#x2260;x <!-- U+2260: NOT EQUAL TO -->
+        <td>&#x2264;x <!-- U+2264: LESS-THAN OR EQUAL TO -->
+        <td>&#x2265;x <!-- U+2265: GREATER-THAN OR EQUAL TO -->
+        <td>&#x22F2;x <!-- U+22F2: ELEMENT OF WITH LONG HORIZONTAL STROKE -->
+        <td>&#x25CA;x <!-- U+25CA: LOZENGE -->
+        <td>&#x3000;x <!-- U+3000: IDEOGRAPHIC SPACE -->
+    <tr>
+        <td>&#x3007;x <!-- U+3007: IDEOGRAPHIC NUMBER ZERO -->
+        <td>&#x4E00;x <!-- U+4E00: CJK UNIFIED IDEOGRAPH-4E00 -->
+        <td>&#x4E03;x <!-- U+4E03: CJK UNIFIED IDEOGRAPH-4E03 -->
+        <td>&#x4E09;x <!-- U+4E09: CJK UNIFIED IDEOGRAPH-4E09 -->
+        <td>&#x4E5D;x <!-- U+4E5D: CJK UNIFIED IDEOGRAPH-4E5D -->
+        <td>&#x4E8C;x <!-- U+4E8C: CJK UNIFIED IDEOGRAPH-4E8C -->
+        <td>&#x4E94;x <!-- U+4E94: CJK UNIFIED IDEOGRAPH-4E94 -->
+        <td>&#x516B;x <!-- U+516B: CJK UNIFIED IDEOGRAPH-516B -->
+        <td>&#x516D;x <!-- U+516D: CJK UNIFIED IDEOGRAPH-516D -->
+        <td>&#x5341;x <!-- U+5341: CJK UNIFIED IDEOGRAPH-5341 -->
+        <td>&#x56D7;x <!-- U+56D7: CJK UNIFIED IDEOGRAPH-56D7 -->
+        <td>&#x56DB;x <!-- U+56DB: CJK UNIFIED IDEOGRAPH-56DB -->
+        <td>&#x571F;x <!-- U+571F: CJK UNIFIED IDEOGRAPH-571F -->
+        <td>&#x6728;x <!-- U+6728: CJK UNIFIED IDEOGRAPH-6728 -->
+        <td>&#x6A2A;x <!-- U+6A2A: CJK UNIFIED IDEOGRAPH-6A2A -->
+        <td>&#x6C34;x <!-- U+6C34: CJK UNIFIED IDEOGRAPH-6C34 -->
+        <td>&#x706B;x <!-- U+706B: CJK UNIFIED IDEOGRAPH-706B -->
+    <tr>
+        <td>&#x7EB5;x <!-- U+7EB5: CJK UNIFIED IDEOGRAPH-7EB5 -->
+        <td>&#x91D1;x <!-- U+91D1: CJK UNIFIED IDEOGRAPH-91D1 -->
+        <td>&#xF000;x <!-- U+F000 -->
+        <td>&#xF001;x <!-- U+F001 -->
+        <td>&#xF002;x <!-- U+F002 -->
+        <td>&#xFEFF;x <!-- U+FEFF: ZERO WIDTH NO-BREAK SPACE -->
+</table>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/ahem-ref.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/ahem-ref.html
new file mode 100644 (file)
index 0000000..9116232
--- /dev/null
@@ -0,0 +1,320 @@
+<!doctype html>
+<title>Ahem checker</title>
+<link rel="mismatch" href="ahem-notref.html">
+<style>
+* {
+  padding: 0;
+  margin: 0;
+  border: none;
+}
+td {
+  width: 34px;
+}
+@font-face {
+  font-family: Ahem;
+  src: url("../../fonts/Ahem.ttf");
+}
+table {
+  font: 15px/1 Ahem;
+  border-collapse: separate;
+  border-spacing: 1px;
+  table-layout: fixed;
+}
+</style>
+<table>
+    <tr>
+        <td>&#x0020;x <!-- U+0020: SPACE -->
+        <td>&#x0021;x <!-- U+0021: EXCLAMATION MARK -->
+        <td>&#x0022;x <!-- U+0022: QUOTATION MARK -->
+        <td>&#x0023;x <!-- U+0023: NUMBER SIGN -->
+        <td>&#x0024;x <!-- U+0024: DOLLAR SIGN -->
+        <td>&#x0025;x <!-- U+0025: PERCENT SIGN -->
+        <td>&#x0026;x <!-- U+0026: AMPERSAND -->
+        <td>&#x0028;x <!-- U+0028: LEFT PARENTHESIS -->
+        <td>&#x0029;x <!-- U+0029: RIGHT PARENTHESIS -->
+        <td>&#x002A;x <!-- U+002A: ASTERISK -->
+        <td>&#x002B;x <!-- U+002B: PLUS SIGN -->
+        <td>&#x002C;x <!-- U+002C: COMMA -->
+        <td>&#x002D;x <!-- U+002D: HYPHEN-MINUS -->
+        <td>&#x002E;x <!-- U+002E: FULL STOP -->
+        <td>&#x002F;x <!-- U+002F: SOLIDUS -->
+        <td>&#x0030;x <!-- U+0030: DIGIT ZERO -->
+        <td>&#x0031;x <!-- U+0031: DIGIT ONE -->
+    <tr>
+        <td>&#x0032;x <!-- U+0032: DIGIT TWO -->
+        <td>&#x0033;x <!-- U+0033: DIGIT THREE -->
+        <td>&#x0034;x <!-- U+0034: DIGIT FOUR -->
+        <td>&#x0035;x <!-- U+0035: DIGIT FIVE -->
+        <td>&#x0036;x <!-- U+0036: DIGIT SIX -->
+        <td>&#x0037;x <!-- U+0037: DIGIT SEVEN -->
+        <td>&#x0038;x <!-- U+0038: DIGIT EIGHT -->
+        <td>&#x0039;x <!-- U+0039: DIGIT NINE -->
+        <td>&#x003A;x <!-- U+003A: COLON -->
+        <td>&#x003B;x <!-- U+003B: SEMICOLON -->
+        <td>&#x003C;x <!-- U+003C: LESS-THAN SIGN -->
+        <td>&#x003D;x <!-- U+003D: EQUALS SIGN -->
+        <td>&#x003E;x <!-- U+003E: GREATER-THAN SIGN -->
+        <td>&#x003F;x <!-- U+003F: QUESTION MARK -->
+        <td>&#x0040;x <!-- U+0040: COMMERCIAL AT -->
+        <td>&#x0041;x <!-- U+0041: LATIN CAPITAL LETTER A -->
+        <td>&#x0042;x <!-- U+0042: LATIN CAPITAL LETTER B -->
+    <tr>
+        <td>&#x0043;x <!-- U+0043: LATIN CAPITAL LETTER C -->
+        <td>&#x0044;x <!-- U+0044: LATIN CAPITAL LETTER D -->
+        <td>&#x0045;x <!-- U+0045: LATIN CAPITAL LETTER E -->
+        <td>&#x0046;x <!-- U+0046: LATIN CAPITAL LETTER F -->
+        <td>&#x0047;x <!-- U+0047: LATIN CAPITAL LETTER G -->
+        <td>&#x0048;x <!-- U+0048: LATIN CAPITAL LETTER H -->
+        <td>&#x0049;x <!-- U+0049: LATIN CAPITAL LETTER I -->
+        <td>&#x004A;x <!-- U+004A: LATIN CAPITAL LETTER J -->
+        <td>&#x004B;x <!-- U+004B: LATIN CAPITAL LETTER K -->
+        <td>&#x004C;x <!-- U+004C: LATIN CAPITAL LETTER L -->
+        <td>&#x004D;x <!-- U+004D: LATIN CAPITAL LETTER M -->
+        <td>&#x004E;x <!-- U+004E: LATIN CAPITAL LETTER N -->
+        <td>&#x004F;x <!-- U+004F: LATIN CAPITAL LETTER O -->
+        <td>&#x0050;x <!-- U+0050: LATIN CAPITAL LETTER P -->
+        <td>&#x0051;x <!-- U+0051: LATIN CAPITAL LETTER Q -->
+        <td>&#x0052;x <!-- U+0052: LATIN CAPITAL LETTER R -->
+        <td>&#x0053;x <!-- U+0053: LATIN CAPITAL LETTER S -->
+    <tr>
+        <td>&#x0054;x <!-- U+0054: LATIN CAPITAL LETTER T -->
+        <td>&#x0055;x <!-- U+0055: LATIN CAPITAL LETTER U -->
+        <td>&#x0056;x <!-- U+0056: LATIN CAPITAL LETTER V -->
+        <td>&#x0057;x <!-- U+0057: LATIN CAPITAL LETTER W -->
+        <td>&#x0058;x <!-- U+0058: LATIN CAPITAL LETTER X -->
+        <td>&#x0059;x <!-- U+0059: LATIN CAPITAL LETTER Y -->
+        <td>&#x005A;x <!-- U+005A: LATIN CAPITAL LETTER Z -->
+        <td>&#x005B;x <!-- U+005B: LEFT SQUARE BRACKET -->
+        <td>&#x005C;x <!-- U+005C: REVERSE SOLIDUS -->
+        <td>&#x005D;x <!-- U+005D: RIGHT SQUARE BRACKET -->
+        <td>&#x005E;x <!-- U+005E: CIRCUMFLEX ACCENT -->
+        <td>&#x005F;x <!-- U+005F: LOW LINE -->
+        <td>&#x0060;x <!-- U+0060: GRAVE ACCENT -->
+        <td>&#x0061;x <!-- U+0061: LATIN SMALL LETTER A -->
+        <td>&#x0062;x <!-- U+0062: LATIN SMALL LETTER B -->
+        <td>&#x0063;x <!-- U+0063: LATIN SMALL LETTER C -->
+        <td>&#x0064;x <!-- U+0064: LATIN SMALL LETTER D -->
+    <tr>
+        <td>&#x0065;x <!-- U+0065: LATIN SMALL LETTER E -->
+        <td>&#x0066;x <!-- U+0066: LATIN SMALL LETTER F -->
+        <td>&#x0067;x <!-- U+0067: LATIN SMALL LETTER G -->
+        <td>&#x0068;x <!-- U+0068: LATIN SMALL LETTER H -->
+        <td>&#x0069;x <!-- U+0069: LATIN SMALL LETTER I -->
+        <td>&#x006A;x <!-- U+006A: LATIN SMALL LETTER J -->
+        <td>&#x006B;x <!-- U+006B: LATIN SMALL LETTER K -->
+        <td>&#x006C;x <!-- U+006C: LATIN SMALL LETTER L -->
+        <td>&#x006D;x <!-- U+006D: LATIN SMALL LETTER M -->
+        <td>&#x006E;x <!-- U+006E: LATIN SMALL LETTER N -->
+        <td>&#x006F;x <!-- U+006F: LATIN SMALL LETTER O -->
+        <td>&#x0070;x <!-- U+0070: LATIN SMALL LETTER P -->
+        <td>&#x0071;x <!-- U+0071: LATIN SMALL LETTER Q -->
+        <td>&#x0072;x <!-- U+0072: LATIN SMALL LETTER R -->
+        <td>&#x0073;x <!-- U+0073: LATIN SMALL LETTER S -->
+        <td>&#x0074;x <!-- U+0074: LATIN SMALL LETTER T -->
+        <td>&#x0075;x <!-- U+0075: LATIN SMALL LETTER U -->
+    <tr>
+        <td>&#x0076;x <!-- U+0076: LATIN SMALL LETTER V -->
+        <td>&#x0077;x <!-- U+0077: LATIN SMALL LETTER W -->
+        <td>&#x0078;x <!-- U+0078: LATIN SMALL LETTER X -->
+        <td>&#x0079;x <!-- U+0079: LATIN SMALL LETTER Y -->
+        <td>&#x007A;x <!-- U+007A: LATIN SMALL LETTER Z -->
+        <td>&#x007B;x <!-- U+007B: LEFT CURLY BRACKET -->
+        <td>&#x007C;x <!-- U+007C: VERTICAL LINE -->
+        <td>&#x007D;x <!-- U+007D: RIGHT CURLY BRACKET -->
+        <td>&#x007E;x <!-- U+007E: TILDE -->
+        <td>&#x00A0;x <!-- U+00A0: NO-BREAK SPACE -->
+        <td>&#x00A1;x <!-- U+00A1: INVERTED EXCLAMATION MARK -->
+        <td>&#x00A2;x <!-- U+00A2: CENT SIGN -->
+        <td>&#x00A3;x <!-- U+00A3: POUND SIGN -->
+        <td>&#x00A4;x <!-- U+00A4: CURRENCY SIGN -->
+        <td>&#x00A5;x <!-- U+00A5: YEN SIGN -->
+        <td>&#x00A6;x <!-- U+00A6: BROKEN BAR -->
+        <td>&#x00A7;x <!-- U+00A7: SECTION SIGN -->
+    <tr>
+        <td>&#x00A8;x <!-- U+00A8: DIAERESIS -->
+        <td>&#x00A9;x <!-- U+00A9: COPYRIGHT SIGN -->
+        <td>&#x00AA;x <!-- U+00AA: FEMININE ORDINAL INDICATOR -->
+        <td>&#x00AB;x <!-- U+00AB: LEFT-POINTING DOUBLE ANGLE QUOTATION MARK -->
+        <td>&#x00AC;x <!-- U+00AC: NOT SIGN -->
+        <td>&#x00AD;x <!-- U+00AD: SOFT HYPHEN -->
+        <td>&#x00AE;x <!-- U+00AE: REGISTERED SIGN -->
+        <td>&#x00AF;x <!-- U+00AF: MACRON -->
+        <td>&#x00B0;x <!-- U+00B0: DEGREE SIGN -->
+        <td>&#x00B1;x <!-- U+00B1: PLUS-MINUS SIGN -->
+        <td>&#x00B2;x <!-- U+00B2: SUPERSCRIPT TWO -->
+        <td>&#x00B3;x <!-- U+00B3: SUPERSCRIPT THREE -->
+        <td>&#x00B4;x <!-- U+00B4: ACUTE ACCENT -->
+        <td>&#x00B5;x <!-- U+00B5: MICRO SIGN -->
+        <td>&#x00B6;x <!-- U+00B6: PILCROW SIGN -->
+        <td>&#x00B7;x <!-- U+00B7: MIDDLE DOT -->
+        <td>&#x00B8;x <!-- U+00B8: CEDILLA -->
+    <tr>
+        <td>&#x00B9;x <!-- U+00B9: SUPERSCRIPT ONE -->
+        <td>&#x00BA;x <!-- U+00BA: MASCULINE ORDINAL INDICATOR -->
+        <td>&#x00BB;x <!-- U+00BB: RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK -->
+        <td>&#x00BC;x <!-- U+00BC: VULGAR FRACTION ONE QUARTER -->
+        <td>&#x00BD;x <!-- U+00BD: VULGAR FRACTION ONE HALF -->
+        <td>&#x00BE;x <!-- U+00BE: VULGAR FRACTION THREE QUARTERS -->
+        <td>&#x00BF;x <!-- U+00BF: INVERTED QUESTION MARK -->
+        <td>&#x00C0;x <!-- U+00C0: LATIN CAPITAL LETTER A WITH GRAVE -->
+        <td>&#x00C1;x <!-- U+00C1: LATIN CAPITAL LETTER A WITH ACUTE -->
+        <td>&#x00C2;x <!-- U+00C2: LATIN CAPITAL LETTER A WITH CIRCUMFLEX -->
+        <td>&#x00C3;x <!-- U+00C3: LATIN CAPITAL LETTER A WITH TILDE -->
+        <td>&#x00C4;x <!-- U+00C4: LATIN CAPITAL LETTER A WITH DIAERESIS -->
+        <td>&#x00C5;x <!-- U+00C5: LATIN CAPITAL LETTER A WITH RING ABOVE -->
+        <td>&#x00C6;x <!-- U+00C6: LATIN CAPITAL LETTER AE -->
+        <td>&#x00C7;x <!-- U+00C7: LATIN CAPITAL LETTER C WITH CEDILLA -->
+        <td>&#x00C8;x <!-- U+00C8: LATIN CAPITAL LETTER E WITH GRAVE -->
+        <td>&#x00C9;x <!-- U+00C9: LATIN CAPITAL LETTER E WITH ACUTE -->
+    <tr>
+        <td>&#x00CA;x <!-- U+00CA: LATIN CAPITAL LETTER E WITH CIRCUMFLEX -->
+        <td>&#x00CB;x <!-- U+00CB: LATIN CAPITAL LETTER E WITH DIAERESIS -->
+        <td>&#x00CC;x <!-- U+00CC: LATIN CAPITAL LETTER I WITH GRAVE -->
+        <td>&#x00CD;x <!-- U+00CD: LATIN CAPITAL LETTER I WITH ACUTE -->
+        <td>&#x00CE;x <!-- U+00CE: LATIN CAPITAL LETTER I WITH CIRCUMFLEX -->
+        <td>&#x00CF;x <!-- U+00CF: LATIN CAPITAL LETTER I WITH DIAERESIS -->
+        <td>&#x00D0;x <!-- U+00D0: LATIN CAPITAL LETTER ETH -->
+        <td>&#x00D1;x <!-- U+00D1: LATIN CAPITAL LETTER N WITH TILDE -->
+        <td>&#x00D2;x <!-- U+00D2: LATIN CAPITAL LETTER O WITH GRAVE -->
+        <td>&#x00D3;x <!-- U+00D3: LATIN CAPITAL LETTER O WITH ACUTE -->
+        <td>&#x00D4;x <!-- U+00D4: LATIN CAPITAL LETTER O WITH CIRCUMFLEX -->
+        <td>&#x00D5;x <!-- U+00D5: LATIN CAPITAL LETTER O WITH TILDE -->
+        <td>&#x00D6;x <!-- U+00D6: LATIN CAPITAL LETTER O WITH DIAERESIS -->
+        <td>&#x00D7;x <!-- U+00D7: MULTIPLICATION SIGN -->
+        <td>&#x00D8;x <!-- U+00D8: LATIN CAPITAL LETTER O WITH STROKE -->
+        <td>&#x00D9;x <!-- U+00D9: LATIN CAPITAL LETTER U WITH GRAVE -->
+        <td>&#x00DA;x <!-- U+00DA: LATIN CAPITAL LETTER U WITH ACUTE -->
+    <tr>
+        <td>&#x00DB;x <!-- U+00DB: LATIN CAPITAL LETTER U WITH CIRCUMFLEX -->
+        <td>&#x00DC;x <!-- U+00DC: LATIN CAPITAL LETTER U WITH DIAERESIS -->
+        <td>&#x00DD;x <!-- U+00DD: LATIN CAPITAL LETTER Y WITH ACUTE -->
+        <td>&#x00DE;x <!-- U+00DE: LATIN CAPITAL LETTER THORN -->
+        <td>&#x00DF;x <!-- U+00DF: LATIN SMALL LETTER SHARP S -->
+        <td>&#x00E0;x <!-- U+00E0: LATIN SMALL LETTER A WITH GRAVE -->
+        <td>&#x00E1;x <!-- U+00E1: LATIN SMALL LETTER A WITH ACUTE -->
+        <td>&#x00E2;x <!-- U+00E2: LATIN SMALL LETTER A WITH CIRCUMFLEX -->
+        <td>&#x00E3;x <!-- U+00E3: LATIN SMALL LETTER A WITH TILDE -->
+        <td>&#x00E4;x <!-- U+00E4: LATIN SMALL LETTER A WITH DIAERESIS -->
+        <td>&#x00E5;x <!-- U+00E5: LATIN SMALL LETTER A WITH RING ABOVE -->
+        <td>&#x00E6;x <!-- U+00E6: LATIN SMALL LETTER AE -->
+        <td>&#x00E7;x <!-- U+00E7: LATIN SMALL LETTER C WITH CEDILLA -->
+        <td>&#x00E8;x <!-- U+00E8: LATIN SMALL LETTER E WITH GRAVE -->
+        <td>&#x00E9;x <!-- U+00E9: LATIN SMALL LETTER E WITH ACUTE -->
+        <td>&#x00EA;x <!-- U+00EA: LATIN SMALL LETTER E WITH CIRCUMFLEX -->
+        <td>&#x00EB;x <!-- U+00EB: LATIN SMALL LETTER E WITH DIAERESIS -->
+    <tr>
+        <td>&#x00EC;x <!-- U+00EC: LATIN SMALL LETTER I WITH GRAVE -->
+        <td>&#x00ED;x <!-- U+00ED: LATIN SMALL LETTER I WITH ACUTE -->
+        <td>&#x00EE;x <!-- U+00EE: LATIN SMALL LETTER I WITH CIRCUMFLEX -->
+        <td>&#x00EF;x <!-- U+00EF: LATIN SMALL LETTER I WITH DIAERESIS -->
+        <td>&#x00F0;x <!-- U+00F0: LATIN SMALL LETTER ETH -->
+        <td>&#x00F1;x <!-- U+00F1: LATIN SMALL LETTER N WITH TILDE -->
+        <td>&#x00F2;x <!-- U+00F2: LATIN SMALL LETTER O WITH GRAVE -->
+        <td>&#x00F3;x <!-- U+00F3: LATIN SMALL LETTER O WITH ACUTE -->
+        <td>&#x00F4;x <!-- U+00F4: LATIN SMALL LETTER O WITH CIRCUMFLEX -->
+        <td>&#x00F5;x <!-- U+00F5: LATIN SMALL LETTER O WITH TILDE -->
+        <td>&#x00F6;x <!-- U+00F6: LATIN SMALL LETTER O WITH DIAERESIS -->
+        <td>&#x00F7;x <!-- U+00F7: DIVISION SIGN -->
+        <td>&#x00F8;x <!-- U+00F8: LATIN SMALL LETTER O WITH STROKE -->
+        <td>&#x00F9;x <!-- U+00F9: LATIN SMALL LETTER U WITH GRAVE -->
+        <td>&#x00FA;x <!-- U+00FA: LATIN SMALL LETTER U WITH ACUTE -->
+        <td>&#x00FB;x <!-- U+00FB: LATIN SMALL LETTER U WITH CIRCUMFLEX -->
+        <td>&#x00FC;x <!-- U+00FC: LATIN SMALL LETTER U WITH DIAERESIS -->
+    <tr>
+        <td>&#x00FD;x <!-- U+00FD: LATIN SMALL LETTER Y WITH ACUTE -->
+        <td>&#x00FE;x <!-- U+00FE: LATIN SMALL LETTER THORN -->
+        <td>&#x00FF;x <!-- U+00FF: LATIN SMALL LETTER Y WITH DIAERESIS -->
+        <td>&#x0131;x <!-- U+0131: LATIN SMALL LETTER DOTLESS I -->
+        <td>&#x0152;x <!-- U+0152: LATIN CAPITAL LIGATURE OE -->
+        <td>&#x0153;x <!-- U+0153: LATIN SMALL LIGATURE OE -->
+        <td>&#x0178;x <!-- U+0178: LATIN CAPITAL LETTER Y WITH DIAERESIS -->
+        <td>&#x0192;x <!-- U+0192: LATIN SMALL LETTER F WITH HOOK -->
+        <td>&#x02C6;x <!-- U+02C6: MODIFIER LETTER CIRCUMFLEX ACCENT -->
+        <td>&#x02C7;x <!-- U+02C7: CARON -->
+        <td>&#x02C9;x <!-- U+02C9: MODIFIER LETTER MACRON -->
+        <td>&#x02D8;x <!-- U+02D8: BREVE -->
+        <td>&#x02D9;x <!-- U+02D9: DOT ABOVE -->
+        <td>&#x02DA;x <!-- U+02DA: RING ABOVE -->
+        <td>&#x02DB;x <!-- U+02DB: OGONEK -->
+        <td>&#x02DC;x <!-- U+02DC: SMALL TILDE -->
+        <td>&#x02DD;x <!-- U+02DD: DOUBLE ACUTE ACCENT -->
+    <tr>
+        <td>&#x0394;x <!-- U+0394: GREEK CAPITAL LETTER DELTA -->
+        <td>&#x03A5;x <!-- U+03A5: GREEK CAPITAL LETTER UPSILON -->
+        <td>&#x03A7;x <!-- U+03A7: GREEK CAPITAL LETTER CHI -->
+        <td>&#x03A9;x <!-- U+03A9: GREEK CAPITAL LETTER OMEGA -->
+        <td>&#x03BC;x <!-- U+03BC: GREEK SMALL LETTER MU -->
+        <td>&#x03C0;x <!-- U+03C0: GREEK SMALL LETTER PI -->
+        <td>&#x2002;x <!-- U+2002: EN SPACE -->
+        <td>&#x2003;x <!-- U+2003: EM SPACE -->
+        <td>&#x2004;x <!-- U+2004: THREE-PER-EM SPACE -->
+        <td>&#x2005;x <!-- U+2005: FOUR-PER-EM SPACE -->
+        <td>&#x2006;x <!-- U+2006: SIX-PER-EM SPACE -->
+        <td>&#x2009;x <!-- U+2009: THIN SPACE -->
+        <td>&#x200A;x <!-- U+200A: HAIR SPACE -->
+        <td>&#x200B;x <!-- U+200B: ZERO WIDTH SPACE -->
+        <td>&#x200C;x <!-- U+200C: ZERO WIDTH NON-JOINER -->
+        <td>&#x200D;x <!-- U+200D: ZERO WIDTH JOINER -->
+        <td>&#x2010;x <!-- U+2010: HYPHEN -->
+    <tr>
+        <td>&#x2013;x <!-- U+2013: EN DASH -->
+        <td>&#x2014;x <!-- U+2014: EM DASH -->
+        <td>&#x2018;x <!-- U+2018: LEFT SINGLE QUOTATION MARK -->
+        <td>&#x2019;x <!-- U+2019: RIGHT SINGLE QUOTATION MARK -->
+        <td>&#x201A;x <!-- U+201A: SINGLE LOW-9 QUOTATION MARK -->
+        <td>&#x201C;x <!-- U+201C: LEFT DOUBLE QUOTATION MARK -->
+        <td>&#x201D;x <!-- U+201D: RIGHT DOUBLE QUOTATION MARK -->
+        <td>&#x201E;x <!-- U+201E: DOUBLE LOW-9 QUOTATION MARK -->
+        <td>&#x2020;x <!-- U+2020: DAGGER -->
+        <td>&#x2021;x <!-- U+2021: DOUBLE DAGGER -->
+        <td>&#x2022;x <!-- U+2022: BULLET -->
+        <td>&#x2026;x <!-- U+2026: HORIZONTAL ELLIPSIS -->
+        <td>&#x2030;x <!-- U+2030: PER MILLE SIGN -->
+        <td>&#x2039;x <!-- U+2039: SINGLE LEFT-POINTING ANGLE QUOTATION MARK -->
+        <td>&#x203A;x <!-- U+203A: SINGLE RIGHT-POINTING ANGLE QUOTATION MARK -->
+        <td>&#x2044;x <!-- U+2044: FRACTION SLASH -->
+        <td>&#x2122;x <!-- U+2122: TRADE MARK SIGN -->
+    <tr>
+        <td>&#x2126;x <!-- U+2126: OHM SIGN -->
+        <td>&#x2202;x <!-- U+2202: PARTIAL DIFFERENTIAL -->
+        <td>&#x2206;x <!-- U+2206: INCREMENT -->
+        <td>&#x220F;x <!-- U+220F: N-ARY PRODUCT -->
+        <td>&#x2211;x <!-- U+2211: N-ARY SUMMATION -->
+        <td>&#x2212;x <!-- U+2212: MINUS SIGN -->
+        <td>&#x2219;x <!-- U+2219: BULLET OPERATOR -->
+        <td>&#x221A;x <!-- U+221A: SQUARE ROOT -->
+        <td>&#x221E;x <!-- U+221E: INFINITY -->
+        <td>&#x222B;x <!-- U+222B: INTEGRAL -->
+        <td>&#x2248;x <!-- U+2248: ALMOST EQUAL TO -->
+        <td>&#x2260;x <!-- U+2260: NOT EQUAL TO -->
+        <td>&#x2264;x <!-- U+2264: LESS-THAN OR EQUAL TO -->
+        <td>&#x2265;x <!-- U+2265: GREATER-THAN OR EQUAL TO -->
+        <td>&#x22F2;x <!-- U+22F2: ELEMENT OF WITH LONG HORIZONTAL STROKE -->
+        <td>&#x25CA;x <!-- U+25CA: LOZENGE -->
+        <td>&#x3000;x <!-- U+3000: IDEOGRAPHIC SPACE -->
+    <tr>
+        <td>&#x3007;x <!-- U+3007: IDEOGRAPHIC NUMBER ZERO -->
+        <td>&#x4E00;x <!-- U+4E00: CJK UNIFIED IDEOGRAPH-4E00 -->
+        <td>&#x4E03;x <!-- U+4E03: CJK UNIFIED IDEOGRAPH-4E03 -->
+        <td>&#x4E09;x <!-- U+4E09: CJK UNIFIED IDEOGRAPH-4E09 -->
+        <td>&#x4E5D;x <!-- U+4E5D: CJK UNIFIED IDEOGRAPH-4E5D -->
+        <td>&#x4E8C;x <!-- U+4E8C: CJK UNIFIED IDEOGRAPH-4E8C -->
+        <td>&#x4E94;x <!-- U+4E94: CJK UNIFIED IDEOGRAPH-4E94 -->
+        <td>&#x516B;x <!-- U+516B: CJK UNIFIED IDEOGRAPH-516B -->
+        <td>&#x516D;x <!-- U+516D: CJK UNIFIED IDEOGRAPH-516D -->
+        <td>&#x5341;x <!-- U+5341: CJK UNIFIED IDEOGRAPH-5341 -->
+        <td>&#x56D7;x <!-- U+56D7: CJK UNIFIED IDEOGRAPH-56D7 -->
+        <td>&#x56DB;x <!-- U+56DB: CJK UNIFIED IDEOGRAPH-56DB -->
+        <td>&#x571F;x <!-- U+571F: CJK UNIFIED IDEOGRAPH-571F -->
+        <td>&#x6728;x <!-- U+6728: CJK UNIFIED IDEOGRAPH-6728 -->
+        <td>&#x6A2A;x <!-- U+6A2A: CJK UNIFIED IDEOGRAPH-6A2A -->
+        <td>&#x6C34;x <!-- U+6C34: CJK UNIFIED IDEOGRAPH-6C34 -->
+        <td>&#x706B;x <!-- U+706B: CJK UNIFIED IDEOGRAPH-706B -->
+    <tr>
+        <td>&#x7EB5;x <!-- U+7EB5: CJK UNIFIED IDEOGRAPH-7EB5 -->
+        <td>&#x91D1;x <!-- U+91D1: CJK UNIFIED IDEOGRAPH-91D1 -->
+        <td>&#xF000;x <!-- U+F000 -->
+        <td>&#xF001;x <!-- U+F001 -->
+        <td>&#xF002;x <!-- U+F002 -->
+        <td>&#xFEFF;x <!-- U+FEFF: ZERO WIDTH NO-BREAK SPACE -->
+</table>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/ahem.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/ahem.html
new file mode 100644 (file)
index 0000000..068c1d4
--- /dev/null
@@ -0,0 +1,316 @@
+<!doctype html>
+<title>Ahem checker</title>
+<link rel="match" href="ahem-ref.html">
+<style>
+* {
+  padding: 0;
+  margin: 0;
+  border: none;
+}
+td {
+  width: 34px;
+}
+table {
+  font: 15px/1 Ahem;
+  border-collapse: separate;
+  border-spacing: 1px;
+  table-layout: fixed;
+}
+</style>
+<table>
+    <tr>
+        <td>&#x0020;x <!-- U+0020: SPACE -->
+        <td>&#x0021;x <!-- U+0021: EXCLAMATION MARK -->
+        <td>&#x0022;x <!-- U+0022: QUOTATION MARK -->
+        <td>&#x0023;x <!-- U+0023: NUMBER SIGN -->
+        <td>&#x0024;x <!-- U+0024: DOLLAR SIGN -->
+        <td>&#x0025;x <!-- U+0025: PERCENT SIGN -->
+        <td>&#x0026;x <!-- U+0026: AMPERSAND -->
+        <td>&#x0028;x <!-- U+0028: LEFT PARENTHESIS -->
+        <td>&#x0029;x <!-- U+0029: RIGHT PARENTHESIS -->
+        <td>&#x002A;x <!-- U+002A: ASTERISK -->
+        <td>&#x002B;x <!-- U+002B: PLUS SIGN -->
+        <td>&#x002C;x <!-- U+002C: COMMA -->
+        <td>&#x002D;x <!-- U+002D: HYPHEN-MINUS -->
+        <td>&#x002E;x <!-- U+002E: FULL STOP -->
+        <td>&#x002F;x <!-- U+002F: SOLIDUS -->
+        <td>&#x0030;x <!-- U+0030: DIGIT ZERO -->
+        <td>&#x0031;x <!-- U+0031: DIGIT ONE -->
+    <tr>
+        <td>&#x0032;x <!-- U+0032: DIGIT TWO -->
+        <td>&#x0033;x <!-- U+0033: DIGIT THREE -->
+        <td>&#x0034;x <!-- U+0034: DIGIT FOUR -->
+        <td>&#x0035;x <!-- U+0035: DIGIT FIVE -->
+        <td>&#x0036;x <!-- U+0036: DIGIT SIX -->
+        <td>&#x0037;x <!-- U+0037: DIGIT SEVEN -->
+        <td>&#x0038;x <!-- U+0038: DIGIT EIGHT -->
+        <td>&#x0039;x <!-- U+0039: DIGIT NINE -->
+        <td>&#x003A;x <!-- U+003A: COLON -->
+        <td>&#x003B;x <!-- U+003B: SEMICOLON -->
+        <td>&#x003C;x <!-- U+003C: LESS-THAN SIGN -->
+        <td>&#x003D;x <!-- U+003D: EQUALS SIGN -->
+        <td>&#x003E;x <!-- U+003E: GREATER-THAN SIGN -->
+        <td>&#x003F;x <!-- U+003F: QUESTION MARK -->
+        <td>&#x0040;x <!-- U+0040: COMMERCIAL AT -->
+        <td>&#x0041;x <!-- U+0041: LATIN CAPITAL LETTER A -->
+        <td>&#x0042;x <!-- U+0042: LATIN CAPITAL LETTER B -->
+    <tr>
+        <td>&#x0043;x <!-- U+0043: LATIN CAPITAL LETTER C -->
+        <td>&#x0044;x <!-- U+0044: LATIN CAPITAL LETTER D -->
+        <td>&#x0045;x <!-- U+0045: LATIN CAPITAL LETTER E -->
+        <td>&#x0046;x <!-- U+0046: LATIN CAPITAL LETTER F -->
+        <td>&#x0047;x <!-- U+0047: LATIN CAPITAL LETTER G -->
+        <td>&#x0048;x <!-- U+0048: LATIN CAPITAL LETTER H -->
+        <td>&#x0049;x <!-- U+0049: LATIN CAPITAL LETTER I -->
+        <td>&#x004A;x <!-- U+004A: LATIN CAPITAL LETTER J -->
+        <td>&#x004B;x <!-- U+004B: LATIN CAPITAL LETTER K -->
+        <td>&#x004C;x <!-- U+004C: LATIN CAPITAL LETTER L -->
+        <td>&#x004D;x <!-- U+004D: LATIN CAPITAL LETTER M -->
+        <td>&#x004E;x <!-- U+004E: LATIN CAPITAL LETTER N -->
+        <td>&#x004F;x <!-- U+004F: LATIN CAPITAL LETTER O -->
+        <td>&#x0050;x <!-- U+0050: LATIN CAPITAL LETTER P -->
+        <td>&#x0051;x <!-- U+0051: LATIN CAPITAL LETTER Q -->
+        <td>&#x0052;x <!-- U+0052: LATIN CAPITAL LETTER R -->
+        <td>&#x0053;x <!-- U+0053: LATIN CAPITAL LETTER S -->
+    <tr>
+        <td>&#x0054;x <!-- U+0054: LATIN CAPITAL LETTER T -->
+        <td>&#x0055;x <!-- U+0055: LATIN CAPITAL LETTER U -->
+        <td>&#x0056;x <!-- U+0056: LATIN CAPITAL LETTER V -->
+        <td>&#x0057;x <!-- U+0057: LATIN CAPITAL LETTER W -->
+        <td>&#x0058;x <!-- U+0058: LATIN CAPITAL LETTER X -->
+        <td>&#x0059;x <!-- U+0059: LATIN CAPITAL LETTER Y -->
+        <td>&#x005A;x <!-- U+005A: LATIN CAPITAL LETTER Z -->
+        <td>&#x005B;x <!-- U+005B: LEFT SQUARE BRACKET -->
+        <td>&#x005C;x <!-- U+005C: REVERSE SOLIDUS -->
+        <td>&#x005D;x <!-- U+005D: RIGHT SQUARE BRACKET -->
+        <td>&#x005E;x <!-- U+005E: CIRCUMFLEX ACCENT -->
+        <td>&#x005F;x <!-- U+005F: LOW LINE -->
+        <td>&#x0060;x <!-- U+0060: GRAVE ACCENT -->
+        <td>&#x0061;x <!-- U+0061: LATIN SMALL LETTER A -->
+        <td>&#x0062;x <!-- U+0062: LATIN SMALL LETTER B -->
+        <td>&#x0063;x <!-- U+0063: LATIN SMALL LETTER C -->
+        <td>&#x0064;x <!-- U+0064: LATIN SMALL LETTER D -->
+    <tr>
+        <td>&#x0065;x <!-- U+0065: LATIN SMALL LETTER E -->
+        <td>&#x0066;x <!-- U+0066: LATIN SMALL LETTER F -->
+        <td>&#x0067;x <!-- U+0067: LATIN SMALL LETTER G -->
+        <td>&#x0068;x <!-- U+0068: LATIN SMALL LETTER H -->
+        <td>&#x0069;x <!-- U+0069: LATIN SMALL LETTER I -->
+        <td>&#x006A;x <!-- U+006A: LATIN SMALL LETTER J -->
+        <td>&#x006B;x <!-- U+006B: LATIN SMALL LETTER K -->
+        <td>&#x006C;x <!-- U+006C: LATIN SMALL LETTER L -->
+        <td>&#x006D;x <!-- U+006D: LATIN SMALL LETTER M -->
+        <td>&#x006E;x <!-- U+006E: LATIN SMALL LETTER N -->
+        <td>&#x006F;x <!-- U+006F: LATIN SMALL LETTER O -->
+        <td>&#x0070;x <!-- U+0070: LATIN SMALL LETTER P -->
+        <td>&#x0071;x <!-- U+0071: LATIN SMALL LETTER Q -->
+        <td>&#x0072;x <!-- U+0072: LATIN SMALL LETTER R -->
+        <td>&#x0073;x <!-- U+0073: LATIN SMALL LETTER S -->
+        <td>&#x0074;x <!-- U+0074: LATIN SMALL LETTER T -->
+        <td>&#x0075;x <!-- U+0075: LATIN SMALL LETTER U -->
+    <tr>
+        <td>&#x0076;x <!-- U+0076: LATIN SMALL LETTER V -->
+        <td>&#x0077;x <!-- U+0077: LATIN SMALL LETTER W -->
+        <td>&#x0078;x <!-- U+0078: LATIN SMALL LETTER X -->
+        <td>&#x0079;x <!-- U+0079: LATIN SMALL LETTER Y -->
+        <td>&#x007A;x <!-- U+007A: LATIN SMALL LETTER Z -->
+        <td>&#x007B;x <!-- U+007B: LEFT CURLY BRACKET -->
+        <td>&#x007C;x <!-- U+007C: VERTICAL LINE -->
+        <td>&#x007D;x <!-- U+007D: RIGHT CURLY BRACKET -->
+        <td>&#x007E;x <!-- U+007E: TILDE -->
+        <td>&#x00A0;x <!-- U+00A0: NO-BREAK SPACE -->
+        <td>&#x00A1;x <!-- U+00A1: INVERTED EXCLAMATION MARK -->
+        <td>&#x00A2;x <!-- U+00A2: CENT SIGN -->
+        <td>&#x00A3;x <!-- U+00A3: POUND SIGN -->
+        <td>&#x00A4;x <!-- U+00A4: CURRENCY SIGN -->
+        <td>&#x00A5;x <!-- U+00A5: YEN SIGN -->
+        <td>&#x00A6;x <!-- U+00A6: BROKEN BAR -->
+        <td>&#x00A7;x <!-- U+00A7: SECTION SIGN -->
+    <tr>
+        <td>&#x00A8;x <!-- U+00A8: DIAERESIS -->
+        <td>&#x00A9;x <!-- U+00A9: COPYRIGHT SIGN -->
+        <td>&#x00AA;x <!-- U+00AA: FEMININE ORDINAL INDICATOR -->
+        <td>&#x00AB;x <!-- U+00AB: LEFT-POINTING DOUBLE ANGLE QUOTATION MARK -->
+        <td>&#x00AC;x <!-- U+00AC: NOT SIGN -->
+        <td>&#x00AD;x <!-- U+00AD: SOFT HYPHEN -->
+        <td>&#x00AE;x <!-- U+00AE: REGISTERED SIGN -->
+        <td>&#x00AF;x <!-- U+00AF: MACRON -->
+        <td>&#x00B0;x <!-- U+00B0: DEGREE SIGN -->
+        <td>&#x00B1;x <!-- U+00B1: PLUS-MINUS SIGN -->
+        <td>&#x00B2;x <!-- U+00B2: SUPERSCRIPT TWO -->
+        <td>&#x00B3;x <!-- U+00B3: SUPERSCRIPT THREE -->
+        <td>&#x00B4;x <!-- U+00B4: ACUTE ACCENT -->
+        <td>&#x00B5;x <!-- U+00B5: MICRO SIGN -->
+        <td>&#x00B6;x <!-- U+00B6: PILCROW SIGN -->
+        <td>&#x00B7;x <!-- U+00B7: MIDDLE DOT -->
+        <td>&#x00B8;x <!-- U+00B8: CEDILLA -->
+    <tr>
+        <td>&#x00B9;x <!-- U+00B9: SUPERSCRIPT ONE -->
+        <td>&#x00BA;x <!-- U+00BA: MASCULINE ORDINAL INDICATOR -->
+        <td>&#x00BB;x <!-- U+00BB: RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK -->
+        <td>&#x00BC;x <!-- U+00BC: VULGAR FRACTION ONE QUARTER -->
+        <td>&#x00BD;x <!-- U+00BD: VULGAR FRACTION ONE HALF -->
+        <td>&#x00BE;x <!-- U+00BE: VULGAR FRACTION THREE QUARTERS -->
+        <td>&#x00BF;x <!-- U+00BF: INVERTED QUESTION MARK -->
+        <td>&#x00C0;x <!-- U+00C0: LATIN CAPITAL LETTER A WITH GRAVE -->
+        <td>&#x00C1;x <!-- U+00C1: LATIN CAPITAL LETTER A WITH ACUTE -->
+        <td>&#x00C2;x <!-- U+00C2: LATIN CAPITAL LETTER A WITH CIRCUMFLEX -->
+        <td>&#x00C3;x <!-- U+00C3: LATIN CAPITAL LETTER A WITH TILDE -->
+        <td>&#x00C4;x <!-- U+00C4: LATIN CAPITAL LETTER A WITH DIAERESIS -->
+        <td>&#x00C5;x <!-- U+00C5: LATIN CAPITAL LETTER A WITH RING ABOVE -->
+        <td>&#x00C6;x <!-- U+00C6: LATIN CAPITAL LETTER AE -->
+        <td>&#x00C7;x <!-- U+00C7: LATIN CAPITAL LETTER C WITH CEDILLA -->
+        <td>&#x00C8;x <!-- U+00C8: LATIN CAPITAL LETTER E WITH GRAVE -->
+        <td>&#x00C9;x <!-- U+00C9: LATIN CAPITAL LETTER E WITH ACUTE -->
+    <tr>
+        <td>&#x00CA;x <!-- U+00CA: LATIN CAPITAL LETTER E WITH CIRCUMFLEX -->
+        <td>&#x00CB;x <!-- U+00CB: LATIN CAPITAL LETTER E WITH DIAERESIS -->
+        <td>&#x00CC;x <!-- U+00CC: LATIN CAPITAL LETTER I WITH GRAVE -->
+        <td>&#x00CD;x <!-- U+00CD: LATIN CAPITAL LETTER I WITH ACUTE -->
+        <td>&#x00CE;x <!-- U+00CE: LATIN CAPITAL LETTER I WITH CIRCUMFLEX -->
+        <td>&#x00CF;x <!-- U+00CF: LATIN CAPITAL LETTER I WITH DIAERESIS -->
+        <td>&#x00D0;x <!-- U+00D0: LATIN CAPITAL LETTER ETH -->
+        <td>&#x00D1;x <!-- U+00D1: LATIN CAPITAL LETTER N WITH TILDE -->
+        <td>&#x00D2;x <!-- U+00D2: LATIN CAPITAL LETTER O WITH GRAVE -->
+        <td>&#x00D3;x <!-- U+00D3: LATIN CAPITAL LETTER O WITH ACUTE -->
+        <td>&#x00D4;x <!-- U+00D4: LATIN CAPITAL LETTER O WITH CIRCUMFLEX -->
+        <td>&#x00D5;x <!-- U+00D5: LATIN CAPITAL LETTER O WITH TILDE -->
+        <td>&#x00D6;x <!-- U+00D6: LATIN CAPITAL LETTER O WITH DIAERESIS -->
+        <td>&#x00D7;x <!-- U+00D7: MULTIPLICATION SIGN -->
+        <td>&#x00D8;x <!-- U+00D8: LATIN CAPITAL LETTER O WITH STROKE -->
+        <td>&#x00D9;x <!-- U+00D9: LATIN CAPITAL LETTER U WITH GRAVE -->
+        <td>&#x00DA;x <!-- U+00DA: LATIN CAPITAL LETTER U WITH ACUTE -->
+    <tr>
+        <td>&#x00DB;x <!-- U+00DB: LATIN CAPITAL LETTER U WITH CIRCUMFLEX -->
+        <td>&#x00DC;x <!-- U+00DC: LATIN CAPITAL LETTER U WITH DIAERESIS -->
+        <td>&#x00DD;x <!-- U+00DD: LATIN CAPITAL LETTER Y WITH ACUTE -->
+        <td>&#x00DE;x <!-- U+00DE: LATIN CAPITAL LETTER THORN -->
+        <td>&#x00DF;x <!-- U+00DF: LATIN SMALL LETTER SHARP S -->
+        <td>&#x00E0;x <!-- U+00E0: LATIN SMALL LETTER A WITH GRAVE -->
+        <td>&#x00E1;x <!-- U+00E1: LATIN SMALL LETTER A WITH ACUTE -->
+        <td>&#x00E2;x <!-- U+00E2: LATIN SMALL LETTER A WITH CIRCUMFLEX -->
+        <td>&#x00E3;x <!-- U+00E3: LATIN SMALL LETTER A WITH TILDE -->
+        <td>&#x00E4;x <!-- U+00E4: LATIN SMALL LETTER A WITH DIAERESIS -->
+        <td>&#x00E5;x <!-- U+00E5: LATIN SMALL LETTER A WITH RING ABOVE -->
+        <td>&#x00E6;x <!-- U+00E6: LATIN SMALL LETTER AE -->
+        <td>&#x00E7;x <!-- U+00E7: LATIN SMALL LETTER C WITH CEDILLA -->
+        <td>&#x00E8;x <!-- U+00E8: LATIN SMALL LETTER E WITH GRAVE -->
+        <td>&#x00E9;x <!-- U+00E9: LATIN SMALL LETTER E WITH ACUTE -->
+        <td>&#x00EA;x <!-- U+00EA: LATIN SMALL LETTER E WITH CIRCUMFLEX -->
+        <td>&#x00EB;x <!-- U+00EB: LATIN SMALL LETTER E WITH DIAERESIS -->
+    <tr>
+        <td>&#x00EC;x <!-- U+00EC: LATIN SMALL LETTER I WITH GRAVE -->
+        <td>&#x00ED;x <!-- U+00ED: LATIN SMALL LETTER I WITH ACUTE -->
+        <td>&#x00EE;x <!-- U+00EE: LATIN SMALL LETTER I WITH CIRCUMFLEX -->
+        <td>&#x00EF;x <!-- U+00EF: LATIN SMALL LETTER I WITH DIAERESIS -->
+        <td>&#x00F0;x <!-- U+00F0: LATIN SMALL LETTER ETH -->
+        <td>&#x00F1;x <!-- U+00F1: LATIN SMALL LETTER N WITH TILDE -->
+        <td>&#x00F2;x <!-- U+00F2: LATIN SMALL LETTER O WITH GRAVE -->
+        <td>&#x00F3;x <!-- U+00F3: LATIN SMALL LETTER O WITH ACUTE -->
+        <td>&#x00F4;x <!-- U+00F4: LATIN SMALL LETTER O WITH CIRCUMFLEX -->
+        <td>&#x00F5;x <!-- U+00F5: LATIN SMALL LETTER O WITH TILDE -->
+        <td>&#x00F6;x <!-- U+00F6: LATIN SMALL LETTER O WITH DIAERESIS -->
+        <td>&#x00F7;x <!-- U+00F7: DIVISION SIGN -->
+        <td>&#x00F8;x <!-- U+00F8: LATIN SMALL LETTER O WITH STROKE -->
+        <td>&#x00F9;x <!-- U+00F9: LATIN SMALL LETTER U WITH GRAVE -->
+        <td>&#x00FA;x <!-- U+00FA: LATIN SMALL LETTER U WITH ACUTE -->
+        <td>&#x00FB;x <!-- U+00FB: LATIN SMALL LETTER U WITH CIRCUMFLEX -->
+        <td>&#x00FC;x <!-- U+00FC: LATIN SMALL LETTER U WITH DIAERESIS -->
+    <tr>
+        <td>&#x00FD;x <!-- U+00FD: LATIN SMALL LETTER Y WITH ACUTE -->
+        <td>&#x00FE;x <!-- U+00FE: LATIN SMALL LETTER THORN -->
+        <td>&#x00FF;x <!-- U+00FF: LATIN SMALL LETTER Y WITH DIAERESIS -->
+        <td>&#x0131;x <!-- U+0131: LATIN SMALL LETTER DOTLESS I -->
+        <td>&#x0152;x <!-- U+0152: LATIN CAPITAL LIGATURE OE -->
+        <td>&#x0153;x <!-- U+0153: LATIN SMALL LIGATURE OE -->
+        <td>&#x0178;x <!-- U+0178: LATIN CAPITAL LETTER Y WITH DIAERESIS -->
+        <td>&#x0192;x <!-- U+0192: LATIN SMALL LETTER F WITH HOOK -->
+        <td>&#x02C6;x <!-- U+02C6: MODIFIER LETTER CIRCUMFLEX ACCENT -->
+        <td>&#x02C7;x <!-- U+02C7: CARON -->
+        <td>&#x02C9;x <!-- U+02C9: MODIFIER LETTER MACRON -->
+        <td>&#x02D8;x <!-- U+02D8: BREVE -->
+        <td>&#x02D9;x <!-- U+02D9: DOT ABOVE -->
+        <td>&#x02DA;x <!-- U+02DA: RING ABOVE -->
+        <td>&#x02DB;x <!-- U+02DB: OGONEK -->
+        <td>&#x02DC;x <!-- U+02DC: SMALL TILDE -->
+        <td>&#x02DD;x <!-- U+02DD: DOUBLE ACUTE ACCENT -->
+    <tr>
+        <td>&#x0394;x <!-- U+0394: GREEK CAPITAL LETTER DELTA -->
+        <td>&#x03A5;x <!-- U+03A5: GREEK CAPITAL LETTER UPSILON -->
+        <td>&#x03A7;x <!-- U+03A7: GREEK CAPITAL LETTER CHI -->
+        <td>&#x03A9;x <!-- U+03A9: GREEK CAPITAL LETTER OMEGA -->
+        <td>&#x03BC;x <!-- U+03BC: GREEK SMALL LETTER MU -->
+        <td>&#x03C0;x <!-- U+03C0: GREEK SMALL LETTER PI -->
+        <td>&#x2002;x <!-- U+2002: EN SPACE -->
+        <td>&#x2003;x <!-- U+2003: EM SPACE -->
+        <td>&#x2004;x <!-- U+2004: THREE-PER-EM SPACE -->
+        <td>&#x2005;x <!-- U+2005: FOUR-PER-EM SPACE -->
+        <td>&#x2006;x <!-- U+2006: SIX-PER-EM SPACE -->
+        <td>&#x2009;x <!-- U+2009: THIN SPACE -->
+        <td>&#x200A;x <!-- U+200A: HAIR SPACE -->
+        <td>&#x200B;x <!-- U+200B: ZERO WIDTH SPACE -->
+        <td>&#x200C;x <!-- U+200C: ZERO WIDTH NON-JOINER -->
+        <td>&#x200D;x <!-- U+200D: ZERO WIDTH JOINER -->
+        <td>&#x2010;x <!-- U+2010: HYPHEN -->
+    <tr>
+        <td>&#x2013;x <!-- U+2013: EN DASH -->
+        <td>&#x2014;x <!-- U+2014: EM DASH -->
+        <td>&#x2018;x <!-- U+2018: LEFT SINGLE QUOTATION MARK -->
+        <td>&#x2019;x <!-- U+2019: RIGHT SINGLE QUOTATION MARK -->
+        <td>&#x201A;x <!-- U+201A: SINGLE LOW-9 QUOTATION MARK -->
+        <td>&#x201C;x <!-- U+201C: LEFT DOUBLE QUOTATION MARK -->
+        <td>&#x201D;x <!-- U+201D: RIGHT DOUBLE QUOTATION MARK -->
+        <td>&#x201E;x <!-- U+201E: DOUBLE LOW-9 QUOTATION MARK -->
+        <td>&#x2020;x <!-- U+2020: DAGGER -->
+        <td>&#x2021;x <!-- U+2021: DOUBLE DAGGER -->
+        <td>&#x2022;x <!-- U+2022: BULLET -->
+        <td>&#x2026;x <!-- U+2026: HORIZONTAL ELLIPSIS -->
+        <td>&#x2030;x <!-- U+2030: PER MILLE SIGN -->
+        <td>&#x2039;x <!-- U+2039: SINGLE LEFT-POINTING ANGLE QUOTATION MARK -->
+        <td>&#x203A;x <!-- U+203A: SINGLE RIGHT-POINTING ANGLE QUOTATION MARK -->
+        <td>&#x2044;x <!-- U+2044: FRACTION SLASH -->
+        <td>&#x2122;x <!-- U+2122: TRADE MARK SIGN -->
+    <tr>
+        <td>&#x2126;x <!-- U+2126: OHM SIGN -->
+        <td>&#x2202;x <!-- U+2202: PARTIAL DIFFERENTIAL -->
+        <td>&#x2206;x <!-- U+2206: INCREMENT -->
+        <td>&#x220F;x <!-- U+220F: N-ARY PRODUCT -->
+        <td>&#x2211;x <!-- U+2211: N-ARY SUMMATION -->
+        <td>&#x2212;x <!-- U+2212: MINUS SIGN -->
+        <td>&#x2219;x <!-- U+2219: BULLET OPERATOR -->
+        <td>&#x221A;x <!-- U+221A: SQUARE ROOT -->
+        <td>&#x221E;x <!-- U+221E: INFINITY -->
+        <td>&#x222B;x <!-- U+222B: INTEGRAL -->
+        <td>&#x2248;x <!-- U+2248: ALMOST EQUAL TO -->
+        <td>&#x2260;x <!-- U+2260: NOT EQUAL TO -->
+        <td>&#x2264;x <!-- U+2264: LESS-THAN OR EQUAL TO -->
+        <td>&#x2265;x <!-- U+2265: GREATER-THAN OR EQUAL TO -->
+        <td>&#x22F2;x <!-- U+22F2: ELEMENT OF WITH LONG HORIZONTAL STROKE -->
+        <td>&#x25CA;x <!-- U+25CA: LOZENGE -->
+        <td>&#x3000;x <!-- U+3000: IDEOGRAPHIC SPACE -->
+    <tr>
+        <td>&#x3007;x <!-- U+3007: IDEOGRAPHIC NUMBER ZERO -->
+        <td>&#x4E00;x <!-- U+4E00: CJK UNIFIED IDEOGRAPH-4E00 -->
+        <td>&#x4E03;x <!-- U+4E03: CJK UNIFIED IDEOGRAPH-4E03 -->
+        <td>&#x4E09;x <!-- U+4E09: CJK UNIFIED IDEOGRAPH-4E09 -->
+        <td>&#x4E5D;x <!-- U+4E5D: CJK UNIFIED IDEOGRAPH-4E5D -->
+        <td>&#x4E8C;x <!-- U+4E8C: CJK UNIFIED IDEOGRAPH-4E8C -->
+        <td>&#x4E94;x <!-- U+4E94: CJK UNIFIED IDEOGRAPH-4E94 -->
+        <td>&#x516B;x <!-- U+516B: CJK UNIFIED IDEOGRAPH-516B -->
+        <td>&#x516D;x <!-- U+516D: CJK UNIFIED IDEOGRAPH-516D -->
+        <td>&#x5341;x <!-- U+5341: CJK UNIFIED IDEOGRAPH-5341 -->
+        <td>&#x56D7;x <!-- U+56D7: CJK UNIFIED IDEOGRAPH-56D7 -->
+        <td>&#x56DB;x <!-- U+56DB: CJK UNIFIED IDEOGRAPH-56DB -->
+        <td>&#x571F;x <!-- U+571F: CJK UNIFIED IDEOGRAPH-571F -->
+        <td>&#x6728;x <!-- U+6728: CJK UNIFIED IDEOGRAPH-6728 -->
+        <td>&#x6A2A;x <!-- U+6A2A: CJK UNIFIED IDEOGRAPH-6A2A -->
+        <td>&#x6C34;x <!-- U+6C34: CJK UNIFIED IDEOGRAPH-6C34 -->
+        <td>&#x706B;x <!-- U+706B: CJK UNIFIED IDEOGRAPH-706B -->
+    <tr>
+        <td>&#x7EB5;x <!-- U+7EB5: CJK UNIFIED IDEOGRAPH-7EB5 -->
+        <td>&#x91D1;x <!-- U+91D1: CJK UNIFIED IDEOGRAPH-91D1 -->
+        <td>&#xF000;x <!-- U+F000 -->
+        <td>&#xF001;x <!-- U+F001 -->
+        <td>&#xF002;x <!-- U+F002 -->
+        <td>&#xFEFF;x <!-- U+FEFF: ZERO WIDTH NO-BREAK SPACE -->
+</table>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/canvas-background-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/canvas-background-expected.html
new file mode 100644 (file)
index 0000000..b117f6b
--- /dev/null
@@ -0,0 +1,8 @@
+<!doctype html>
+<title>canvas background reference</title>
+<style>
+html {
+  background: white;
+}
+</style>
+<p>The background should be white
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/canvas-background.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/canvas-background.html
new file mode 100644 (file)
index 0000000..962edf5
--- /dev/null
@@ -0,0 +1,4 @@
+<!doctype html>
+<title>Check canvas background is white</title>
+<link rel="match" href="canvas-background-ref.html">
+<p>The background should be white
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/html-elements-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/html-elements-expected.txt
new file mode 100644 (file)
index 0000000..fad0283
--- /dev/null
@@ -0,0 +1,13 @@
+
+PASS (pre-req for comparison tests) all CSS short-hand supported 
+PASS (pre-req for comparison tests) initial CSS value supported 
+FAIL Compare CSS div definitions (only valid if pre-reqs pass) assert_equals: Different value for -webkit-mask-box-image-slice expected "0" but got "0 fill"
+FAIL Compare CSS span definitions (only valid if pre-reqs pass) assert_equals: Different value for -webkit-mask-box-image-slice expected "0" but got "0 fill"
+PASS p is display: block 
+PASS ul > li is display: list-item 
+PASS ol > li is display: list-item 
+PASS table is display: table 
+PASS tbody is display: table-row-group 
+PASS tr is display: table-row 
+PASS td is display: table-cell 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/html-elements.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/html-elements.html
new file mode 100644 (file)
index 0000000..3fe3d20
--- /dev/null
@@ -0,0 +1,133 @@
+<!doctype html>
+<title>HTML styles</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+#parent {
+  display: none;
+}
+
+div.b {
+  all: initial;
+  direction: initial;
+  unicode-bidi: isolate;
+  display: block;
+}
+
+div.c {
+  background: red;
+  background: initial;
+}
+
+span.b {
+  all: initial;
+  direction: initial;
+  unicode-bidi: initial;
+  display: inline;
+}
+</style>
+<div id="parent">
+  <div class="a"></div>
+  <div class="b"></div>
+  <div class="c"></div>
+  <span class="a"></span>
+  <span class="b"></span>
+  <p></p>
+  <ul>
+    <li>
+  </ul>
+  <ol>
+    <li>
+  </ol>
+  <table>
+    <tbody>
+      <tr>
+        <td>
+  </table>
+</div>
+<script>
+test(function() {
+  assert_true('all' in document.documentElement.style);
+}, "(pre-req for comparison tests) all CSS short-hand supported");
+
+test(function() {
+  assert_in_array(window.getComputedStyle(document.querySelector("div.c")).backgroundColor,
+                  ["rgba(0, 0, 0, 0)", "transparent"]);
+}, "(pre-req for comparison tests) initial CSS value supported");
+
+test(function() {
+  var a = document.querySelector("div.a");
+  var b = document.querySelector("div.b");
+
+  var a_styles = window.getComputedStyle(a);
+  var b_styles = window.getComputedStyle(b);
+
+  assert_equals(a_styles.length, b_styles.length, "Same properties on both div.a and div.b");
+
+  for (var i = 0; i < a_styles.length; i++) {
+    var property = a_styles[i];
+    assert_equals(property, b_styles[i], "Same property on div.a and div.b");
+    if (property !== "unicode-bidi") {
+      assert_equals(a_styles[property], b_styles[property], "Different value for " + property);
+    }
+  }
+}, "Compare CSS div definitions (only valid if pre-reqs pass)");
+
+test(function() {
+  var a = document.querySelector("span.a");
+  var b = document.querySelector("span.b");
+
+  var a_styles = window.getComputedStyle(a);
+  var b_styles = window.getComputedStyle(b);
+
+  assert_equals(a_styles.length, b_styles.length, "Same properties on both span.a and span.b");
+
+  for (var i = 0; i < a_styles.length; i++) {
+    var property = a_styles[i];
+    assert_equals(property, b_styles[i], "Same property on span.a and span.b");
+    assert_equals(a_styles[property], b_styles[property], "Different value for " + property);
+  }
+}, "Compare CSS span definitions (only valid if pre-reqs pass)");
+
+test(function() {
+  var p = document.getElementsByTagName("p")[0];
+  var styles = window.getComputedStyle(p);
+  assert_equals(styles["display"], "block");
+}, "p is display: block");
+
+test(function() {
+  var ul_li = document.querySelector("ul > li");
+  var styles = window.getComputedStyle(ul_li);
+  assert_equals(styles["display"], "list-item");
+}, "ul > li is display: list-item");
+
+test(function() {
+  var ol_li = document.querySelector("ol > li");
+  var styles = window.getComputedStyle(ol_li);
+  assert_equals(styles["display"], "list-item");
+}, "ol > li is display: list-item");
+
+test(function() {
+  var table = document.getElementsByTagName("table")[0];
+  var styles = window.getComputedStyle(table);
+  assert_equals(styles["display"], "table");
+}, "table is display: table");
+
+test(function() {
+  var tbody = document.getElementsByTagName("tbody")[0];
+  var styles = window.getComputedStyle(tbody);
+  assert_equals(styles["display"], "table-row-group");
+}, "tbody is display: table-row-group");
+
+test(function() {
+  var tr = document.getElementsByTagName("tr")[0];
+  var styles = window.getComputedStyle(tr);
+  assert_equals(styles["display"], "table-row");
+}, "tr is display: table-row");
+
+test(function() {
+  var td = document.getElementsByTagName("td")[0];
+  var styles = window.getComputedStyle(td);
+  assert_equals(styles["display"], "table-cell");
+}, "td is display: table-cell");
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/initial-color-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/initial-color-expected.html
new file mode 100644 (file)
index 0000000..46dd110
--- /dev/null
@@ -0,0 +1,12 @@
+<!doctype html>
+<title>Initial color is black reference</title>
+<style>
+html {
+  background: white;
+}
+
+p {
+  color: black;
+}
+</style>
+<p>The text should be black
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/initial-color.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/initial-color.html
new file mode 100644 (file)
index 0000000..f1033c7
--- /dev/null
@@ -0,0 +1,9 @@
+<!doctype html>
+<title>Initial color is black</title>
+<link rel="match" href="initial-color-ref.html">
+<style>
+html {
+  background: white;
+}
+</style>
+<p>The text should be black
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/medium-font-size-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/medium-font-size-expected.html
new file mode 100644 (file)
index 0000000..c1600ec
--- /dev/null
@@ -0,0 +1,8 @@
+<!doctype html>
+<title>medium font-size reference</title>
+<style>
+p {
+  font-size: 16px;
+}
+</style>
+<p>This text should be 16px
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/medium-font-size.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/medium-font-size.html
new file mode 100644 (file)
index 0000000..f4c303d
--- /dev/null
@@ -0,0 +1,9 @@
+<!doctype html>
+<title>Check medium font-size is 16px</title>
+<link rel="match" href="medium-font-size-ref.html">
+<style>
+p {
+  font-size: medium;
+}
+</style>
+<p>This text should be 16px
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/min-font-size-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/min-font-size-expected.html
new file mode 100644 (file)
index 0000000..013970b
--- /dev/null
@@ -0,0 +1,8 @@
+<!doctype html>
+<title>Tiny text reference</title>
+<style>
+p {
+  font-size: 2px;
+}
+</style>
+<p>Tiny text
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/min-font-size.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/min-font-size.html
new file mode 100644 (file)
index 0000000..a4b9a1c
--- /dev/null
@@ -0,0 +1,9 @@
+<!doctype html>
+<title>Check 1px and 2px font-sizes are different</title>
+<link rel="mismatch" href="min-font-size-ref.html">
+<style>
+p {
+  font-size: 1px;
+}
+</style>
+<p>Tiny text
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/non-secure-context.any-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/non-secure-context.any-expected.txt
new file mode 100644 (file)
index 0000000..2b3db84
--- /dev/null
@@ -0,0 +1,4 @@
+
+FAIL Lack of .https file name flag implies non-secure context assert_false: expected false got true
+PASS Lack of .https file name flag implies HTTP scheme 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/non-secure-context.any.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/non-secure-context.any.html
new file mode 100644 (file)
index 0000000..2382913
--- /dev/null
@@ -0,0 +1 @@
+<!-- This file is required for WebKit test infrastructure to run the templated test -->
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/non-secure-context.any.js b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/non-secure-context.any.js
new file mode 100644 (file)
index 0000000..c05689f
--- /dev/null
@@ -0,0 +1,9 @@
+test(() => {
+  assert_false(self.isSecureContext);
+}, "Lack of .https file name flag implies non-secure context");
+
+test(() => {
+  assert_equals(location.protocol, "http:");
+}, "Lack of .https file name flag implies HTTP scheme");
+
+done();
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/non-secure-context.any.worker-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/non-secure-context.any.worker-expected.txt
new file mode 100644 (file)
index 0000000..2b3db84
--- /dev/null
@@ -0,0 +1,4 @@
+
+FAIL Lack of .https file name flag implies non-secure context assert_false: expected false got true
+PASS Lack of .https file name flag implies HTTP scheme 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/non-secure-context.any.worker.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/non-secure-context.any.worker.html
new file mode 100644 (file)
index 0000000..2382913
--- /dev/null
@@ -0,0 +1 @@
+<!-- This file is required for WebKit test infrastructure to run the templated test -->
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/tools/ahem-generate-table.py b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/tools/ahem-generate-table.py
new file mode 100644 (file)
index 0000000..8790da0
--- /dev/null
@@ -0,0 +1,129 @@
+from __future__ import print_function, unicode_literals
+
+import itertools
+import unicodedata
+
+from fontTools.ttLib import TTFont
+
+try:
+    chr(0x100)
+except ValueError:
+    chr = unichr
+
+def grouper(n, iterable):
+    """
+    >>> list(grouper(3, 'ABCDEFG'))
+    [['A', 'B', 'C'], ['D', 'E', 'F'], ['G']]
+    """
+    iterable = iter(iterable)
+    return iter(lambda: list(itertools.islice(iterable, n)), [])
+
+ttf = TTFont("../../../fonts/Ahem.ttf")
+
+chars = {char for table in ttf['cmap'].tables for char in table.cmap.keys()}
+
+# exclude chars that can't be represented as HTML numeric character refs
+chars = chars - (set(range(0x80, 0x9F+1)) | {0x00})
+
+chars_sorted = sorted(chars)
+
+per_row = 17
+
+
+doctype = "<!doctype html>"
+title = "<title>Ahem checker</title>"
+style_open = """
+<style>
+* {
+  padding: 0;
+  margin: 0;
+  border: none;
+}
+td {
+  width: 34px;
+}""".strip()
+style_close = "</style>"
+style_font_face = """
+@font-face {
+  font-family: Ahem;
+  src: url("../../fonts/Ahem.ttf");
+}""".strip()
+style_table_font_specified = """
+table {
+  font: 15px/1 Ahem;
+  border-collapse: separate;
+  border-spacing: 1px;
+  table-layout: fixed;
+}""".strip()
+style_table_font_unspecified = """
+table {
+  font-size: 15px;
+  line-height: 1;
+  border-collapse: separate;
+  border-spacing: 1px;
+  table-layout: fixed;
+}""".strip()
+
+
+def build_header(is_test, rel, href):
+    rv = [doctype, title]
+
+    if rel != None and href != None:
+        rv.append('<link rel="%s" href="%s">' % (rel, href))
+
+    rv.append(style_open)
+
+    if not is_test:
+        if rel == None and href == None:
+            # ahem-notref.html
+            rv.append(style_table_font_unspecified)
+        else:
+            # ahem-ref.html
+            rv.append(style_font_face)
+            rv.append(style_table_font_specified)
+    else:
+        # ahem.html
+        rv.append(style_table_font_specified)
+
+    rv.append(style_close)
+
+    return "\n".join(rv)
+
+
+def build_table():
+    rv = ["\n"]
+
+    rv.append("<table>\n")
+    for row in grouper(per_row, chars_sorted):
+        rv.append(" " * 4 + "<tr>\n")
+        for codepoint in row:
+            assert codepoint <= 0xFFFF
+            try:
+                name = unicodedata.name(chr(codepoint))
+            except ValueError:
+                rv.append(" " * 8 + "<td>&#x%04X;x <!-- U+%04X -->\n" % (codepoint, codepoint))
+            else:
+                rv.append(" " * 8 + "<td>&#x%04X;x <!-- U+%04X: %s -->\n" % (codepoint, codepoint, name))
+    rv.append("</table>\n")
+
+    return "".join(rv)
+
+
+cases = [
+    # file, is_test, rel
+    ("../ahem.html", True, "match"),
+    ("../ahem-ref.html", False, "mismatch"),
+    ("../ahem-notref.html", False, None),
+]
+
+table = build_table()
+
+for index, case in enumerate(cases):
+    next_index = index + 1
+    file, is_test, rel = case
+    href = cases[next_index][0][3:] if next_index < len(cases) else None
+    header = build_header(is_test, rel, href)
+
+    with open(file, "w") as file:
+        file.write("%s%s" % (header, table))
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/tools/build.sh b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/tools/build.sh
new file mode 100644 (file)
index 0000000..d40f63a
--- /dev/null
@@ -0,0 +1,7 @@
+#!/usr/bin/env sh
+set -ex
+
+cd "${0%/*}"
+virtualenv -p python .virtualenv
+.virtualenv/bin/pip install fonttools==3.13.1
+.virtualenv/bin/python ahem-generate-table.py
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/tools/w3c-import.log b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/tools/w3c-import.log
new file mode 100644 (file)
index 0000000..fb03926
--- /dev/null
@@ -0,0 +1,18 @@
+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in WebKit.
+Instead, create a pull request on the WPT github:
+       https://github.com/web-platform-tests/wpt
+
+Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
+
+Do NOT modify or remove this file.
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/tools/ahem-generate-table.py
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/tools/build.sh
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/w3c-import.log b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/w3c-import.log
new file mode 100644 (file)
index 0000000..2434935
--- /dev/null
@@ -0,0 +1,32 @@
+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in WebKit.
+Instead, create a pull request on the WPT github:
+       https://github.com/web-platform-tests/wpt
+
+Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
+
+Do NOT modify or remove this file.
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/META.yml
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/ahem-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/ahem-notref.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/ahem-ref-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/ahem-ref.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/ahem.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/canvas-background-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/canvas-background.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/html-elements.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/initial-color-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/initial-color.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/medium-font-size-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/medium-font-size.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/min-font-size-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/min-font-size.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/assumptions/non-secure-context.any.js
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/browsers/firefox/prefs.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/browsers/firefox/prefs.html
new file mode 100644 (file)
index 0000000..51f9f99
--- /dev/null
@@ -0,0 +1,8 @@
+<title>Ensure that setting gecko prefs works</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script>
+assert_equals(getComputedStyle(document.documentElement).color, "rgb(0, 255, 0)")
+done();
+</script>
+<p>This should be green</p>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/browsers/firefox/w3c-import.log b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/browsers/firefox/w3c-import.log
new file mode 100644 (file)
index 0000000..068a4de
--- /dev/null
@@ -0,0 +1,17 @@
+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in WebKit.
+Instead, create a pull request on the WPT github:
+       https://github.com/web-platform-tests/wpt
+
+Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
+
+Do NOT modify or remove this file.
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/browsers/firefox/prefs.html
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/expected-fail/failing-test.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/expected-fail/failing-test.html
new file mode 100644 (file)
index 0000000..249099c
--- /dev/null
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>Failing test</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script>
+test(function() {
+  assert_unreached("Expected failure");
+});
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/expected-fail/timeout.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/expected-fail/timeout.html
new file mode 100644 (file)
index 0000000..29ff348
--- /dev/null
@@ -0,0 +1,8 @@
+<!DOCTYPE html>
+<meta charset=utf-8>
+<title>Test that should time out</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script>
+async_test()
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/expected-fail/w3c-import.log b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/expected-fail/w3c-import.log
new file mode 100644 (file)
index 0000000..9d141af
--- /dev/null
@@ -0,0 +1,18 @@
+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in WebKit.
+Instead, create a pull request on the WPT github:
+       https://github.com/web-platform-tests/wpt
+
+Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
+
+Do NOT modify or remove this file.
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/expected-fail/failing-test.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/expected-fail/timeout.html
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/__dir__.ini b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/__dir__.ini
new file mode 100644 (file)
index 0000000..3e0ed18
--- /dev/null
@@ -0,0 +1,2 @@
+disabled:
+  if product != "firefox": true
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/prefs.html.ini b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/prefs.html.ini
new file mode 100644 (file)
index 0000000..7b78d21
--- /dev/null
@@ -0,0 +1,2 @@
+[prefs.html]
+  prefs: ["browser.display.foreground_color:#00FF00"]
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/w3c-import.log b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/w3c-import.log
new file mode 100644 (file)
index 0000000..8f4bd18
--- /dev/null
@@ -0,0 +1,18 @@
+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in WebKit.
+Instead, create a pull request on the WPT github:
+       https://github.com/web-platform-tests/wpt
+
+Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
+
+Do NOT modify or remove this file.
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/__dir__.ini
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/prefs.html.ini
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/expected-fail/failing-test.html.ini b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/expected-fail/failing-test.html.ini
new file mode 100644 (file)
index 0000000..b954a0e
--- /dev/null
@@ -0,0 +1,4 @@
+[failing-test.html]
+  [Failing test]
+    expected: FAIL
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/expected-fail/timeout.html.ini b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/expected-fail/timeout.html.ini
new file mode 100644 (file)
index 0000000..53b281f
--- /dev/null
@@ -0,0 +1,4 @@
+[timeout.html]
+  expected: TIMEOUT
+  [Test that should time out]
+    expected: NOTRUN
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/expected-fail/w3c-import.log b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/expected-fail/w3c-import.log
new file mode 100644 (file)
index 0000000..9dbc6f8
--- /dev/null
@@ -0,0 +1,18 @@
+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in WebKit.
+Instead, create a pull request on the WPT github:
+       https://github.com/web-platform-tests/wpt
+
+Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
+
+Do NOT modify or remove this file.
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/expected-fail/failing-test.html.ini
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/expected-fail/timeout.html.ini
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_and_fail.html.ini b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_and_fail.html.ini
new file mode 100644 (file)
index 0000000..81aef04
--- /dev/null
@@ -0,0 +1,3 @@
+[reftest_and_fail.html]
+  type: reftest
+  expected: FAIL
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_cycle_fail.html.ini b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_cycle_fail.html.ini
new file mode 100644 (file)
index 0000000..472b33f
--- /dev/null
@@ -0,0 +1,3 @@
+[reftest_cycle_fail.html]
+  type: reftest
+  expected: FAIL
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_match_fail.html.ini b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_match_fail.html.ini
new file mode 100644 (file)
index 0000000..f3dc336
--- /dev/null
@@ -0,0 +1,3 @@
+[reftest_match_fail.html]
+  type: reftest
+  expected: FAIL
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_mismatch_fail.html.ini b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_mismatch_fail.html.ini
new file mode 100644 (file)
index 0000000..1055337
--- /dev/null
@@ -0,0 +1,3 @@
+[reftest_mismatch_fail.html]
+  type: reftest
+  expected: FAIL
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_ref_timeout.html.ini b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_ref_timeout.html.ini
new file mode 100644 (file)
index 0000000..8936241
--- /dev/null
@@ -0,0 +1,3 @@
+[reftest_ref_timeout.html]
+  type: reftest
+  expected: TIMEOUT
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_timeout.html.ini b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_timeout.html.ini
new file mode 100644 (file)
index 0000000..0d1b9ba
--- /dev/null
@@ -0,0 +1,3 @@
+[reftest_timeout.html]
+  type: reftest
+  expected: TIMEOUT
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/w3c-import.log b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/w3c-import.log
new file mode 100644 (file)
index 0000000..cdc81c6
--- /dev/null
@@ -0,0 +1,22 @@
+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in WebKit.
+Instead, create a pull request on the WPT github:
+       https://github.com/web-platform-tests/wpt
+
+Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
+
+Do NOT modify or remove this file.
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_and_fail.html.ini
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_cycle_fail.html.ini
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_match_fail.html.ini
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_mismatch_fail.html.ini
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_ref_timeout.html.ini
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_timeout.html.ini
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest-wait-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest-wait-expected.html
new file mode 100644 (file)
index 0000000..6772c2c
--- /dev/null
@@ -0,0 +1,13 @@
+<!DOCTYPE html>
+<title>Reference for Test infrastructure should support 'reftest-wait'</title>
+<style>
+.marker {
+    margin-bottom: 10px;
+    background: green;
+    height: 50px;
+    width: 50px;
+}
+</style>
+
+<div class="marker"></div>
+<div>The box above should be green.</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest-wait.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest-wait.html
new file mode 100644 (file)
index 0000000..c2e9986
--- /dev/null
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<html class="reftest-wait">
+<title>Test infrastructure should support 'reftest-wait'</title>
+<link rel="match" href="reftest-wait-ref.html">
+<style>
+.marker {
+    margin-bottom: 10px;
+    background: red;
+    height: 50px;
+    width: 50px;
+}
+</style>
+<script>
+setTimeout(function() {
+    document.querySelector(".marker").style.background = 'green';
+    document.documentElement.classList.remove("reftest-wait");
+}, 1000);
+</script>
+<div class="marker"></div>
+<div>The box above should be green.</div>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/green-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/green-expected.html
new file mode 100644 (file)
index 0000000..0e145d6
--- /dev/null
@@ -0,0 +1,4 @@
+<link rel=match href=green.html>
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/green-ref-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/green-ref-expected.html
new file mode 100644 (file)
index 0000000..38167bb
--- /dev/null
@@ -0,0 +1,3 @@
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/green-ref.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/green-ref.html
new file mode 100644 (file)
index 0000000..0e145d6
--- /dev/null
@@ -0,0 +1,4 @@
+<link rel=match href=green.html>
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/green.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/green.html
new file mode 100644 (file)
index 0000000..38167bb
--- /dev/null
@@ -0,0 +1,3 @@
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/red.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/red.html
new file mode 100644 (file)
index 0000000..2b677e0
--- /dev/null
@@ -0,0 +1,3 @@
+<style>
+:root {background-color:red}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest.https-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest.https-expected.html
new file mode 100644 (file)
index 0000000..38167bb
--- /dev/null
@@ -0,0 +1,3 @@
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest.https.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest.https.html
new file mode 100644 (file)
index 0000000..5a45f10
--- /dev/null
@@ -0,0 +1,9 @@
+<link rel=match href=green.html>
+<style>
+:root {background-color:red}
+</style>
+<script>
+if (window.location.protocol === "https:") {
+   document.documentElement.style.backgroundColor = "green";
+}
+</script>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_and_fail-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_and_fail-expected.html
new file mode 100644 (file)
index 0000000..04fb9aa
--- /dev/null
@@ -0,0 +1,5 @@
+<title>Reftest chain that should fail</title>
+<link rel=match href=red.html>
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_and_fail.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_and_fail.html
new file mode 100644 (file)
index 0000000..2960195
--- /dev/null
@@ -0,0 +1,5 @@
+<title>Reftest chain that should fail</title>
+<link rel=match href=reftest_and_fail_0-ref.html>
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_and_fail_0-ref-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_and_fail_0-ref-expected.html
new file mode 100644 (file)
index 0000000..2b677e0
--- /dev/null
@@ -0,0 +1,3 @@
+<style>
+:root {background-color:red}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_and_fail_0-ref.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_and_fail_0-ref.html
new file mode 100644 (file)
index 0000000..04fb9aa
--- /dev/null
@@ -0,0 +1,5 @@
+<title>Reftest chain that should fail</title>
+<link rel=match href=red.html>
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle-expected.html
new file mode 100644 (file)
index 0000000..118bfd8
--- /dev/null
@@ -0,0 +1,5 @@
+<title>OR match that should pass</title>
+<link rel=match href=reftest_cycle_1-ref.html>
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle.html
new file mode 100644 (file)
index 0000000..4a84a3b
--- /dev/null
@@ -0,0 +1,5 @@
+<title>Reftest with cycle, all match</title>
+<link rel=match href=reftest_cycle_0-ref.html>
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_0-ref-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_0-ref-expected.html
new file mode 100644 (file)
index 0000000..59be0b6
--- /dev/null
@@ -0,0 +1,5 @@
+<title>Reftest with cycle, all match</title>
+<link rel=match href=reftest_cycle.html>
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_0-ref.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_0-ref.html
new file mode 100644 (file)
index 0000000..118bfd8
--- /dev/null
@@ -0,0 +1,5 @@
+<title>OR match that should pass</title>
+<link rel=match href=reftest_cycle_1-ref.html>
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_1-ref-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_1-ref-expected.html
new file mode 100644 (file)
index 0000000..4a84a3b
--- /dev/null
@@ -0,0 +1,5 @@
+<title>Reftest with cycle, all match</title>
+<link rel=match href=reftest_cycle_0-ref.html>
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_1-ref.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_1-ref.html
new file mode 100644 (file)
index 0000000..59be0b6
--- /dev/null
@@ -0,0 +1,5 @@
+<title>Reftest with cycle, all match</title>
+<link rel=match href=reftest_cycle.html>
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_fail-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_fail-expected.html
new file mode 100644 (file)
index 0000000..c8e548c
--- /dev/null
@@ -0,0 +1,5 @@
+<title>Reftest with cycle, fails</title>
+<link rel=mismatch href=reftest_cycle_fail.html>
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_fail.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_fail.html
new file mode 100644 (file)
index 0000000..175e76c
--- /dev/null
@@ -0,0 +1,5 @@
+<title>Reftest with cycle, fails</title>
+<link rel=match href=reftest_cycle_fail_0-ref.html>
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_fail_0-ref-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_fail_0-ref-expected.html
new file mode 100644 (file)
index 0000000..175e76c
--- /dev/null
@@ -0,0 +1,5 @@
+<title>Reftest with cycle, fails</title>
+<link rel=match href=reftest_cycle_fail_0-ref.html>
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_fail_0-ref.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_fail_0-ref.html
new file mode 100644 (file)
index 0000000..c8e548c
--- /dev/null
@@ -0,0 +1,5 @@
+<title>Reftest with cycle, fails</title>
+<link rel=mismatch href=reftest_cycle_fail.html>
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_match-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_match-expected.html
new file mode 100644 (file)
index 0000000..38167bb
--- /dev/null
@@ -0,0 +1,3 @@
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_match.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_match.html
new file mode 100644 (file)
index 0000000..333cc6c
--- /dev/null
@@ -0,0 +1,5 @@
+<title>rel=match that should pass</title>
+<link rel=match href=green.html>
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_match_fail-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_match_fail-expected.html
new file mode 100644 (file)
index 0000000..2b677e0
--- /dev/null
@@ -0,0 +1,3 @@
+<style>
+:root {background-color:red}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_match_fail.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_match_fail.html
new file mode 100644 (file)
index 0000000..a9272ef
--- /dev/null
@@ -0,0 +1,5 @@
+<title>rel=match that should fail</title>
+<link rel=match href=red.html>
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_mismatch-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_mismatch-expected.html
new file mode 100644 (file)
index 0000000..2b677e0
--- /dev/null
@@ -0,0 +1,3 @@
+<style>
+:root {background-color:red}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_mismatch.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_mismatch.html
new file mode 100644 (file)
index 0000000..af5fa07
--- /dev/null
@@ -0,0 +1,5 @@
+<title>rel=mismatch that should pass</title>
+<link rel=mismatch href=red.html>
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_mismatch_fail-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_mismatch_fail-expected.html
new file mode 100644 (file)
index 0000000..38167bb
--- /dev/null
@@ -0,0 +1,3 @@
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_mismatch_fail.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_mismatch_fail.html
new file mode 100644 (file)
index 0000000..8d160c4
--- /dev/null
@@ -0,0 +1,5 @@
+<title>rel=mismatch that should fail</title>
+<link rel=mismatch href=green.html>
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_or_0-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_or_0-expected.html
new file mode 100644 (file)
index 0000000..2b677e0
--- /dev/null
@@ -0,0 +1,3 @@
+<style>
+:root {background-color:red}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_or_0.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_or_0.html
new file mode 100644 (file)
index 0000000..3a51de2
--- /dev/null
@@ -0,0 +1,6 @@
+<title>OR match that should pass</title>
+<link rel=match href=red.html>
+<link rel=match href=green.html>
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_ref_timeout-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_ref_timeout-expected.html
new file mode 100644 (file)
index 0000000..2f52c05
--- /dev/null
@@ -0,0 +1,5 @@
+<html class="reftest-wait">
+<title>rel=match that should time out in the ref</title>
+<style>
+:root {background-color:green}
+</style>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_ref_timeout.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_ref_timeout.html
new file mode 100644 (file)
index 0000000..aaf68f5
--- /dev/null
@@ -0,0 +1,6 @@
+<html>
+<title>rel=match that should time out in the ref</title>
+<link rel=match href=reftest_ref_timeout-ref.html>
+<style>
+:root {background-color:green}
+</style>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_timeout-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_timeout-expected.html
new file mode 100644 (file)
index 0000000..38167bb
--- /dev/null
@@ -0,0 +1,3 @@
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_timeout.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_timeout.html
new file mode 100644 (file)
index 0000000..b10e676
--- /dev/null
@@ -0,0 +1,6 @@
+<html class="reftest-wait">
+<title>rel=match that should timeout</title>
+<link rel=match href=green.html>
+<style>
+:root {background-color:green}
+</style>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_wait_0-expected.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_wait_0-expected.html
new file mode 100644 (file)
index 0000000..38167bb
--- /dev/null
@@ -0,0 +1,3 @@
+<style>
+:root {background-color:green}
+</style>
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_wait_0.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_wait_0.html
new file mode 100644 (file)
index 0000000..fec62a3
--- /dev/null
@@ -0,0 +1,13 @@
+<html class="reftest-wait">
+<title>Test with reftest-wait</title>
+<link rel=match href=green.html>
+<style>
+:root {background-color:red}
+</style>
+<script>
+setTimeout(function() {
+  document.documentElement.style.backgroundColor = "green";
+  document.documentElement.className = "";
+}, 2000);
+</script>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/w3c-import.log b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/w3c-import.log
new file mode 100644 (file)
index 0000000..eb77726
--- /dev/null
@@ -0,0 +1,53 @@
+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in WebKit.
+Instead, create a pull request on the WPT github:
+       https://github.com/web-platform-tests/wpt
+
+Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
+
+Do NOT modify or remove this file.
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/green-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/green-ref-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/green-ref.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/green.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/red.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest.https-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest.https.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_and_fail-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_and_fail.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_and_fail_0-ref-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_and_fail_0-ref.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_0-ref-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_0-ref.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_1-ref-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_1-ref.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_fail-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_fail.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_fail_0-ref-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_cycle_fail_0-ref.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_match-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_match.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_match_fail-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_match_fail.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_mismatch-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_mismatch.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_mismatch_fail-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_mismatch_fail.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_or_0-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_or_0.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_ref_timeout-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_ref_timeout.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_timeout-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_timeout.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_wait_0-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest/reftest_wait_0.html
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/order-of-metas.any-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/order-of-metas.any-expected.txt
new file mode 100644 (file)
index 0000000..9116ff7
--- /dev/null
@@ -0,0 +1,6 @@
+CONSOLE MESSAGE: line 1: ReferenceError: Can't find variable: test
+CONSOLE MESSAGE: line 1: ReferenceError: Can't find variable: test
+CONSOLE MESSAGE: line 2: ReferenceError: Can't find variable: test
+
+FAIL order of scripts assert_array_equals: value is undefined, expected array
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/order-of-metas.any.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/order-of-metas.any.html
new file mode 100644 (file)
index 0000000..2382913
--- /dev/null
@@ -0,0 +1 @@
+<!-- This file is required for WebKit test infrastructure to run the templated test -->
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/order-of-metas.any.js b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/order-of-metas.any.js
new file mode 100644 (file)
index 0000000..20f6784
--- /dev/null
@@ -0,0 +1,10 @@
+// META: global=window,dedicatedworker,sharedworker
+// META: script=resources/expect-seen-testharness.js
+// META: timeout=long
+// META: title=foo
+// META: script=resources/expect-global.js
+// META: script=resources/expect-title-meta.js
+
+test(() => {
+  assert_array_equals(scripts, ['expect-seen-testharness.js', 'expect-global.js', 'expect-title-meta.js']);
+}, "order of scripts");
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/order-of-metas.any.worker-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/order-of-metas.any.worker-expected.txt
new file mode 100644 (file)
index 0000000..e8ed7c7
--- /dev/null
@@ -0,0 +1,7 @@
+CONSOLE MESSAGE: line 1: ReferenceError: Can't find variable: test
+CONSOLE MESSAGE: line 1: ReferenceError: Can't find variable: test
+CONSOLE MESSAGE: line 2: ReferenceError: Can't find variable: test
+
+Harness Error (FAIL), message = Error in remote http://localhost:8800/infrastructure/server/resources/expect-seen-testharness.js: ReferenceError: Can't find variable: test
+
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/order-of-metas.any.worker.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/order-of-metas.any.worker.html
new file mode 100644 (file)
index 0000000..2382913
--- /dev/null
@@ -0,0 +1 @@
+<!-- This file is required for WebKit test infrastructure to run the templated test -->
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/order-of-metas.window.js b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/order-of-metas.window.js
new file mode 100644 (file)
index 0000000..ec28480
--- /dev/null
@@ -0,0 +1,8 @@
+// META: script=resources/expect-seen-testharness.js
+// META: timeout=long
+// META: title=foo
+// META: script=resources/expect-title-meta.js
+
+test(() => {
+  assert_array_equals(scripts, ['expect-seen-testharness.js', 'expect-title-meta.js']);
+}, "order of scripts");
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/resources/expect-global.js b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/resources/expect-global.js
new file mode 100644 (file)
index 0000000..63d4944
--- /dev/null
@@ -0,0 +1,5 @@
+test(() => {
+  assert_true('GLOBAL' in self);
+}, 'GLOBAL exists');
+
+scripts.push('expect-global.js');
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/resources/expect-seen-testharness.js b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/resources/expect-seen-testharness.js
new file mode 100644 (file)
index 0000000..29af1fc
--- /dev/null
@@ -0,0 +1,5 @@
+test(() => {
+  assert_true('add_completion_callback' in self);
+}, 'add_completion_callback exists');
+
+var scripts = ['expect-seen-testharness.js'];
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/resources/expect-title-meta.js b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/resources/expect-title-meta.js
new file mode 100644 (file)
index 0000000..d17588a
--- /dev/null
@@ -0,0 +1,11 @@
+if (!self.GLOBAL || self.GLOBAL.isWindow()) {
+  test(() => {
+    assert_equals(document.title, "foo");
+  }, '<title> exists');
+
+  test(() => {
+    assert_equals(document.querySelectorAll("meta[name=timeout][content=long]").length, 1);
+  }, '<meta name=timeout> exists');
+}
+
+scripts.push('expect-title-meta.js');
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/resources/w3c-import.log b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/resources/w3c-import.log
new file mode 100644 (file)
index 0000000..c879110
--- /dev/null
@@ -0,0 +1,19 @@
+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in WebKit.
+Instead, create a pull request on the WPT github:
+       https://github.com/web-platform-tests/wpt
+
+Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
+
+Do NOT modify or remove this file.
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/resources/expect-global.js
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/resources/expect-seen-testharness.js
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/resources/expect-title-meta.js
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/secure-context.https.any-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/secure-context.https.any-expected.txt
new file mode 100644 (file)
index 0000000..efae35c
--- /dev/null
@@ -0,0 +1,4 @@
+
+PASS Use of .https file name flag implies secure context 
+PASS Use of .https file name flag implies HTTPS scheme 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/secure-context.https.any.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/secure-context.https.any.html
new file mode 100644 (file)
index 0000000..2382913
--- /dev/null
@@ -0,0 +1 @@
+<!-- This file is required for WebKit test infrastructure to run the templated test -->
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/secure-context.https.any.js b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/secure-context.https.any.js
new file mode 100644 (file)
index 0000000..99f6c4c
--- /dev/null
@@ -0,0 +1,9 @@
+test(() => {
+  assert_true(self.isSecureContext);
+}, "Use of .https file name flag implies secure context");
+
+test(() => {
+  assert_equals(location.protocol, "https:");
+}, "Use of .https file name flag implies HTTPS scheme");
+
+done();
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/secure-context.https.any.worker-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/secure-context.https.any.worker-expected.txt
new file mode 100644 (file)
index 0000000..efae35c
--- /dev/null
@@ -0,0 +1,4 @@
+
+PASS Use of .https file name flag implies secure context 
+PASS Use of .https file name flag implies HTTPS scheme 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/secure-context.https.any.worker.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/secure-context.https.any.worker.html
new file mode 100644 (file)
index 0000000..2382913
--- /dev/null
@@ -0,0 +1 @@
+<!-- This file is required for WebKit test infrastructure to run the templated test -->
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/title.any-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/title.any-expected.txt
new file mode 100644 (file)
index 0000000..da2cebe
--- /dev/null
@@ -0,0 +1,3 @@
+
+FAIL Untitled assert_equals: expected "foobar" but got ""
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/title.any.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/title.any.html
new file mode 100644 (file)
index 0000000..2382913
--- /dev/null
@@ -0,0 +1 @@
+<!-- This file is required for WebKit test infrastructure to run the templated test -->
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/title.any.js b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/title.any.js
new file mode 100644 (file)
index 0000000..df2f8b0
--- /dev/null
@@ -0,0 +1,13 @@
+// META: global=window,dedicatedworker,sharedworker
+// META: title=foobar
+test(t => {
+  if (GLOBAL.isWindow()) {
+    assert_equals(document.title, 'foobar');
+    assert_false('META_TITLE' in self);
+  } else {
+    assert_equals(META_TITLE, 'foobar');
+  }
+  assert_equals(t.name, 'foobar');
+});
+
+done();
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/title.any.worker-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/title.any.worker-expected.txt
new file mode 100644 (file)
index 0000000..23f5ccd
--- /dev/null
@@ -0,0 +1,3 @@
+
+FAIL Untitled Can't find variable: META_TITLE
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/title.any.worker.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/title.any.worker.html
new file mode 100644 (file)
index 0000000..2382913
--- /dev/null
@@ -0,0 +1 @@
+<!-- This file is required for WebKit test infrastructure to run the templated test -->
\ No newline at end of file
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/w3c-import.log b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/w3c-import.log
new file mode 100644 (file)
index 0000000..7e6400e
--- /dev/null
@@ -0,0 +1,22 @@
+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in WebKit.
+Instead, create a pull request on the WPT github:
+       https://github.com/web-platform-tests/wpt
+
+Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
+
+Do NOT modify or remove this file.
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/order-of-metas.any.js
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/order-of-metas.window.js
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/secure-context.https.any.js
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/title.any.js
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/wpt-server-http.sub.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/wpt-server-websocket.sub.html
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/wpt-server-http.sub-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/wpt-server-http.sub-expected.txt
new file mode 100644 (file)
index 0000000..9cb9c48
--- /dev/null
@@ -0,0 +1,43 @@
+Blocked access to external URL http://www.localhost:8800/media/1x1-green.png
+Blocked access to external URL http://www.localhost:8801/media/1x1-green.png
+Blocked access to external URL http://www1.localhost:8800/media/1x1-green.png
+Blocked access to external URL http://www1.localhost:8801/media/1x1-green.png
+Blocked access to external URL http://www2.localhost:8800/media/1x1-green.png
+Blocked access to external URL http://www2.localhost:8801/media/1x1-green.png
+Blocked access to external URL http://xn--lve-6lad.localhost:8800/media/1x1-green.png
+Blocked access to external URL http://xn--lve-6lad.localhost:8801/media/1x1-green.png
+Blocked access to external URL http://xn--n8j6ds53lwwkrqhv28a.localhost:8800/media/1x1-green.png
+Blocked access to external URL http://xn--n8j6ds53lwwkrqhv28a.localhost:8801/media/1x1-green.png
+Blocked access to external URL http://nonexistent.localhost:8800/media/1x1-green.png
+Blocked access to external URL http://nonexistent.localhost:8801/media/1x1-green.png
+Blocked access to external URL https://www.localhost:9443/media/1x1-green.png
+Blocked access to external URL https://www1.localhost:9443/media/1x1-green.png
+Blocked access to external URL https://www2.localhost:9443/media/1x1-green.png
+Blocked access to external URL https://xn--lve-6lad.localhost:9443/media/1x1-green.png
+Blocked access to external URL https://xn--n8j6ds53lwwkrqhv28a.localhost:9443/media/1x1-green.png
+Blocked access to external URL https://nonexistent.localhost:8800/media/1x1-green.png
+Blocked access to external URL https://nonexistent.localhost:8801/media/1x1-green.png
+
+FAIL HTTP protocol, no subdomain, port #1 assert_true: expected true got false
+FAIL HTTP protocol, no subdomain, port #2 assert_true: expected true got false
+FAIL HTTP protocol, www subdomain #1, port #1 assert_true: expected true got false
+FAIL HTTP protocol, www subdomain #1, port #2 assert_true: expected true got false
+FAIL HTTP protocol, www subdomain #2, port #1 assert_true: expected true got false
+FAIL HTTP protocol, www subdomain #2, port #2 assert_true: expected true got false
+FAIL HTTP protocol, www subdomain #3, port #1 assert_true: expected true got false
+FAIL HTTP protocol, www subdomain #3, port #2 assert_true: expected true got false
+FAIL HTTP protocol, punycode subdomain #1, port #1 assert_true: expected true got false
+FAIL HTTP protocol, punycode subdomain #1, port #2 assert_true: expected true got false
+FAIL HTTP protocol, punycode subdomain #2, port #1 assert_true: expected true got false
+FAIL HTTP protocol, punycode subdomain #2, port #2 assert_true: expected true got false
+PASS HTTP protocol, non-existent domain, port #1 
+PASS HTTP protocol, non-existent domain, port #2 
+FAIL HTTPS protocol, no subdomain assert_true: expected true got false
+FAIL HTTPS protocol, www subdomain #1 assert_true: expected true got false
+FAIL HTTPS protocol, www subdomain #2 assert_true: expected true got false
+FAIL HTTPS protocol, www subdomain #3 assert_true: expected true got false
+FAIL HTTPS protocol, punycode subdomain #1 assert_true: expected true got false
+FAIL HTTPS protocol, punycode subdomain #2 assert_true: expected true got false
+PASS HTTPS protocol, non-existent domain, port #1 
+PASS HTTPS protocol, non-existent domain, port #2 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/wpt-server-http.sub.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/wpt-server-http.sub.html
new file mode 100644 (file)
index 0000000..8099b9d
--- /dev/null
@@ -0,0 +1,204 @@
+<!doctype html>
+<html>
+  <head>
+    <title>WPT Server checker</title>
+    <meta charset="utf-8" />
+    <script src="/resources/testharness.js"></script>
+    <script src="/resources/testharnessreport.js"></script>
+  </head>
+</body>
+<body>
+<script>
+function check(protocol, domain, port, done) {
+  var url = protocol + '://' + domain + ':' + port + '/media/1x1-green.png';
+  var img = document.createElement('img');
+  img.setAttribute('src', url);
+  img.style.display = 'none';
+  img.onerror = function() {
+    done(false);
+  };
+  img.onload = function() {
+    done(true);
+  };
+
+  document.body.appendChild(img);
+}
+
+async_test(function(t) {
+  check('http', '{{browser_host}}', {{ports[http][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'HTTP protocol, no subdomain, port #1');
+
+async_test(function(t) {
+  check('http', '{{browser_host}}', {{ports[http][1]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'HTTP protocol, no subdomain, port #2');
+
+async_test(function(t) {
+  check('http', '{{domains[www]}}', {{ports[http][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'HTTP protocol, www subdomain #1, port #1');
+
+async_test(function(t) {
+  check('http', '{{domains[www]}}', {{ports[http][1]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'HTTP protocol, www subdomain #1, port #2');
+
+async_test(function(t) {
+  check('http', '{{domains[www1]}}', {{ports[http][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'HTTP protocol, www subdomain #2, port #1');
+
+async_test(function(t) {
+  check('http', '{{domains[www1]}}', {{ports[http][1]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'HTTP protocol, www subdomain #2, port #2');
+
+async_test(function(t) {
+  check('http', '{{domains[www2]}}', {{ports[http][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'HTTP protocol, www subdomain #3, port #1');
+
+async_test(function(t) {
+  check('http', '{{domains[www2]}}', {{ports[http][1]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'HTTP protocol, www subdomain #3, port #2');
+
+async_test(function(t) {
+  check('http', '{{domains[élève]}}', {{ports[http][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'HTTP protocol, punycode subdomain #1, port #1');
+
+async_test(function(t) {
+  check('http', '{{domains[élève]}}', {{ports[http][1]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'HTTP protocol, punycode subdomain #1, port #2');
+
+async_test(function(t) {
+  check('http', '{{domains[天気の良い日]}}', {{ports[http][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'HTTP protocol, punycode subdomain #2, port #1');
+
+async_test(function(t) {
+  check('http', '{{domains[天気の良い日]}}', {{ports[http][1]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'HTTP protocol, punycode subdomain #2, port #2');
+
+async_test(function(t) {
+  check('http', 'nonexistent.{{domains[]}}', {{ports[http][0]}}, t.step_func(function(result) {
+    assert_false(result);
+
+    t.done();
+  }));
+}, 'HTTP protocol, non-existent domain, port #1');
+
+async_test(function(t) {
+  check('http', 'nonexistent.{{domains[]}}', {{ports[http][1]}}, t.step_func(function(result) {
+    assert_false(result);
+
+    t.done();
+  }));
+}, 'HTTP protocol, non-existent domain, port #2');
+
+async_test(function(t) {
+  check('https', '{{browser_host}}', {{ports[https][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'HTTPS protocol, no subdomain');
+
+async_test(function(t) {
+  check('https', '{{domains[www]}}', {{ports[https][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'HTTPS protocol, www subdomain #1');
+
+async_test(function(t) {
+  check('https', '{{domains[www1]}}', {{ports[https][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'HTTPS protocol, www subdomain #2');
+
+async_test(function(t) {
+  check('https', '{{domains[www2]}}', {{ports[https][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'HTTPS protocol, www subdomain #3');
+
+async_test(function(t) {
+  check('https', '{{domains[élève]}}', {{ports[https][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'HTTPS protocol, punycode subdomain #1');
+
+async_test(function(t) {
+  check('https', '{{domains[天気の良い日]}}', {{ports[https][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'HTTPS protocol, punycode subdomain #2');
+
+async_test(function(t) {
+  check('https', 'nonexistent.{{domains[]}}', {{ports[http][0]}}, t.step_func(function(result) {
+    assert_false(result);
+
+    t.done();
+  }));
+}, 'HTTPS protocol, non-existent domain, port #1');
+
+async_test(function(t) {
+  check('https', 'nonexistent.{{domains[]}}', {{ports[http][1]}}, t.step_func(function(result) {
+    assert_false(result);
+
+    t.done();
+  }));
+}, 'HTTPS protocol, non-existent domain, port #2');
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/wpt-server-websocket.sub.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/server/wpt-server-websocket.sub.html
new file mode 100644 (file)
index 0000000..ea7973a
--- /dev/null
@@ -0,0 +1,122 @@
+<!doctype html>
+<html>
+  <head>
+    <title>WPT Server checker</title>
+    <meta charset="utf-8" />
+    <script src="/resources/testharness.js"></script>
+    <script src="/resources/testharnessreport.js"></script>
+  </head>
+</body>
+<body>
+<script>
+function check(protocol, domain, port, done) {
+  var url = protocol + '://' + domain + ':' + port + '/echo';
+  var ws = new WebSocket(url);
+
+  ws.addEventListener('error', function() {
+    done(false);
+  });
+
+  ws.addEventListener('open', function() {
+    done(true);
+  });
+}
+
+async_test(function(t) {
+  check('ws', '{{browser_host}}', {{ports[ws][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'WS protocol, no subdomain');
+
+async_test(function(t) {
+  check('ws', '{{domains[www1]}}', {{ports[ws][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'WS protocol, www subdomain #1');
+
+async_test(function(t) {
+  check('ws', '{{domains[www1]}}', {{ports[ws][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'WS protocol, www subdomain #2');
+
+async_test(function(t) {
+  check('ws', '{{domains[www2]}}', {{ports[ws][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'WS protocol, www subdomain #3');
+
+async_test(function(t) {
+  check('ws', '{{domains[élève]}}', {{ports[ws][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'WS protocol, punycode subdomain #1');
+
+async_test(function(t) {
+  check('ws', '{{domains[天気の良い日]}}', {{ports[ws][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'WS protocol, punycode subdomain #2');
+
+async_test(function(t) {
+  check('wss', '{{browser_host}}', {{ports[wss][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'WSS protocol, no subdomain');
+
+async_test(function(t) {
+  check('wss', '{{domains[www1]}}', {{ports[wss][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'WSS protocol, www subdomain #1');
+
+async_test(function(t) {
+  check('wss', '{{domains[www1]}}', {{ports[wss][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'WSS protocol, www subdomain #2');
+
+async_test(function(t) {
+  check('wss', '{{domains[www2]}}', {{ports[wss][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'WSS protocol, www subdomain #3');
+
+async_test(function(t) {
+  check('wss', '{{domains[élève]}}', {{ports[wss][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'WSS protocol, punycode subdomain #1');
+
+async_test(function(t) {
+  check('wss', '{{domains[天気の良い日]}}', {{ports[wss][0]}}, t.step_func(function(result) {
+    assert_true(result);
+
+    t.done();
+  }));
+}, 'WSS protocol, punycode subdomain #2');
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/testdriver/click.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/testdriver/click.html
new file mode 100644 (file)
index 0000000..37721ad
--- /dev/null
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>TestDriver click method</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+
+<button type="button" id="button">Button</button>
+
+<script>
+async_test(t => {
+  let button = document.getElementById("button");
+  test_driver
+    .click(button)
+    .then(() => t.done())
+    .catch(t.unreached_func("click failed"));
+});
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/testdriver/send_keys.html b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/testdriver/send_keys.html
new file mode 100644 (file)
index 0000000..2170347
--- /dev/null
@@ -0,0 +1,23 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>TestDriver send keys method</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/testdriver.js"></script>
+<script src="/resources/testdriver-vendor.js"></script>
+
+<input type="text" id="text">Text Input</button>
+
+<script>
+async_test(t => {
+  let input_text = "Hello, wpt!";
+  let text_box = document.getElementById("text");
+  test_driver
+    .send_keys(text_box, input_text)
+    .then(() => {
+      assert_true(text_box.value == input_text);
+      t.done();
+    })
+    .catch(t.unreached_func("send keys failed"));
+});
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/testdriver/w3c-import.log b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/testdriver/w3c-import.log
new file mode 100644 (file)
index 0000000..aec5803
--- /dev/null
@@ -0,0 +1,18 @@
+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in WebKit.
+Instead, create a pull request on the WPT github:
+       https://github.com/web-platform-tests/wpt
+
+Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
+
+Do NOT modify or remove this file.
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/testdriver/click.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/testdriver/send_keys.html
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/w3c-import.log b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/w3c-import.log
new file mode 100644 (file)
index 0000000..1b1d5a6
--- /dev/null
@@ -0,0 +1,20 @@
+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in WebKit.
+Instead, create a pull request on the WPT github:
+       https://github.com/web-platform-tests/wpt
+
+Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
+
+Do NOT modify or remove this file.
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/META.yml
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/README.md
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest-wait-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/reftest-wait.html
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/webdriver/tests/conftest.py b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/webdriver/tests/conftest.py
new file mode 100644 (file)
index 0000000..cbc4f83
--- /dev/null
@@ -0,0 +1,7 @@
+import os
+import sys
+# Hack to avoid duplicating the conftest file
+wdpath = os.path.abspath(os.path.join(os.path.dirname(__file__),
+                                      "../../../webdriver/"))
+sys.path.insert(0, wdpath)
+from tests.conftest import *
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/webdriver/tests/test_load_file.py b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/webdriver/tests/test_load_file.py
new file mode 100644 (file)
index 0000000..370e63c
--- /dev/null
@@ -0,0 +1,4 @@
+from tests.support.inline import inline
+
+def test_load(session):
+    inline("PASS")
diff --git a/LayoutTests/imported/w3c/web-platform-tests/infrastructure/webdriver/tests/w3c-import.log b/LayoutTests/imported/w3c/web-platform-tests/infrastructure/webdriver/tests/w3c-import.log
new file mode 100644 (file)
index 0000000..a879e5b
--- /dev/null
@@ -0,0 +1,18 @@
+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in WebKit.
+Instead, create a pull request on the WPT github:
+       https://github.com/web-platform-tests/wpt
+
+Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
+
+Do NOT modify or remove this file.
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/webdriver/tests/conftest.py
+/LayoutTests/imported/w3c/web-platform-tests/infrastructure/webdriver/tests/test_load_file.py