summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/conformance-checkers/html-aria/live-events/test-case-live-event-5.html
blob: 914b28222c9d46af83960bdf64ef9bdfdee3cde6 (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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
<!DOCTYPE html> 
<html>
  <head>
    <title>ARIA 1.0 Live Region Event Test Case: Change text content (LOG role)</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <style type="text/css">
      div#TEST_ID {
        margin: 0.5em; 
        padding: 0.25em; 
        border: medium gray solid; 
        width: 20em;
      } 
    </style>  
  </head>
  <body>
    <h1>ARIA 1.0 Live Region Event Test Case: Change text content (LOG role)</h1>
    
    <div id="TEST_ID" role="log">
      LOG ROLE TEST TEXT 1
    </div>
    
    <button onclick="tryAgain()">Try Again</button>
    
    <h2>Description</h2>
    <p>An element with an role attribute with the value "log" has a text content changed
    1.5 seconds after the document is loaded.</p>
    
    <h2>Expected Results</h2>
    
    <dl>
      <dt>ATK/AT-SPI</dt>
      <dd>ATK/AT-SPIevent: text_changed::delete event followed by text_changed::insert event</dd>
      
      <dt>AXAPI</dt>
      <dd></dd>
      <dd>AXLiveRegionChanged notification</dd>
      
      <dt>MSAA + IAccessible2</dt>
      <dd>IAccessible2: IA2_EVENT_TEXT_REMOVED event followed by IA2_EVENT_TEXT_INSERTED event</dd>
      
      <dt>MSAA + UIA Express</dt>
      <dd>TextPattern..::.TextChangedEvent event followed by another TextPattern..::.TextChangedEvent event</dd>
      
    </dl>
    
    
    <script type="text/javascript">  

      function tryAgain() {
        changeText('LOG ROLE TEST TEXT 1')
        onLoad();        
      }  

      function changeText(str) {
        var node = document.getElementById('TEST_ID');  
        while (node.firstChild) node.removeChild(node.firstChild);

        if (typeof str !== 'string') str = 'log role changed test text 2';
        addText(str)
      }  

      function addText (str) {
        var node = document.getElementById('TEST_ID');          
        var text_node = document.createTextNode(str);        
        node.appendChild(text_node);
      }  

      function onLoad() {
        setTimeout(changeText,1500);       
      }

      window.addEventListener('load', onLoad);
    </script>
  </body>
  
</html>