summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/document-picture-in-picture/returns-window-with-document.https.html
blob: a1d7363e54bdc5fbc04a6ad6e0aad30b552ea8d7 (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
<!DOCTYPE html>
<title>Test that documentPictureInPicture.requestWindow()
  returns a Window object</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
<body>
  <div id="div"></div>
<script>
const div = document.getElementById('div');

async_test((t) => {
  test_driver.bless('request PiP window').then(t.step_func(_ => {
    documentPictureInPicture.requestWindow().then(t.step_func_done((pipWindow) => {
      assert_true(!!pipWindow.document,
          'Window should contain a document');
      assert_true(documentPictureInPicture.window === pipWindow,
          'DocumentPictureInPicture.window should match the current window');

      // We should be able to move an element to that document.
      assert_true(document.body.contains(div),
          'The original document should start with the div');
      assert_false(pipWindow.document.body.contains(div),
          'The PiP document should not start with the div');
      pipWindow.document.body.append(div);
      assert_false(document.body.contains(div),
          'The div should have moved away from the original document');
      assert_true(pipWindow.document.body.contains(div),
          'The div should have moved to the PiP document');
    }));
  }));
});
</script>
</body>