<!doctype html>
<html>
  <head>
    <title>doc-example</title>
    <link rel="stylesheet" href="/wai-aria/scripts/manual.css">
    <script src="/resources/testharness.js"></script>
    <script src="/resources/testharnessreport.js"></script>
    <script src="/wai-aria/scripts/ATTAcomm.js"></script>
    <script>
    setup({explicit_timeout: true, explicit_done: true });

    var theTest = new ATTAcomm(
    {
   "steps" : [
      {
         "element" : "test",
         "test" : {
            "ATK" : [
               [
                  "property",
                  "role",
                  "is",
                  "ROLE_SECTION"
               ],
               [
                  "property",
                  "objectAttributes",
                  "contains",
                  "xml-roles:doc-example"
               ]
            ],
            "AXAPI" : [
               [
                  "property",
                  "AXRole",
                  "is",
                  "AXGroup"
               ],
               [
                  "property",
                  "AXSubrole",
                  "is",
                  "AXApplicationGroup"
               ],
               [
                  "property",
                  "AXRoleDescription",
                  "is",
                  "group"
               ]
            ],
            "IAccessible2" : [
               [
                  "property",
                  "objectAttributes",
                  "contains",
                  "xml-roles:doc-example"
               ],
               [
                  "property",
                  "role",
                  "is",
                  "IA2_ROLE_SECTION"
               ]
            ],
            "UIA" : [
               [
                  "property",
                  "ControlType",
                  "is",
                  "Text"
               ],
               [
                  "property",
                  "LocalizedControlType",
                  "is",
                  "example"
               ]
            ]
         },
         "title" : "step 1",
         "type" : "test"
      }
   ],
   "title" : "doc-example"
}

    ) ;
    </script>
  </head>
  <body>
  <p>This test examines the ARIA properties for doc-example.</p>
    <div role="doc-example" id="test">Text</div>

  <div id="manualMode"></div>
  <div id="log"></div>
  <div id="ATTAmessages"></div>
  </body>
</html>

