summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/selection/anonymous/details-mutate.html
blob: 3cd547511251ec80d82656a962b1ec3271423f9f (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
<!DOCTYPE html>
<meta charset="utf-8">
<title>Test selecting anonymous summary element inside details</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-actions.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
<link rel="stylesheet" href="/fonts/ahem.css">
<style>
  details {
    font: 16px/1 Ahem;
  }
</style>
<details id="d"></details>
<script>
  const selection = getSelection();
  d.addEventListener("DOMSubtreeModified", ev => {
    window.find("cthulu", true, false);
    selection.extend(document.body, document.body.childNodes.length);
  });

  window.onload = () => {
    promise_test(async () => {
      // This enables `.extend()`
      selection.collapse(document.body);
      // Clicking implicitly selects an anonymous summary element inside <details>
      await new test_driver.Actions()
        .pointerMove(0, 0, { origin: d })
        .pointerDown()
        .pointerUp()
        .send();
      // FIXME: Convert this to a crash test. Currently test_driver actions
      // do not work within crash tests.
      assert_true(true, "No crash");
    }, "Manipulating selection after clicking <details> shouldn't cause a crash");
  };
</script>