58 lines
2.4 KiB
HTML
58 lines
2.4 KiB
HTML
<!DOCTYPE html>
|
|
<meta name="timeout" content="long">
|
|
<script src="/resources/testdriver.js"></script>
|
|
<script src="/resources/testdriver-vendor.js"></script>
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
<script src="/common/get-host-info.sub.js"></script>
|
|
<script src="../resources/util.js"></script>
|
|
<body></body>
|
|
<script>
|
|
'use strict';
|
|
|
|
const { HTTPS_ORIGIN, HTTPS_NOTSAMESITE_ORIGIN } = get_host_info();
|
|
const PATH = location.pathname.substring(0, location.pathname.lastIndexOf('/') + 1);
|
|
const IFRAME_PATH = PATH + 'resources/iframe-helper.html';
|
|
|
|
promise_test(async t => {
|
|
const src = HTTPS_NOTSAMESITE_ORIGIN + IFRAME_PATH;
|
|
const iframe = await load_iframe(src, /*permission_policy=*/'');
|
|
await promise_rejects_dom(t, 'NotAllowedError', run_iframe_test(iframe, 'SummarizerCreate'));
|
|
}, 'Throw a \'NotAllowedError\' when creating Summarizer within cross-origin iframe');
|
|
|
|
promise_test(async t => {
|
|
const src = HTTPS_NOTSAMESITE_ORIGIN + IFRAME_PATH;
|
|
const iframe = await load_iframe(src, 'summarizer');
|
|
assert_equals(await run_iframe_test(iframe, 'SummarizerCreate'), 'Success');
|
|
}, 'Summarizer can be created within cross-origin iframe with permission policy');
|
|
|
|
promise_test(async t => {
|
|
const src = HTTPS_ORIGIN + IFRAME_PATH;
|
|
const iframe = await load_iframe(src, /*permission_policy=*/'');
|
|
assert_equals(await run_iframe_test(iframe, 'SummarizerCreate'), 'Success');
|
|
}, 'Summarizer can be used within same-origin iframe');
|
|
|
|
promise_test(async t => {
|
|
const src = HTTPS_NOTSAMESITE_ORIGIN + IFRAME_PATH;
|
|
const iframe = await load_iframe(src, /*permission_policy=*/'');
|
|
assert_equals(
|
|
await run_iframe_test(iframe, 'SummarizerAvailability'), 'unavailable');
|
|
}, 'Summarizer is unavailable within cross-origin iframe');
|
|
|
|
promise_test(async t => {
|
|
const src = HTTPS_NOTSAMESITE_ORIGIN + IFRAME_PATH;
|
|
const iframe = await load_iframe(src, 'summarizer');
|
|
assert_in_array(
|
|
await run_iframe_test(iframe, 'SummarizerAvailability'),
|
|
kAvailableAvailabilities);
|
|
}, 'Summarizer is available within cross-origin iframe with permission policy');
|
|
|
|
promise_test(async t => {
|
|
const src = HTTPS_ORIGIN + IFRAME_PATH;
|
|
const iframe = await load_iframe(src, /*permission_policy=*/'');
|
|
assert_in_array(
|
|
await run_iframe_test(iframe, 'SummarizerAvailability'),
|
|
kAvailableAvailabilities);
|
|
}, 'Summarizer is available within same-origin iframe');
|
|
|
|
</script>
|