<!doctype html>
<html>
  <head>
    <title>doc-subtitle</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_HEADING"
               ],
               [
                  "property",
                  "objectAttributes",
                  "contains",
                  "xml-roles:doc-subtitle"
               ]
            ],
            "AXAPI" : [
               [
                  "property",
                  "AXRole",
                  "is",
                  "AXHeading"
               ],
               [
                  "property",
                  "AXSubrole",
                  "is",
                  "<nil>"
               ],
               [
                  "property",
                  "AXRoleDescription",
                  "is",
                  "heading"
               ]
            ],
            "IAccessible2" : [
               [
                  "property",
                  "objectAttributes",
                  "contains",
                  "xml-roles:doc-subtitle"
               ],
               [
                  "property",
                  "role",
                  "is",
                  "IA2_ROLE_HEADING"
               ]
            ],
            "UIA" : [
               [
                  "property",
                  "ControlType",
                  "is",
                  "Text"
               ],
               [
                  "property",
                  "LocalizedControlType",
                  "is",
                  "subtitle"
               ]
            ]
         },
         "title" : "step 1",
         "type" : "test"
      }
   ],
   "title" : "doc-subtitle"
}

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

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

