summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/picture-in-picture/css-selector.html
blob: bf64a1421f56e2696dfe6829a6929f402b2ff01e (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
<!DOCTYPE html>
<title>Test CSS selector :picture-in-picture</title>
<script src="/common/media.js"></script>
<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>
<script src="resources/picture-in-picture-helpers.js"></script>
<style>
  video {
    color: rgb(0, 0, 255);
  }
  :picture-in-picture {
    color: rgb(0, 255, 0);
  }
  /* illegal selector list */
  video, :picture-in-picture(*) {
    color: rgb(255, 0, 0);
  }
</style>
<body></body>
<script>
promise_test(async t => {
  const video = await loadVideo();
  document.body.appendChild(video);
  assert_equals(getComputedStyle(video).color, 'rgb(0, 0, 255)');

  await requestPictureInPictureWithTrustedClick(video);
  assert_equals(getComputedStyle(video).color, 'rgb(0, 255, 0)');

  await document.exitPictureInPicture();
  assert_equals(getComputedStyle(video).color, 'rgb(0, 0, 255)');
}, 'Entering and leaving Picture-in-Picture toggles CSS selector');
</script>