summaryrefslogtreecommitdiffstats
path: root/accessible/tests/mochitest/relations/test_groupInfoUpdate.html
blob: efca27617c63d66faf3343689f83a3ac87783e93 (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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
<html>
<head>
  <title>Test accessible relations when AccGroupInfo updated</title>
  <link rel="stylesheet" type="text/css"
        href="chrome://mochikit/content/tests/SimpleTest/test.css" />
  <script src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script>

  <script type="application/javascript"
          src="../common.js"></script>
  <script type="application/javascript"
          src="../relations.js"></script>
  <script type="application/javascript"
          src="../promisified-events.js"></script>

  <script type="application/javascript">
    async function doTests() {
      info("Testing NODE_CHILD_OF update after DOM removal");
      testRelation("l1i2", RELATION_NODE_CHILD_OF, "l1i1");
      let reorder = waitForEvent(EVENT_REORDER, "l1");
      getNode("l1i1").remove();
      await reorder;
      testRelation("l1i2", RELATION_NODE_CHILD_OF, "l1");

      info("Testing NODE_CHILD_OF update after aria-owns removal");
      testRelation("l2i2", RELATION_NODE_CHILD_OF, "l2i1");
      reorder = waitForEvent(EVENT_REORDER, "l2");
      // Move l2i1 out of l2 using aria-owns.
      getNode("l2trash").setAttribute("aria-owns", "l2i1");
      await reorder;
      testRelation("l2i2", RELATION_NODE_CHILD_OF, "l2");

      SimpleTest.finish();
    }

    SimpleTest.waitForExplicitFinish();
    addA11yLoadEvent(doTests);
  </script>
</head>

<body id="body">
  <p id="display"></p>
  <div id="content" style="display: none"></div>
  <pre id="test">
  </pre>

  <div id="l1" role="list">
    <div id="l1i1" role="listitem" aria-level="1">a</div>
    <div id="l1i2" role="listitem" aria-level="2">b</div>
  </div>

  <div id="l2" role="list">
    <div id="l2i1" role="listitem" aria-level="1">a</div>
    <div id="l2i2" role="listitem" aria-level="2">b</div>
  </div>
  <div id="l2trash"></div>
</body>
</html>