summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/infrastructure/reftest
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 09:22:09 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 09:22:09 +0000
commit43a97878ce14b72f0981164f87f2e35e14151312 (patch)
tree620249daf56c0258faa40cbdcf9cfba06de2a846 /testing/web-platform/tests/infrastructure/reftest
parentInitial commit. (diff)
downloadfirefox-43a97878ce14b72f0981164f87f2e35e14151312.tar.xz
firefox-43a97878ce14b72f0981164f87f2e35e14151312.zip
Adding upstream version 110.0.1.upstream/110.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/infrastructure/reftest')
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/fuzzy-ref-1.html9
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/green-ref.html4
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/green.html3
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/legacy/README.md5
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/legacy/fuzzy-ref-2.html11
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/legacy/fuzzy-ref-2a.html9
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/legacy/reftest_and_fail.html5
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/legacy/reftest_and_fail_0-ref.html5
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/legacy/reftest_and_mismatch.html5
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/legacy/reftest_and_mismatch_0.html5
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/legacy/reftest_and_mismatch_1.html4
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/legacy/reftest_cycle.html5
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/legacy/reftest_cycle_0-ref.html5
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/legacy/reftest_cycle_1-ref.html5
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/legacy/reftest_cycle_fail.html5
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/legacy/reftest_cycle_fail_0-ref.html5
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/legacy/reftest_fuzzy_chain_ini.html11
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/red.html3
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest.https.html9
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest.www.sub.html10
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_1.html12
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_ini_full.html13
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_ini_ref_only.html13
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_ini_short.html13
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_no_differences.html13
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_no_differences_1.html13
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_match-print-ref.html13
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_match-print.html12
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_match.html5
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-0.html6
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-1.html6
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-2.html7
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-3.html7
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-4.html7
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-5.html7
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-6.html8
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-7.html8
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_match_fail-print.html12
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_match_fail.html5
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_mismatch-num-pages-print.html3
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_mismatch-print.html13
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_mismatch.html5
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_mismatch_fail-print.html13
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_mismatch_fail.html5
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_mismatch_page_margins-print.html13
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_multiple_match-0.html6
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_multiple_match-1.html6
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_multiple_mismatch-0.html6
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_multiple_mismatch-1.html6
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_ref_timeout-ref.html5
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_ref_timeout.html6
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_timeout.html6
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_wait_0.html13
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/reftest_wait_TestRendered.html14
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/size-ref.html2
-rw-r--r--testing/web-platform/tests/infrastructure/reftest/size.html6
56 files changed, 431 insertions, 0 deletions
diff --git a/testing/web-platform/tests/infrastructure/reftest/fuzzy-ref-1.html b/testing/web-platform/tests/infrastructure/reftest/fuzzy-ref-1.html
new file mode 100644
index 0000000000..e50fc11ef6
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/fuzzy-ref-1.html
@@ -0,0 +1,9 @@
+<!DOCTYPE html>
+<style>
+div {
+ width: 100px;
+ height: 100px;
+ background-color: green;
+}
+</style>
+<div></div>
diff --git a/testing/web-platform/tests/infrastructure/reftest/green-ref.html b/testing/web-platform/tests/infrastructure/reftest/green-ref.html
new file mode 100644
index 0000000000..0e145d60b5
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/green-ref.html
@@ -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/testing/web-platform/tests/infrastructure/reftest/green.html b/testing/web-platform/tests/infrastructure/reftest/green.html
new file mode 100644
index 0000000000..38167bb58d
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/green.html
@@ -0,0 +1,3 @@
+<style>
+:root {background-color:green}
+</style> \ No newline at end of file
diff --git a/testing/web-platform/tests/infrastructure/reftest/legacy/README.md b/testing/web-platform/tests/infrastructure/reftest/legacy/README.md
new file mode 100644
index 0000000000..01bb6f773e
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/legacy/README.md
@@ -0,0 +1,5 @@
+This directory contains the old reftest chaining tests, based on how they worked prior to
+[RFC #15](https://github.com/web-platform-tests/rfcs/blob/master/rfcs/reftest_simplification.md).
+
+The expectations for these match the current logic; these are included here so we have
+tests that fail if any external runner is implementing this logic.
diff --git a/testing/web-platform/tests/infrastructure/reftest/legacy/fuzzy-ref-2.html b/testing/web-platform/tests/infrastructure/reftest/legacy/fuzzy-ref-2.html
new file mode 100644
index 0000000000..cdaf6446ed
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/legacy/fuzzy-ref-2.html
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<!-- This will only match with the fuzzy set in the ini file -->
+<link rel="match" href="fuzzy-ref-2a.html">
+<style>
+div {
+ width: 100px;
+ height: 100px;
+ background-color: green;
+}
+</style>
+<div></div>
diff --git a/testing/web-platform/tests/infrastructure/reftest/legacy/fuzzy-ref-2a.html b/testing/web-platform/tests/infrastructure/reftest/legacy/fuzzy-ref-2a.html
new file mode 100644
index 0000000000..99da3203af
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/legacy/fuzzy-ref-2a.html
@@ -0,0 +1,9 @@
+<!DOCTYPE html>
+<style>
+div {
+ width: 101px;
+ height: 100px;
+ background-color: green;
+}
+</style>
+<div></div>
diff --git a/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_and_fail.html b/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_and_fail.html
new file mode 100644
index 0000000000..2960195356
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_and_fail.html
@@ -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/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_and_fail_0-ref.html b/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_and_fail_0-ref.html
new file mode 100644
index 0000000000..565f663ed5
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_and_fail_0-ref.html
@@ -0,0 +1,5 @@
+<title>Reftest chain that should fail</title>
+<link rel=match href=../red.html>
+<style>
+:root {background-color:green}
+</style>
diff --git a/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_and_mismatch.html b/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_and_mismatch.html
new file mode 100644
index 0000000000..b6b4847473
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_and_mismatch.html
@@ -0,0 +1,5 @@
+<title>Reftest chain with mismatch and mismatch</title>
+<link rel=mismatch href=reftest_and_mismatch_0.html>
+<style>
+:root {background-color:green}
+</style>
diff --git a/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_and_mismatch_0.html b/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_and_mismatch_0.html
new file mode 100644
index 0000000000..f84ce6a13a
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_and_mismatch_0.html
@@ -0,0 +1,5 @@
+<title>Reftest chain with mismatch and mismatch</title>
+<link rel=mismatch href=reftest_and_mismatch_1.html>
+<style>
+:root {background-color:blue}
+</style>
diff --git a/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_and_mismatch_1.html b/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_and_mismatch_1.html
new file mode 100644
index 0000000000..05e905adaf
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_and_mismatch_1.html
@@ -0,0 +1,4 @@
+<title>Reftest chain with match and mismatch</title>
+<style>
+:root {background-color:green}
+</style>
diff --git a/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_cycle.html b/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_cycle.html
new file mode 100644
index 0000000000..4a84a3b674
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_cycle.html
@@ -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/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_cycle_0-ref.html b/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_cycle_0-ref.html
new file mode 100644
index 0000000000..118bfd8844
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_cycle_0-ref.html
@@ -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/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_cycle_1-ref.html b/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_cycle_1-ref.html
new file mode 100644
index 0000000000..59be0b641d
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_cycle_1-ref.html
@@ -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/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_cycle_fail.html b/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_cycle_fail.html
new file mode 100644
index 0000000000..175e76c4cc
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_cycle_fail.html
@@ -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/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_cycle_fail_0-ref.html b/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_cycle_fail_0-ref.html
new file mode 100644
index 0000000000..c8e548c462
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_cycle_fail_0-ref.html
@@ -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/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_fuzzy_chain_ini.html b/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_fuzzy_chain_ini.html
new file mode 100644
index 0000000000..4353379ddb
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/legacy/reftest_fuzzy_chain_ini.html
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<link rel=match href=fuzzy-ref-2.html>
+<!-- The metadata is added to the corresponding ini file -->
+<style>
+div {
+ width: 99px;
+ height: 100px;
+ background-color: green;
+}
+</style>
+<div></div>
diff --git a/testing/web-platform/tests/infrastructure/reftest/red.html b/testing/web-platform/tests/infrastructure/reftest/red.html
new file mode 100644
index 0000000000..2b677e0063
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/red.html
@@ -0,0 +1,3 @@
+<style>
+:root {background-color:red}
+</style> \ No newline at end of file
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest.https.html b/testing/web-platform/tests/infrastructure/reftest/reftest.https.html
new file mode 100644
index 0000000000..5a45f10f35
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest.https.html
@@ -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/testing/web-platform/tests/infrastructure/reftest/reftest.www.sub.html b/testing/web-platform/tests/infrastructure/reftest/reftest.www.sub.html
new file mode 100644
index 0000000000..ccffd98f43
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest.www.sub.html
@@ -0,0 +1,10 @@
+<title>Tests that reftests obey the 'www' file-flag</title>
+<link rel=match href=green.html>
+<style>
+:root {background-color:red}
+</style>
+<script>
+if (location.hostname === "{{domains[www]}}") {
+ document.documentElement.style.backgroundColor = "green";
+}
+</script>
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_1.html b/testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_1.html
new file mode 100644
index 0000000000..1930fe0ae8
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_1.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<link rel=match href=fuzzy-ref-1.html>
+<meta name=fuzzy content="fuzzy-ref-1.html:255;100">
+<style>
+div {
+ width: 99px;
+ height: 100px;
+ background-color: green;
+}
+</style>
+<div></div>
+
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_ini_full.html b/testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_ini_full.html
new file mode 100644
index 0000000000..7429025798
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_ini_full.html
@@ -0,0 +1,13 @@
+<!DOCTYPE html>
+<link rel=match href=fuzzy-ref-1.html>
+<!-- This meta is overridden in the corresponding ini file -->
+<meta name=fuzzy content="fuzzy-ref-1.html:128;100">
+<style>
+div {
+ width: 99px;
+ height: 100px;
+ background-color: green;
+}
+</style>
+<div></div>
+
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_ini_ref_only.html b/testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_ini_ref_only.html
new file mode 100644
index 0000000000..7429025798
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_ini_ref_only.html
@@ -0,0 +1,13 @@
+<!DOCTYPE html>
+<link rel=match href=fuzzy-ref-1.html>
+<!-- This meta is overridden in the corresponding ini file -->
+<meta name=fuzzy content="fuzzy-ref-1.html:128;100">
+<style>
+div {
+ width: 99px;
+ height: 100px;
+ background-color: green;
+}
+</style>
+<div></div>
+
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_ini_short.html b/testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_ini_short.html
new file mode 100644
index 0000000000..7429025798
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_ini_short.html
@@ -0,0 +1,13 @@
+<!DOCTYPE html>
+<link rel=match href=fuzzy-ref-1.html>
+<!-- This meta is overridden in the corresponding ini file -->
+<meta name=fuzzy content="fuzzy-ref-1.html:128;100">
+<style>
+div {
+ width: 99px;
+ height: 100px;
+ background-color: green;
+}
+</style>
+<div></div>
+
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_no_differences.html b/testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_no_differences.html
new file mode 100644
index 0000000000..95863904aa
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_no_differences.html
@@ -0,0 +1,13 @@
+<!DOCTYPE html>
+<link rel=match href=fuzzy-ref-1.html>
+<!-- This exactly matches the reference, and includes the possibility of
+ 0 pixels different; in this case the maxDifference is ignored --->
+<meta name=fuzzy content="fuzzy-ref-1.html:128;0-100">
+<style>
+div {
+ width: 100px;
+ height: 100px;
+ background-color: green;
+}
+</style>
+<div></div>
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_no_differences_1.html b/testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_no_differences_1.html
new file mode 100644
index 0000000000..9513f9bda8
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_fuzzy_no_differences_1.html
@@ -0,0 +1,13 @@
+<!DOCTYPE html>
+<link rel=match href=fuzzy-ref-1.html>
+<!-- This exactly matches the reference, and includes the possibility of
+ 0 difference in the color channel; in this case the pixelsDifferent is ignored --->
+<meta name=fuzzy content="fuzzy-ref-1.html:0-128;100">
+<style>
+div {
+ width: 100px;
+ height: 100px;
+ background-color: green;
+}
+</style>
+<div></div>
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_match-print-ref.html b/testing/web-platform/tests/infrastructure/reftest/reftest_match-print-ref.html
new file mode 100644
index 0000000000..5bc16469c8
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_match-print-ref.html
@@ -0,0 +1,13 @@
+<title></title>
+<meta name="reftest-pages" content="1-2">
+<style>
+* {margin: 0; padding:0}
+/* This should be 192px (2 inches at 96dpi), but the default margin on body reduces it to 180px */
+div {height:180px;}
+</style>
+<div>
+page 1
+</div>
+<div>
+page 2
+</div>
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_match-print.html b/testing/web-platform/tests/infrastructure/reftest/reftest_match-print.html
new file mode 100644
index 0000000000..1b979db965
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_match-print.html
@@ -0,0 +1,12 @@
+<title>rel=match that should pass</title>
+<link rel=match href=reftest_match-print-ref.html>
+<style>
+* {margin: 0; padding:0}
+div {page-break-after: always;}
+</style>
+<div>
+page 1
+</div>
+<div>
+page 2
+</div>
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_match.html b/testing/web-platform/tests/infrastructure/reftest/reftest_match.html
new file mode 100644
index 0000000000..333cc6c1ec
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_match.html
@@ -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/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-0.html b/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-0.html
new file mode 100644
index 0000000000..9f52615a64
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-0.html
@@ -0,0 +1,6 @@
+<title>AND match/mismatch that should fail</title>
+<link rel=match href=red.html>
+<link rel=mismatch href=red.html?2>
+<style>
+:root {background-color:red}
+</style>
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-1.html b/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-1.html
new file mode 100644
index 0000000000..1bba49ea0d
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-1.html
@@ -0,0 +1,6 @@
+<title>AND match/mismatch that should fail</title>
+<link rel=mismatch href=red.html>
+<link rel=match href=red.html?2>
+<style>
+:root {background-color:red}
+</style>
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-2.html b/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-2.html
new file mode 100644
index 0000000000..60141aedf8
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-2.html
@@ -0,0 +1,7 @@
+<title>OR match AND mismatch that should pass</title>
+<link rel=match href=red.html>
+<link rel=match href=green.html>
+<link rel=mismatch href=red.html?2>
+<style>
+:root {background-color:green}
+</style>
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-3.html b/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-3.html
new file mode 100644
index 0000000000..f707c1b13f
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-3.html
@@ -0,0 +1,7 @@
+<title>OR match AND mismatch that should pass</title>
+<link rel=mismatch href=red.html>
+<link rel=match href=green.html>
+<link rel=match href=red.html?2>
+<style>
+:root {background-color:green}
+</style>
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-4.html b/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-4.html
new file mode 100644
index 0000000000..ac08cb70b6
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-4.html
@@ -0,0 +1,7 @@
+<title>OR match AND mismatch that should fail</title>
+<link rel=match href=green.html>
+<link rel=match href=red.html>
+<link rel=mismatch href=red.html?2>
+<style>
+:root {background-color:red}
+</style>
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-5.html b/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-5.html
new file mode 100644
index 0000000000..b30d84a2dd
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-5.html
@@ -0,0 +1,7 @@
+<title>OR match AND mismatch that should fail</title>
+<link rel=match href=red.html>
+<link rel=match href=green.html>
+<link rel=mismatch href=red.html?2>
+<style>
+:root {background-color:red}
+</style>
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-6.html b/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-6.html
new file mode 100644
index 0000000000..1a2dcc204a
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-6.html
@@ -0,0 +1,8 @@
+<title>OR match AND mismatch that should fail</title>
+<link rel=match href=green.html>
+<link rel=match href=red.html>
+<link rel=mismatch href=green.html?2>
+<link rel=mismatch href=red.html?2>
+<style>
+:root {background-color:red}
+</style>
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-7.html b/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-7.html
new file mode 100644
index 0000000000..073e220611
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_match_and_mismatch-7.html
@@ -0,0 +1,8 @@
+<title>OR match AND mismatch that should fail</title>
+<link rel=match href=green.html>
+<link rel=match href=red.html>
+<link rel=mismatch href=red.html?2>
+<link rel=mismatch href=green.html?2>
+<style>
+:root {background-color:red}
+</style>
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_match_fail-print.html b/testing/web-platform/tests/infrastructure/reftest/reftest_match_fail-print.html
new file mode 100644
index 0000000000..92c5fa6a69
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_match_fail-print.html
@@ -0,0 +1,12 @@
+<title>rel=match that should fail</title>
+<link rel=match href=reftest_match-print-ref.html>
+<style>
+* {margin: 0; padding:0}
+div {page-break-after: always;}
+</style>
+<div>
+page 1
+</div>
+<div>
+Another page
+</div>
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_match_fail.html b/testing/web-platform/tests/infrastructure/reftest/reftest_match_fail.html
new file mode 100644
index 0000000000..a9272ef74d
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_match_fail.html
@@ -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/testing/web-platform/tests/infrastructure/reftest/reftest_mismatch-num-pages-print.html b/testing/web-platform/tests/infrastructure/reftest/reftest_mismatch-num-pages-print.html
new file mode 100644
index 0000000000..5efb590653
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_mismatch-num-pages-print.html
@@ -0,0 +1,3 @@
+<!doctype html>
+<link rel=mismatch href=reftest_match-print-ref.html>
+<!-- Should be only one page, while the reference has two. The test should pass -->
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_mismatch-print.html b/testing/web-platform/tests/infrastructure/reftest/reftest_mismatch-print.html
new file mode 100644
index 0000000000..5fd4a7f52a
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_mismatch-print.html
@@ -0,0 +1,13 @@
+<title>rel=mismatch that should PASS</title>
+<link rel=mismatch href=reftest_match-print-ref.html>
+<meta name="reftest-pages" content="reftest_match-print-ref.html:1-2">
+<style>
+* {margin: 0; padding:0}
+div {page-break-after: always;}
+</style>
+<div>
+page 1
+</div>
+<div>
+page 3
+</div>
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_mismatch.html b/testing/web-platform/tests/infrastructure/reftest/reftest_mismatch.html
new file mode 100644
index 0000000000..af5fa0750d
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_mismatch.html
@@ -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/testing/web-platform/tests/infrastructure/reftest/reftest_mismatch_fail-print.html b/testing/web-platform/tests/infrastructure/reftest/reftest_mismatch_fail-print.html
new file mode 100644
index 0000000000..afec2ef51f
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_mismatch_fail-print.html
@@ -0,0 +1,13 @@
+<title>rel=mismatch that should FAIL</title>
+<link rel=mismatch href=reftest_match-print-ref.html>
+<meta name="reftest-pages" content="reftest_match-print-ref.html:1-2">
+<style>
+* {margin: 0; padding:0}
+div {page-break-after: always;}
+</style>
+<div>
+page 1
+</div>
+<div>
+page 2
+</div>
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_mismatch_fail.html b/testing/web-platform/tests/infrastructure/reftest/reftest_mismatch_fail.html
new file mode 100644
index 0000000000..8d160c4fc2
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_mismatch_fail.html
@@ -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/testing/web-platform/tests/infrastructure/reftest/reftest_mismatch_page_margins-print.html b/testing/web-platform/tests/infrastructure/reftest/reftest_mismatch_page_margins-print.html
new file mode 100644
index 0000000000..62c925927e
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_mismatch_page_margins-print.html
@@ -0,0 +1,13 @@
+<title>print-reftest should respect @page margins</title>
+<link rel=mismatch href=reftest_match-print-ref.html>
+<style>
+* {margin: 0; padding:0}
+@page {margin: 0;}
+div {page-break-after: always;}
+</style>
+<div>
+page 1
+</div>
+<div>
+page 2
+</div>
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_multiple_match-0.html b/testing/web-platform/tests/infrastructure/reftest/reftest_multiple_match-0.html
new file mode 100644
index 0000000000..3a51de2164
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_multiple_match-0.html
@@ -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/testing/web-platform/tests/infrastructure/reftest/reftest_multiple_match-1.html b/testing/web-platform/tests/infrastructure/reftest/reftest_multiple_match-1.html
new file mode 100644
index 0000000000..9a8b769d65
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_multiple_match-1.html
@@ -0,0 +1,6 @@
+<title>OR match that should pass</title>
+<link rel=match href=green.html>
+<link rel=match href=red.html>
+<style>
+:root {background-color:green}
+</style>
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_multiple_mismatch-0.html b/testing/web-platform/tests/infrastructure/reftest/reftest_multiple_mismatch-0.html
new file mode 100644
index 0000000000..b0115a7551
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_multiple_mismatch-0.html
@@ -0,0 +1,6 @@
+<title>AND mismatch that should fail</title>
+<link rel=mismatch href=green.html>
+<link rel=mismatch href=red.html>
+<style>
+:root {background-color:red}
+</style>
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_multiple_mismatch-1.html b/testing/web-platform/tests/infrastructure/reftest/reftest_multiple_mismatch-1.html
new file mode 100644
index 0000000000..65ddd34324
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_multiple_mismatch-1.html
@@ -0,0 +1,6 @@
+<title>AND mismatch that should fail</title>
+<link rel=mismatch href=red.html>
+<link rel=mismatch href=green.html>
+<style>
+:root {background-color:red}
+</style>
diff --git a/testing/web-platform/tests/infrastructure/reftest/reftest_ref_timeout-ref.html b/testing/web-platform/tests/infrastructure/reftest/reftest_ref_timeout-ref.html
new file mode 100644
index 0000000000..2f52c05979
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_ref_timeout-ref.html
@@ -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/testing/web-platform/tests/infrastructure/reftest/reftest_ref_timeout.html b/testing/web-platform/tests/infrastructure/reftest/reftest_ref_timeout.html
new file mode 100644
index 0000000000..aaf68f5cb5
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_ref_timeout.html
@@ -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/testing/web-platform/tests/infrastructure/reftest/reftest_timeout.html b/testing/web-platform/tests/infrastructure/reftest/reftest_timeout.html
new file mode 100644
index 0000000000..b10e676bf0
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_timeout.html
@@ -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/testing/web-platform/tests/infrastructure/reftest/reftest_wait_0.html b/testing/web-platform/tests/infrastructure/reftest/reftest_wait_0.html
new file mode 100644
index 0000000000..fec62a3cae
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_wait_0.html
@@ -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/testing/web-platform/tests/infrastructure/reftest/reftest_wait_TestRendered.html b/testing/web-platform/tests/infrastructure/reftest/reftest_wait_TestRendered.html
new file mode 100644
index 0000000000..4316d338b5
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/reftest_wait_TestRendered.html
@@ -0,0 +1,14 @@
+<html class="reftest-wait">
+<title>Test with reftest-wait</title>
+<link rel=match href=green.html>
+<style>
+:root {background-color:red}
+</style>
+<script>
+document.addEventListener("TestRendered",
+ function() {
+ document.documentElement.style.backgroundColor = "green";
+ document.documentElement.className = "";
+ });
+</script>
+</html>
diff --git a/testing/web-platform/tests/infrastructure/reftest/size-ref.html b/testing/web-platform/tests/infrastructure/reftest/size-ref.html
new file mode 100644
index 0000000000..bb792a3feb
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/size-ref.html
@@ -0,0 +1,2 @@
+<!doctype html>
+<p>innerWidth x innerHeight: <span>800x600</span></p>
diff --git a/testing/web-platform/tests/infrastructure/reftest/size.html b/testing/web-platform/tests/infrastructure/reftest/size.html
new file mode 100644
index 0000000000..a60befbf03
--- /dev/null
+++ b/testing/web-platform/tests/infrastructure/reftest/size.html
@@ -0,0 +1,6 @@
+<!doctype html>
+<link rel=match href=size-ref.html>
+<p>innerWidth x innerHeight: <span id=size></span></p>
+<script>
+document.querySelector("#size").textContent = window.innerWidth + "x" + window.innerHeight;
+</script>