accessible/tests/mochitest/jsat/test_traversal.html

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/accessible/tests/mochitest/jsat/test_traversal.html	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,145 @@
     1.4 +<!DOCTYPE html>
     1.5 +<html>
     1.6 +<head>
     1.7 +  <title>Tests AccessFu TraversalRules</title>
     1.8 +  <meta charset="utf-8" />
     1.9 +  <link rel="stylesheet" type="text/css" href="chrome://mochikit/content/tests/SimpleTest/test.css" />
    1.10 +
    1.11 +  <script type="application/javascript"
    1.12 +          src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js">
    1.13 +  </script>
    1.14 +  <script type="application/javascript"
    1.15 +          src="chrome://mochikit/content/chrome-harness.js">
    1.16 +  </script>
    1.17 +
    1.18 +  <script type="application/javascript" src="../common.js"></script>
    1.19 +  <script type="application/javascript" src="../browser.js"></script>
    1.20 +  <script type="application/javascript" src="../events.js"></script>
    1.21 +  <script type="application/javascript" src="../role.js"></script>
    1.22 +  <script type="application/javascript" src="../states.js"></script>
    1.23 +  <script type="application/javascript" src="../pivot.js"></script>
    1.24 +  <script type="application/javascript" src="../layout.js"></script>
    1.25 +
    1.26 +  <script type="application/javascript">
    1.27 +    Components.utils.import("resource://gre/modules/accessibility/TraversalRules.jsm");
    1.28 +    var gBrowserWnd = null;
    1.29 +    var gQueue = null;
    1.30 +
    1.31 +    function doTest()
    1.32 +    {
    1.33 +      var doc = currentTabDocument();
    1.34 +      var docAcc = getAccessible(doc, [nsIAccessibleDocument]);
    1.35 +
    1.36 +      gQueue = new eventQueue();
    1.37 +
    1.38 +      gQueue.onFinish = function onFinish()
    1.39 +      {
    1.40 +        closeBrowserWindow();
    1.41 +      }
    1.42 +
    1.43 +      queueTraversalSequence(gQueue, docAcc, TraversalRules.Heading, null,
    1.44 +                             ['heading-1', 'heading-2', 'heading-3', 'heading-5']);
    1.45 +
    1.46 +      queueTraversalSequence(gQueue, docAcc, TraversalRules.Entry, null,
    1.47 +                             ['input-1-1', 'label-1-2', 'input-1-3',
    1.48 +                              'input-1-4', 'input-1-5']);
    1.49 +
    1.50 +      // move back an element to hit all the form elements, because the VC is
    1.51 +      // currently at the first input element
    1.52 +      gQueue.push(new setVCPosInvoker(docAcc, "movePrevious",
    1.53 +                                      TraversalRules.Heading, "heading-1"));
    1.54 +
    1.55 +      queueTraversalSequence(gQueue, docAcc, TraversalRules.FormElement, null,
    1.56 +                             ['input-1-1', 'label-1-2', 'button-1-1',
    1.57 +                              'radio-1-1', 'radio-1-2', 'input-1-3',
    1.58 +                              'input-1-4', 'button-1-2', 'checkbox-1-1',
    1.59 +                              'select-1-1', 'select-1-2', 'checkbox-1-2',
    1.60 +                              'select-1-3', 'input-1-5', 'button-1-3',
    1.61 +                              'button-2-1', 'button-2-2', 'button-2-3',
    1.62 +                              'button-2-4']);
    1.63 +
    1.64 +      queueTraversalSequence(gQueue, docAcc, TraversalRules.Button, null,
    1.65 +                             ['button-1-1', 'button-1-2', 'button-1-3',
    1.66 +                              'button-2-1', 'button-2-2', 'button-2-3',
    1.67 +                              'button-2-4']);
    1.68 +
    1.69 +      queueTraversalSequence(gQueue, docAcc, TraversalRules.RadioButton, null,
    1.70 +                             ['radio-1-1', 'radio-1-2']);
    1.71 +
    1.72 +      queueTraversalSequence(gQueue, docAcc, TraversalRules.Checkbox, null,
    1.73 +                             ['checkbox-1-1', 'checkbox-1-2']);
    1.74 +
    1.75 +      queueTraversalSequence(gQueue, docAcc, TraversalRules.Combobox, null,
    1.76 +                             ['select-1-1', 'select-1-2', 'select-1-3']);
    1.77 +
    1.78 +      queueTraversalSequence(gQueue, docAcc, TraversalRules.List, null,
    1.79 +                             ['list-1', 'list-2', 'list-3']);
    1.80 +
    1.81 +      queueTraversalSequence(gQueue, docAcc, TraversalRules.ListItem, null,
    1.82 +                             ['listitem-1-1', 'listitem-2-1', 'listitem-2-2',
    1.83 +                              'listitem-3-1', 'listitem-3-2', 'listitem-3-3',
    1.84 +                              'listitem-2-3']);
    1.85 +
    1.86 +      queueTraversalSequence(gQueue, docAcc, TraversalRules.Graphic, null,
    1.87 +                             ['image-2', 'image-3']);
    1.88 +
    1.89 +      queueTraversalSequence(gQueue, docAcc, TraversalRules.Link, null,
    1.90 +                             ['link-1', 'link-2', 'link-3']);
    1.91 +
    1.92 +      queueTraversalSequence(gQueue, docAcc, TraversalRules.Anchor, null,
    1.93 +                             ['anchor-1', 'anchor-2']);
    1.94 +
    1.95 +      queueTraversalSequence(gQueue, docAcc, TraversalRules.Separator, null,
    1.96 +                             ['separator-1', 'separator-2']);
    1.97 +
    1.98 +      queueTraversalSequence(gQueue, docAcc, TraversalRules.Table, null,
    1.99 +                             ['table-1', 'table-2']);
   1.100 +
   1.101 +      queueTraversalSequence(gQueue, docAcc, TraversalRules.Simple, null,
   1.102 +                             ['heading-1', 'Name:', 'input-1-1', 'label-1-2',
   1.103 +                              'button-1-1', 'Radios are old: ', 'radio-1-1',
   1.104 +                              'Radios are new: ', 'radio-1-2', 'Password:',
   1.105 +                              'input-1-3', 'Unlucky number:', 'input-1-4',
   1.106 +                              'button-1-2', 'Check me: ', 'checkbox-1-1',
   1.107 +                              'select-1-1', 'Value 1', 'Value 2', 'Value 3',
   1.108 +                              'Check me too: ', 'checkbox-1-2', 'But not me: ',
   1.109 +                              'Or me! ', 'Value 1', 'Value 2', 'Value 3',
   1.110 +                              'Electronic mailing address:', 'input-1-5',
   1.111 +                              'button-1-3', 'heading-2', 'heading-3',
   1.112 +                              'button-2-1', 'button-2-2', 'button-2-3',
   1.113 +                              'button-2-4', 'Programming Language',
   1.114 +                              'A esoteric weapon wielded by only the most ' +
   1.115 +                              'formidable warriors, for its unrelenting strict' +
   1.116 +                              ' power is unfathomable.',
   1.117 +                              'Lists of Programming Languages', 'Lisp ',
   1.118 +                              'Scheme', 'Racket', 'Clojure', 'JavaScript', 'heading-5',
   1.119 +                              'image-2', 'image-3', 'Not actually an image',
   1.120 +                              'link-1', 'anchor-1', 'link-2', 'anchor-2', 'link-3',
   1.121 +                              '3', '1', '4', '1', 'Just an innocuous separator',
   1.122 +                              'Dirty Words', 'Meaning', 'Mud', 'Wet Dirt',
   1.123 +                              'Dirt', 'Messy Stuff']);
   1.124 +
   1.125 +      gQueue.invoke();
   1.126 +    }
   1.127 +
   1.128 +    SimpleTest.waitForExplicitFinish();
   1.129 +    addLoadEvent(function () {
   1.130 +      /* We open a new browser because we need to test with a top-level content
   1.131 +         document. */
   1.132 +      openBrowserWindow(
   1.133 +        doTest,
   1.134 +        getRootDirectory(window.location.href) + "doc_traversal.html");
   1.135 +    });
   1.136 +  </script>
   1.137 +</head>
   1.138 +<body id="body">
   1.139 +
   1.140 +  <a target="_blank"
   1.141 +     title="Add tests for AccessFu TraversalRules"
   1.142 +     href="https://bugzilla.mozilla.org/show_bug.cgi?id=933808">Mozilla Bug 933808</a>
   1.143 +  <p id="display"></p>
   1.144 +  <div id="content" style="display: none"></div>
   1.145 +  <pre id="test">
   1.146 +  </pre>
   1.147 +</body>
   1.148 +</html>

mercurial