create-enabled-on-self-origin-by-permissions-policy.https.sub.html (2519B)
1 <!DOCTYPE html> 2 <meta charset="utf-8" /> 3 <script src="/resources/testharness.js"></script> 4 <script src="/resources/testharnessreport.js"></script> 5 <script src="/resources/testdriver.js"></script> 6 <script src="/resources/testdriver-vendor.js"></script> 7 <script src="/permissions-policy/resources/permissions-policy.js"></script> 8 <script src="/common/get-host-info.sub.js"></script> 9 <body></body> 10 <script type="module"> 11 import { makeCreateOptions } from "./support/helper.js"; 12 const { HTTPS_REMOTE_ORIGIN } = get_host_info(); 13 const create_same_origin_src = 14 "/digital-credentials/permissions-policy/create.html"; 15 const create_cross_origin_src = new URL(create_same_origin_src, HTTPS_REMOTE_ORIGIN).href; 16 17 promise_test(async (test) => { 18 await test_driver.bless("user activation"); 19 await promise_rejects_js( 20 test, 21 TypeError, 22 navigator.credentials.create(makeCreateOptions({protocol: []})) 23 ); 24 }, "Permissions-Policy header digital-credentials-create=(self) allows the top-level document."); 25 26 promise_test(async (test) => { 27 await test_feature_availability({ 28 feature_description: "Digital Credential API", 29 test, 30 src: create_same_origin_src, 31 expect_feature_available: expect_feature_available_default, 32 is_promise_test: true, 33 needs_focus: true, 34 }); 35 }, "Permissions-Policy header digital-credentials-create=(self) allows same-origin iframes."); 36 37 promise_test(async (test) => { 38 await test_feature_availability({ 39 feature_description: "Digital Credential API", 40 test, 41 src: create_cross_origin_src, 42 expect_feature_available: expect_feature_unavailable_default, 43 is_promise_test: true, 44 needs_focus: true, 45 }); 46 }, "Permissions-Policy header digital-credentials-create=(self) disallows cross-origin iframes."); 47 48 promise_test(async (test) => { 49 await test_feature_availability({ 50 feature_description: "Digital Credential API", 51 test, 52 src: create_cross_origin_src, 53 expect_feature_available: expect_feature_unavailable_default, 54 feature_name: "digital-credentials-create", 55 is_promise_test: true, 56 needs_focus: true, 57 }); 58 }, "Permissions-Policy header explicitly set to digital-credentials-create=(self) cannot be overridden by allow attribute."); 59 </script>