summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/fs/script-tests/FileSystemBaseHandle-postMessage-frames.js
blob: 1e77b89d770032fc5321bdaf3193a6365a2f3065 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
'use strict';

// This script depends on the following scripts:
//    /fs/resources/messaging-helpers.js
//    /fs/resources/messaging-blob-helpers.js
//    /fs/resources/messaging-serialize-helpers.js
//    /fs/resources/test-helpers.js

directory_test(async (t, root_dir) => {
  const iframe = await add_iframe(t, {src: kDocumentMessageTarget});
  await do_post_message_test(
      t, root_dir, /*receiver=*/ self, /*target=*/ iframe.contentWindow,
      /*target_origin=*/ '*');
}, 'Send and receive messages using a same origin iframe.');

directory_test(async (t, root_dir) => {
  const iframe = await add_iframe(t, {
    src: kDocumentMessageTarget,
    sandbox: 'allow-scripts allow-same-origin'
  });
  await do_post_message_test(
      t, root_dir, /*receiver=*/ self, /*target=*/ iframe.contentWindow,
      /*target_origin=*/ '*');
}, 'Send and receive messages using a sandboxed same origin iframe.');

directory_test(async (t, root_dir) => {
  const blob_url = await create_message_target_blob_url(t);
  const iframe = await add_iframe(t, {src: blob_url});
  await do_post_message_test(
      t, root_dir, /*receiver=*/ self, /*target=*/ iframe.contentWindow,
      /*target_origin=*/ '*');
}, 'Send and receive messages using a blob iframe.');

directory_test(async (t, root_dir) => {
  const iframe_html = await create_message_target_html_without_subresources(t);
  const iframe = await add_iframe(t, {srcdoc: iframe_html});
  await do_post_message_test(
      t, root_dir, /*receiver=*/ self, /*target=*/ iframe.contentWindow,
      /*target_origin=*/ '*');
}, 'Send and receive messages using an iframe srcdoc.');