OLD | NEW |
1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> | 1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> |
2 <html> | 2 <html> |
3 <head> | 3 <head> |
4 <script src="../resources/js-test.js"></script> | 4 <script src="../resources/js-test.js"></script> |
5 </head> | 5 </head> |
6 <body> | 6 <body> |
7 | 7 |
8 <p id="p" style="width: 10em;"> | 8 <p id="p" style="width: 10em;"> |
9 This paragraph contains two lines of text. | 9 This paragraph contains two lines of text. |
10 </p> | 10 </p> |
11 | 11 |
12 <p id="description"></p> | 12 <p id="description"></p> |
13 <pre id="tree"></pre> | 13 <pre id="tree"></pre> |
14 <div id="console"></div> | 14 <div id="console"></div> |
15 | 15 |
16 <script> | 16 <script> |
17 | 17 |
18 description("Tests that accessible inline text boxes update when a static te
xt node changes."); | 18 description("Tests that accessible inline text boxes update when a static te
xt node changes."); |
19 | 19 |
20 if (window.accessibilityController) { | 20 if (window.accessibilityController) { |
21 testRunner.waitUntilDone(); | 21 testRunner.waitUntilDone(); |
22 window.jsTestIsAsync = true; | 22 window.jsTestIsAsync = true; |
23 | 23 |
24 window.axParagraph = accessibilityController.accessibleElementById('p'); | 24 window.axParagraph = accessibilityController.accessibleElementById('p'); |
25 window.axStaticText = axParagraph.childAtIndex(0); | 25 window.axStaticText = axParagraph.childAtIndex(0); |
26 shouldBe("axStaticText.childrenCount", "2"); | 26 shouldBe("axStaticText.childrenCount", "2"); |
27 | 27 |
28 window.axInlineBefore0 = axStaticText.childAtIndex(0); | 28 window.axInlineBefore0 = axStaticText.childAtIndex(0); |
29 shouldBe("axInlineBefore0.stringValue", "'AXValue: This paragraph conta
ins '"); | 29 shouldBe("axInlineBefore0.name", "'This paragraph contains '"); |
30 window.axInlineBefore1 = axStaticText.childAtIndex(1); | 30 window.axInlineBefore1 = axStaticText.childAtIndex(1); |
31 shouldBe("axInlineBefore1.stringValue", "'AXValue: two lines of text.'")
; | 31 shouldBe("axInlineBefore1.name", "'two lines of text.'"); |
32 | 32 |
33 // Modify the text. | 33 // Modify the text. |
34 document.getElementById("p").innerText += ' One more sentence.'; | 34 document.getElementById("p").innerText += ' One more sentence.'; |
35 | 35 |
36 // Wait for a notification on the element before checking the new state. | 36 // Wait for a notification on the element before checking the new state. |
37 axStaticText.addNotificationListener(function(notification) { | 37 axStaticText.addNotificationListener(function(notification) { |
38 // Make sure the inline text boxes changed. | 38 // Make sure the inline text boxes changed. |
39 shouldBe("axStaticText.childrenCount", "3"); | 39 shouldBe("axStaticText.childrenCount", "3"); |
40 window.axInlineAfter0 = axStaticText.childAtIndex(0); | 40 window.axInlineAfter0 = axStaticText.childAtIndex(0); |
41 shouldBe("axInlineAfter0.stringValue", "'AXValue: This paragraph co
ntains '"); | 41 shouldBe("axInlineAfter0.name", "'This paragraph contains '"); |
42 window.axInlineAfter1 = axStaticText.childAtIndex(1); | 42 window.axInlineAfter1 = axStaticText.childAtIndex(1); |
43 shouldBe("axInlineAfter1.stringValue", "'AXValue: two lines of text.
One '"); | 43 shouldBe("axInlineAfter1.name", "'two lines of text. One '"); |
44 window.axInlineAfter2 = axStaticText.childAtIndex(2); | 44 window.axInlineAfter2 = axStaticText.childAtIndex(2); |
45 shouldBe("axInlineAfter2.stringValue", "'AXValue: more sentence.'"); | 45 shouldBe("axInlineAfter2.name", "'more sentence.'"); |
46 | 46 |
47 // Make sure the old object pointing to the second text box is no lo
nger valid. | 47 // Make sure the old object pointing to the second text box is no lo
nger valid. |
48 shouldBe("axInlineBefore1.stringValue", "'AXValue: '"); | 48 shouldBe("axInlineBefore1.name", "''"); |
49 finishJSTest(); | 49 finishJSTest(); |
50 }); | 50 }); |
51 } | 51 } |
52 </script> | 52 </script> |
53 | 53 |
54 </body> | 54 </body> |
55 </html> | 55 </html> |
OLD | NEW |