Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(74)

Side by Side Diff: third_party/WebKit/LayoutTests/accessibility/loading-iframe-sends-notification.html

Issue 1761633002: One accessibility tree per frame. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix is-richly-editable test Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 <html>
2 <head>
3 <script src="../resources/js-test.js"></script>
4 </head>
5 <body>
6
7 <p>Before</p>
8
9 <iframe id="iframe" title="InnerFrame"></iframe>
10
11 <p>After</p>
12
13 <p>End of test</p>
14
15 <p id="description"></p>
16 <div id="console"></div>
17
18 <script>
19 description("This tests that when an iframe finishes loading, it sends a not ification.");
20
21 if (window.testRunner)
22 testRunner.waitUntilDone();
23 else
24 debug("This test requires window.accessibilityController and must be run in content_shell with --run-layout-test.")
25
26 window.jsTestIsAsync = true;
27
28 function runTest()
29 {
30 if (window.accessibilityController) {
31 // Initially, the iframe should not be loaded, so we shouldn't be ab le to find this button.
32 shouldBeUndefined("accessibilityController.accessibleElementById('in nerbutton')");
33
34 window.accessibilityController.addNotificationListener(function (tar get, notification) {
35 if (!target.parentElement())
36 return;
37
38 // Ignore this notification if it's not within the subtree of th e iframe.
39 var frameTarget = target.parentElement();
40 if (frameTarget.name.indexOf("InnerFrame") == -1)
41 return;
42
43 // Even still we'll get LayoutComplete notifications sooner than we want.
44 if (!accessibilityController.accessibleElementById('innerbutton' ))
45 return;
46
47 // Check that the button within the iframe is now reachable from the root.
48 shouldBeDefined("accessibilityController.accessibleElementById(' innerbutton')");
49 if (window.accessibilityController)
50 accessibilityController.removeNotificationListener();
51
52 finishJSTest();
53 });
54 }
55
56 // Load content into the iframe. This will trigger the event
57 // handler above, which will check that the accessibility tree
58 // was updated with new content.
59 document.getElementById("iframe").src = "data:text/html,<body><button id ='innerbutton'>InnerButton</button></body>";
60 }
61 window.addEventListener('load', runTest);
62 </script>
63
64 </body>
65 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698