diff --git a/testing/web-platform/tests/battery-status/META.yml b/testing/web-platform/tests/battery-status/META.yml index 12a2f12c32e9c..a069984ddb226 100644 --- a/testing/web-platform/tests/battery-status/META.yml +++ b/testing/web-platform/tests/battery-status/META.yml @@ -2,3 +2,4 @@ spec: https://w3c.github.io/battery/ suggested_reviewers: - anssiko - zqzhang + - Honry diff --git a/testing/web-platform/tests/battery-status/battery-allowed-by-feature-policy-attribute-redirect-on-load.https.sub.html b/testing/web-platform/tests/battery-status/battery-allowed-by-feature-policy-attribute-redirect-on-load.https.sub.html new file mode 100644 index 0000000000000..47a9cbac0fc4d --- /dev/null +++ b/testing/web-platform/tests/battery-status/battery-allowed-by-feature-policy-attribute-redirect-on-load.https.sub.html @@ -0,0 +1,28 @@ + + + + + + + diff --git a/testing/web-platform/tests/battery-status/battery-allowed-by-feature-policy-attribute.https.sub.html b/testing/web-platform/tests/battery-status/battery-allowed-by-feature-policy-attribute.https.sub.html new file mode 100644 index 0000000000000..96bca54ec8e08 --- /dev/null +++ b/testing/web-platform/tests/battery-status/battery-allowed-by-feature-policy-attribute.https.sub.html @@ -0,0 +1,27 @@ + + + + + + + diff --git a/testing/web-platform/tests/battery-status/battery-allowed-by-feature-policy.https.sub.html b/testing/web-platform/tests/battery-status/battery-allowed-by-feature-policy.https.sub.html new file mode 100644 index 0000000000000..5849af5750148 --- /dev/null +++ b/testing/web-platform/tests/battery-status/battery-allowed-by-feature-policy.https.sub.html @@ -0,0 +1,28 @@ + + + + + + + diff --git a/testing/web-platform/tests/battery-status/battery-allowed-by-feature-policy.https.sub.html.headers b/testing/web-platform/tests/battery-status/battery-allowed-by-feature-policy.https.sub.html.headers new file mode 100644 index 0000000000000..03b98040cc4d2 --- /dev/null +++ b/testing/web-platform/tests/battery-status/battery-allowed-by-feature-policy.https.sub.html.headers @@ -0,0 +1 @@ +Feature-Policy: battery * diff --git a/testing/web-platform/tests/battery-status/battery-iframe.https.html b/testing/web-platform/tests/battery-status/battery-allowed-in-same-origin-iframe.https.html similarity index 53% rename from testing/web-platform/tests/battery-status/battery-iframe.https.html rename to testing/web-platform/tests/battery-status/battery-allowed-in-same-origin-iframe.https.html index 1f95b4ecb3203..c0d684f26d7d2 100644 --- a/testing/web-platform/tests/battery-status/battery-iframe.https.html +++ b/testing/web-platform/tests/battery-status/battery-allowed-in-same-origin-iframe.https.html @@ -1,6 +1,6 @@ -Battery Test: navigator.getBattery() is not allowed in non top-level browsing context +Battery Test: navigator.getBattery() is allowed in same origin iframe @@ -16,12 +16,11 @@ }); } -promise_test(t => { - var iframe = document.getElementById('blank'); - var src = 'support-iframe.html'; - return load_iframe(iframe, src) - .then(iframe => promise_rejects(t, 'SecurityError', - iframe.contentWindow.navigator.getBattery())); -}, "throw a 'SecurityError' when invoking navigator.getBattery() within iframe"); +promise_test(async t => { + let iframe = document.getElementById('blank'); + const src = 'support-iframe.html'; + iframe = await load_iframe(iframe, src); + await iframe.contentWindow.navigator.getBattery(); +}, "navigator.getBattery() is allowed in same origin iframe"); diff --git a/testing/web-platform/tests/battery-status/battery-default-feature-policy.https.sub.html b/testing/web-platform/tests/battery-status/battery-default-feature-policy.https.sub.html new file mode 100644 index 0000000000000..5486a453e4e99 --- /dev/null +++ b/testing/web-platform/tests/battery-status/battery-default-feature-policy.https.sub.html @@ -0,0 +1,28 @@ + + + + + + + diff --git a/testing/web-platform/tests/battery-status/battery-disabled-by-feature-policy.https.sub.html b/testing/web-platform/tests/battery-status/battery-disabled-by-feature-policy.https.sub.html new file mode 100644 index 0000000000000..515c64fe490fb --- /dev/null +++ b/testing/web-platform/tests/battery-status/battery-disabled-by-feature-policy.https.sub.html @@ -0,0 +1,28 @@ + + + + + + + diff --git a/testing/web-platform/tests/battery-status/battery-disabled-by-feature-policy.https.sub.html.headers b/testing/web-platform/tests/battery-status/battery-disabled-by-feature-policy.https.sub.html.headers new file mode 100644 index 0000000000000..09a5ae84a123a --- /dev/null +++ b/testing/web-platform/tests/battery-status/battery-disabled-by-feature-policy.https.sub.html.headers @@ -0,0 +1 @@ +Feature-Policy: battery 'none' diff --git a/testing/web-platform/tests/battery-status/battery-disallowed-in-cross-origin-iframe.https.sub.html b/testing/web-platform/tests/battery-status/battery-disallowed-in-cross-origin-iframe.https.sub.html new file mode 100644 index 0000000000000..8b48626b55114 --- /dev/null +++ b/testing/web-platform/tests/battery-status/battery-disallowed-in-cross-origin-iframe.https.sub.html @@ -0,0 +1,27 @@ + + +Battery Test: navigator.getBattery() is not allowed in cross origin iframe + + + + +
+ + diff --git a/testing/web-platform/tests/feature-policy/resources/feature-policy-battery.html b/testing/web-platform/tests/feature-policy/resources/feature-policy-battery.html new file mode 100644 index 0000000000000..dff4b3290d66c --- /dev/null +++ b/testing/web-platform/tests/feature-policy/resources/feature-policy-battery.html @@ -0,0 +1,9 @@ +