diff options
Diffstat (limited to 'testing/web-platform/tests/client-hints/clear-site-data')
32 files changed, 482 insertions, 0 deletions
diff --git a/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-all.https.html b/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-all.https.html new file mode 100644 index 0000000000..a371f07fed --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-all.https.html @@ -0,0 +1,37 @@ +<!DOCTYPE html> +<body> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +// Here's the set-up for this test: +// Step 1 (first window) Open new window to verify that hints were set. +// Step 2 (second window) Alert first window of client hints present. +// Step 3 (first window) Asserts client hints were present. +// Step 4 (first window) Navigate other window to page that clears all data. +// Step 5 (second window) Navigate to a page that can check client hints still sent. +// Step 6 (second window) Alert first window of client hints present. +// Step 7 (first window) Asserts client hints were not present. +async_test(t => { + var new_window; + + // Step 3 + window.addEventListener("message", t.step_func(e => { + assert_equals(e.data, "HadDeviceMemory"); + + // Step 7 + window.addEventListener("message", t.step_func(e => { + assert_equals(e.data, "MissingDeviceMemory"); + t.done(); + }), {once: true}); + + // Step 4 + new_window.location.href = "/client-hints/clear-site-data/resources/clear-site-data.py"; + }), {once: true}); + + // Step 1 + new_window = window.open("/client-hints/clear-site-data/resources/check-client-hints.py"); + t.add_cleanup(() => new_window.close()); +}, "Clear-Site-Data for * should remove all client hints."); +</script> +</body> +</html> diff --git a/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-all.https.html.headers b/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-all.https.html.headers new file mode 100644 index 0000000000..226bb1c3b1 --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-all.https.html.headers @@ -0,0 +1 @@ +Accept-CH: Sec-CH-Device-Memory diff --git a/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-cache.https.html b/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-cache.https.html new file mode 100644 index 0000000000..1be71bf8b0 --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-cache.https.html @@ -0,0 +1,37 @@ +<!DOCTYPE html> +<body> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +// Here's the set-up for this test: +// Step 1 (first window) Open new window to verify that hints were set. +// Step 2 (second window) Alert first window of client hints present. +// Step 3 (first window) Asserts client hints were present. +// Step 4 (first window) Navigate other window to page that clears cache data. +// Step 5 (second window) Navigate to a page that can check client hints still sent. +// Step 6 (second window) Alert first window of client hints present. +// Step 7 (first window) Asserts client hints were not present. +async_test(t => { + var new_window; + + // Step 3 + window.addEventListener("message", t.step_func(e => { + assert_equals(e.data, "HadDeviceMemory"); + + // Step 7 + window.addEventListener("message", t.step_func(e => { + assert_equals(e.data, "MissingDeviceMemory"); + t.done(); + }), {once: true}); + + // Step 4 + new_window.location.href = "/client-hints/clear-site-data/resources/clear-site-data.py?target=cache"; + }), {once: true}); + + // Step 1 + new_window = window.open("/client-hints/clear-site-data/resources/check-client-hints.py"); + t.add_cleanup(() => new_window.close()); +}, "Clear-Site-Data for cache should remove all client hints."); +</script> +</body> +</html> diff --git a/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-cache.https.html.headers b/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-cache.https.html.headers new file mode 100644 index 0000000000..226bb1c3b1 --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-cache.https.html.headers @@ -0,0 +1 @@ +Accept-CH: Sec-CH-Device-Memory diff --git a/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-client-hints.https.html b/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-client-hints.https.html new file mode 100644 index 0000000000..d37f62af8f --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-client-hints.https.html @@ -0,0 +1,37 @@ +<!DOCTYPE html> +<body> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +// Here's the set-up for this test: +// Step 1 (first window) Open new window to verify that hints were set. +// Step 2 (second window) Alert first window of client hints present. +// Step 3 (first window) Asserts client hints were present. +// Step 4 (first window) Navigate other window to page that clears client hint data. +// Step 5 (second window) Navigate to a page that can check client hints still sent. +// Step 6 (second window) Alert first window of client hints present. +// Step 7 (first window) Asserts client hints were not present. +async_test(t => { + var new_window; + + // Step 3 + window.addEventListener("message", t.step_func(e => { + assert_equals(e.data, "HadDeviceMemory"); + + // Step 7 + window.addEventListener("message", t.step_func(e => { + assert_equals(e.data, "MissingDeviceMemory"); + t.done(); + }), {once: true}); + + // Step 4 + new_window.location.href = "/client-hints/clear-site-data/resources/clear-site-data.py?target=clientHints"; + }), {once: true}); + + // Step 1 + new_window = window.open("/client-hints/clear-site-data/resources/check-client-hints.py"); + t.add_cleanup(() => new_window.close()); +}, "Clear-Site-Data for clientHints should remove all client hints."); +</script> +</body> +</html> diff --git a/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-client-hints.https.html.headers b/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-client-hints.https.html.headers new file mode 100644 index 0000000000..226bb1c3b1 --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-client-hints.https.html.headers @@ -0,0 +1 @@ +Accept-CH: Sec-CH-Device-Memory diff --git a/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-cookies.https.html b/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-cookies.https.html new file mode 100644 index 0000000000..e506b717e1 --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-cookies.https.html @@ -0,0 +1,37 @@ +<!DOCTYPE html> +<body> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +// Here's the set-up for this test: +// Step 1 (first window) Open new window to verify that hints were set. +// Step 2 (second window) Alert first window of client hints present. +// Step 3 (first window) Asserts client hints were present. +// Step 4 (first window) Navigate other window to page that clears cookies. +// Step 5 (second window) Navigate to a page that can check client hints still sent. +// Step 6 (second window) Alert first window of client hints present. +// Step 7 (first window) Asserts client hints were not present. +async_test(t => { + var new_window; + + // Step 3 + window.addEventListener("message", t.step_func(e => { + assert_equals(e.data, "HadDeviceMemory"); + + // Step 7 + window.addEventListener("message", t.step_func(e => { + assert_equals(e.data, "MissingDeviceMemory"); + t.done(); + }), {once: true}); + + // Step 4 + new_window.location.href = "/client-hints/clear-site-data/resources/clear-site-data.py?target=cookies"; + }), {once: true}); + + // Step 1 + new_window = window.open("/client-hints/clear-site-data/resources/check-client-hints.py"); + t.add_cleanup(() => new_window.close()); +}, "Clear-Site-Data for cookies should remove all client hints."); +</script> +</body> +</html> diff --git a/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-cookies.https.html.headers b/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-cookies.https.html.headers new file mode 100644 index 0000000000..226bb1c3b1 --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-cookies.https.html.headers @@ -0,0 +1 @@ +Accept-CH: Sec-CH-Device-Memory diff --git a/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-storage.https.html b/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-storage.https.html new file mode 100644 index 0000000000..19bce9e91e --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-storage.https.html @@ -0,0 +1,37 @@ +<!DOCTYPE html> +<body> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +// Here's the set-up for this test: +// Step 1 (first window) Open new window to verify that hints were set. +// Step 2 (second window) Alert first window of client hints present. +// Step 3 (first window) Asserts client hints were present. +// Step 4 (first window) Navigate other window to page that clears storage data. +// Step 5 (second window) Navigate to a page that can check client hints still sent. +// Step 6 (second window) Alert first window of client hints present. +// Step 7 (first window) Asserts client hints were present. +async_test(t => { + var new_window; + + // Step 3 + window.addEventListener("message", t.step_func(e => { + assert_equals(e.data, "HadDeviceMemory"); + + // Step 7 + window.addEventListener("message", t.step_func(e => { + assert_equals(e.data, "HadDeviceMemory"); + t.done(); + }), {once: true}); + + // Step 4 + new_window.location.href = "/client-hints/clear-site-data/resources/clear-site-data.py?target=storage"; + }), {once: true}); + + // Step 1 + new_window = window.open("/client-hints/clear-site-data/resources/check-client-hints.py"); + t.add_cleanup(() => new_window.close()); +}, "Clear-Site-Data for storage should not remove all client hints."); +</script> +</body> +</html> diff --git a/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-storage.https.html.headers b/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-storage.https.html.headers new file mode 100644 index 0000000000..226bb1c3b1 --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/clear-site-data-storage.https.html.headers @@ -0,0 +1 @@ +Accept-CH: Sec-CH-Device-Memory diff --git a/testing/web-platform/tests/client-hints/clear-site-data/resources/check-client-hints.py b/testing/web-platform/tests/client-hints/clear-site-data/resources/check-client-hints.py new file mode 100644 index 0000000000..4fc4c331f2 --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/resources/check-client-hints.py @@ -0,0 +1,15 @@ +""" +Step 2/6 (/client-hints/clear-site-data/clear-site-data-{}.https.html) +Step 3/4 (/client-hints/clear-site-data/set-client-hints-{}-clear-{}.https.html) +""" +def main(request, response): + if b"sec-ch-device-memory" in request.headers: + result = u"HadDeviceMemory" + else: + result = u"MissingDeviceMemory" + content = u''' + <script> + window.opener.postMessage("%s" , "*"); + </script>''' % (result) + headers = [(b"Content-Type", b"text/html")] + return 200, headers, content diff --git a/testing/web-platform/tests/client-hints/clear-site-data/resources/clear-site-data.py b/testing/web-platform/tests/client-hints/clear-site-data/resources/clear-site-data.py new file mode 100644 index 0000000000..fd16be9fbc --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/resources/clear-site-data.py @@ -0,0 +1,12 @@ +""" +Step 5 (/client-hints/clear-site-data/clear-site-data-{}.https.html) +""" +def main(request, response): + content = u''' + <script> + window.onload = function() { + window.location.href = "/client-hints/clear-site-data/resources/check-client-hints.py"; + }; + </script>''' + headers = [(b"Content-Type", b"text/html"), (b"Clear-Site-Data", b'"%s"' % (request.GET.first(b"target", b"*")))] + return 200, headers, content diff --git a/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-all.https.html b/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-all.https.html new file mode 100644 index 0000000000..22ee0f9861 --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-all.https.html @@ -0,0 +1,24 @@ +<!DOCTYPE html> +<body> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +// Here's the set-up for this test: +// Step 1 (first window) Set client hints in the same header that clears them. +// Step 2 (first window) Open second window. +// Step 3 (second window) Message first window about client hints sent. +// Step 4 (first window) Asserts client hints not sent. +async_test(t => { + // Step 4 + window.addEventListener("message", t.step_func(e => { + assert_equals(e.data, "MissingDeviceMemory"); + t.done(); + }), {once: true}); + + // Step 2 + new_window = window.open("/client-hints/clear-site-data/resources/check-client-hints.py"); + t.add_cleanup(new_window.close); +}, "Setting client hints after Clear-Site-Data for all shouldn't allow the client hints to take."); +</script> +</body> +</html> diff --git a/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-all.https.html.headers b/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-all.https.html.headers new file mode 100644 index 0000000000..9768d865bc --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-all.https.html.headers @@ -0,0 +1,2 @@ +Clear-Site-Data: "*" +Accept-CH: Sec-CH-Device-Memory diff --git a/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-cache.https.html b/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-cache.https.html new file mode 100644 index 0000000000..3436138b2c --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-cache.https.html @@ -0,0 +1,24 @@ +<!DOCTYPE html> +<body> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +// Here's the set-up for this test: +// Step 1 (first window) Set client hints in the same header that clears them. +// Step 2 (first window) Open second window. +// Step 3 (second window) Message first window about client hints sent. +// Step 4 (first window) Asserts client hints not sent. +async_test(t => { + // Step 4 + window.addEventListener("message", t.step_func(e => { + assert_equals(e.data, "MissingDeviceMemory"); + t.done(); + }), {once: true}); + + // Step 2 + new_window = window.open("/client-hints/clear-site-data/resources/check-client-hints.py"); + t.add_cleanup(new_window.close); +}, "Setting client hints after Clear-Site-Data for cache shouldn't allow the client hints to take."); +</script> +</body> +</html> diff --git a/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-cache.https.html.headers b/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-cache.https.html.headers new file mode 100644 index 0000000000..bb61032ede --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-cache.https.html.headers @@ -0,0 +1,2 @@ +Clear-Site-Data: "cache" +Accept-CH: Sec-CH-Device-Memory diff --git a/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-client-hints.https.html b/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-client-hints.https.html new file mode 100644 index 0000000000..18aeab2f63 --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-client-hints.https.html @@ -0,0 +1,24 @@ +<!DOCTYPE html> +<body> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +// Here's the set-up for this test: +// Step 1 (first window) Set client hints in the same header that clears them. +// Step 2 (first window) Open second window. +// Step 3 (second window) Message first window about client hints sent. +// Step 4 (first window) Asserts client hints not sent. +async_test(t => { + // Step 4 + window.addEventListener("message", t.step_func(e => { + assert_equals(e.data, "MissingDeviceMemory"); + t.done(); + }), {once: true}); + + // Step 2 + new_window = window.open("/client-hints/clear-site-data/resources/check-client-hints.py"); + t.add_cleanup(new_window.close); +}, "Setting client hints after Clear-Site-Data for client hints shouldn't allow the client hints to take."); +</script> +</body> +</html> diff --git a/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-client-hints.https.html.headers b/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-client-hints.https.html.headers new file mode 100644 index 0000000000..e815201076 --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-client-hints.https.html.headers @@ -0,0 +1,2 @@ +Clear-Site-Data: "clientHints" +Accept-CH: Sec-CH-Device-Memory diff --git a/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-cookies.https.html b/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-cookies.https.html new file mode 100644 index 0000000000..db780d3abd --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-cookies.https.html @@ -0,0 +1,24 @@ +<!DOCTYPE html> +<body> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +// Here's the set-up for this test: +// Step 1 (first window) Set client hints in the same header that clears them. +// Step 2 (first window) Open second window. +// Step 3 (second window) Message first window about client hints sent. +// Step 4 (first window) Asserts client hints not sent. +async_test(t => { + // Step 4 + window.addEventListener("message", t.step_func(e => { + assert_equals(e.data, "MissingDeviceMemory"); + t.done(); + }), {once: true}); + + // Step 2 + new_window = window.open("/client-hints/clear-site-data/resources/check-client-hints.py"); + t.add_cleanup(new_window.close); +}, "Setting client hints after Clear-Site-Data for cookies shouldn't allow the client hints to take."); +</script> +</body> +</html> diff --git a/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-cookies.https.html.headers b/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-cookies.https.html.headers new file mode 100644 index 0000000000..d0c1afae77 --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-cookies.https.html.headers @@ -0,0 +1,2 @@ +Clear-Site-Data: "cookies" +Accept-CH: Sec-CH-Device-Memory diff --git a/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-storage.https.html b/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-storage.https.html new file mode 100644 index 0000000000..30d541b6ed --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-storage.https.html @@ -0,0 +1,24 @@ +<!DOCTYPE html> +<body> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +// Here's the set-up for this test: +// Step 1 (first window) Set client hints in the same header that clears them. +// Step 2 (first window) Open second window. +// Step 3 (second window) Message first window about client hints sent. +// Step 4 (first window) Asserts client hints sent. +async_test(t => { + // Step 4 + window.addEventListener("message", t.step_func(e => { + assert_equals(e.data, "HadDeviceMemory"); + t.done(); + }), {once: true}); + + // Step 2 + new_window = window.open("/client-hints/clear-site-data/resources/check-client-hints.py"); + t.add_cleanup(new_window.close); +}, "Setting client hints after Clear-Site-Data for storage should allow the client hints to take."); +</script> +</body> +</html> diff --git a/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-storage.https.html.headers b/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-storage.https.html.headers new file mode 100644 index 0000000000..d898684cac --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/set-client-hints-after-clear-storage.https.html.headers @@ -0,0 +1,2 @@ +Clear-Site-Data: "storage" +Accept-CH: Sec-CH-Device-Memory diff --git a/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-all.https.html b/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-all.https.html new file mode 100644 index 0000000000..062e72b544 --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-all.https.html @@ -0,0 +1,24 @@ +<!DOCTYPE html> +<body> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +// Here's the set-up for this test: +// Step 1 (first window) Set client hints in the same header that clears them. +// Step 2 (first window) Open second window. +// Step 3 (second window) Message first window about client hints sent. +// Step 4 (first window) Asserts client hints not sent. +async_test(t => { + // Step 4 + window.addEventListener("message", t.step_func(e => { + assert_equals(e.data, "MissingDeviceMemory"); + t.done(); + }), {once: true}); + + // Step 2 + new_window = window.open("/client-hints/clear-site-data/resources/check-client-hints.py"); + t.add_cleanup(new_window.close); +}, "Setting critical client hints after Clear-Site-Data for all shouldn't allow the client hints to take."); +</script> +</body> +</html> diff --git a/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-all.https.html.headers b/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-all.https.html.headers new file mode 100644 index 0000000000..ebd7a88cc6 --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-all.https.html.headers @@ -0,0 +1,3 @@ +Clear-Site-Data: "*" +Accept-CH: Sec-CH-Device-Memory +Critical-CH: Sec-CH-Device-Memory diff --git a/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-cache.https.html b/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-cache.https.html new file mode 100644 index 0000000000..ab97fa182b --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-cache.https.html @@ -0,0 +1,24 @@ +<!DOCTYPE html> +<body> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +// Here's the set-up for this test: +// Step 1 (first window) Set client hints in the same header that clears them. +// Step 2 (first window) Open second window. +// Step 3 (second window) Message first window about client hints sent. +// Step 4 (first window) Asserts client hints not sent. +async_test(t => { + // Step 4 + window.addEventListener("message", t.step_func(e => { + assert_equals(e.data, "MissingDeviceMemory"); + t.done(); + }), {once: true}); + + // Step 2 + new_window = window.open("/client-hints/clear-site-data/resources/check-client-hints.py"); + t.add_cleanup(new_window.close); +}, "Setting critical client hints after Clear-Site-Data for cache shouldn't allow the client hints to take."); +</script> +</body> +</html> diff --git a/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-cache.https.html.headers b/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-cache.https.html.headers new file mode 100644 index 0000000000..03d39b6fd7 --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-cache.https.html.headers @@ -0,0 +1,3 @@ +Clear-Site-Data: "cache" +Accept-CH: Sec-CH-Device-Memory +Critical-CH: Sec-CH-Device-Memory diff --git a/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-client-hints.https.html b/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-client-hints.https.html new file mode 100644 index 0000000000..cdddb9ff35 --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-client-hints.https.html @@ -0,0 +1,24 @@ +<!DOCTYPE html> +<body> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +// Here's the set-up for this test: +// Step 1 (first window) Set client hints in the same header that clears them. +// Step 2 (first window) Open second window. +// Step 3 (second window) Message first window about client hints sent. +// Step 4 (first window) Asserts client hints not sent. +async_test(t => { + // Step 4 + window.addEventListener("message", t.step_func(e => { + assert_equals(e.data, "MissingDeviceMemory"); + t.done(); + }), {once: true}); + + // Step 2 + new_window = window.open("/client-hints/clear-site-data/resources/check-client-hints.py"); + t.add_cleanup(new_window.close); +}, "Setting critical client hints after Clear-Site-Data for client hints shouldn't allow the client hints to take."); +</script> +</body> +</html> diff --git a/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-client-hints.https.html.headers b/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-client-hints.https.html.headers new file mode 100644 index 0000000000..f55913cb5b --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-client-hints.https.html.headers @@ -0,0 +1,3 @@ +Clear-Site-Data: "clientHints" +Accept-CH: Sec-CH-Device-Memory +Critical-CH: Sec-CH-Device-Memory diff --git a/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-cookies.https.html b/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-cookies.https.html new file mode 100644 index 0000000000..0060f3aaa0 --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-cookies.https.html @@ -0,0 +1,24 @@ +<!DOCTYPE html> +<body> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +// Here's the set-up for this test: +// Step 1 (first window) Set client hints in the same header that clears them. +// Step 2 (first window) Open second window. +// Step 3 (second window) Message first window about client hints sent. +// Step 4 (first window) Asserts client hints not sent. +async_test(t => { + // Step 4 + window.addEventListener("message", t.step_func(e => { + assert_equals(e.data, "MissingDeviceMemory"); + t.done(); + }), {once: true}); + + // Step 2 + new_window = window.open("/client-hints/clear-site-data/resources/check-client-hints.py"); + t.add_cleanup(new_window.close); +}, "Setting critical client hints after Clear-Site-Data for cookies shouldn't allow the client hints to take."); +</script> +</body> +</html> diff --git a/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-cookies.https.html.headers b/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-cookies.https.html.headers new file mode 100644 index 0000000000..69c7e720ac --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-cookies.https.html.headers @@ -0,0 +1,3 @@ +Clear-Site-Data: "cookies" +Accept-CH: Sec-CH-Device-Memory +Critical-CH: Sec-CH-Device-Memory diff --git a/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-storage.https.html b/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-storage.https.html new file mode 100644 index 0000000000..9237e28ced --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-storage.https.html @@ -0,0 +1,24 @@ +<!DOCTYPE html> +<body> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +// Here's the set-up for this test: +// Step 1 (first window) Set client hints in the same header that clears them. +// Step 2 (first window) Open second window. +// Step 3 (second window) Message first window about client hints sent. +// Step 4 (first window) Asserts client hints sent. +async_test(t => { + // Step 4 + window.addEventListener("message", t.step_func(e => { + assert_equals(e.data, "HadDeviceMemory"); + t.done(); + }), {once: true}); + + // Step 2 + new_window = window.open("/client-hints/clear-site-data/resources/check-client-hints.py"); + t.add_cleanup(new_window.close); +}, "Setting critical client hints after Clear-Site-Data for storage should allow the client hints to take."); +</script> +</body> +</html> diff --git a/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-storage.https.html.headers b/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-storage.https.html.headers new file mode 100644 index 0000000000..0f18541cf7 --- /dev/null +++ b/testing/web-platform/tests/client-hints/clear-site-data/set-critical-client-hints-after-clear-storage.https.html.headers @@ -0,0 +1,3 @@ +Clear-Site-Data: "storage" +Accept-CH: Sec-CH-Device-Memory +Critical-CH: Sec-CH-Device-Memory |