Chromium Code Reviews| Index: content/renderer/accessibility/renderer_accessibility_browsertest.cc |
| diff --git a/content/renderer/accessibility/renderer_accessibility_browsertest.cc b/content/renderer/accessibility/renderer_accessibility_browsertest.cc |
| index f1b559b4ae504f1d1662c142f0076695e8698a5d..257342f5c018a6fc42f1aaaaf2ed310fad7cf4c7 100644 |
| --- a/content/renderer/accessibility/renderer_accessibility_browsertest.cc |
| +++ b/content/renderer/accessibility/renderer_accessibility_browsertest.cc |
| @@ -516,4 +516,38 @@ TEST_F(RendererAccessibilityTest, DetachAccessibilityObject) { |
| // so we don't have a test expectation for it. |
| } |
| +TEST_F(RendererAccessibilityTest, EventOnObjectNotInTree) { |
| + // Test RendererAccessibilityComplete and make sure it doesn't sent anything |
|
Peter Lundblad
2014/05/07 23:03:24
nit: s/sent/send/
dmazzoni
2014/05/08 15:12:23
Done.
|
| + // if we get a notification from Blink for an object that isn't in the |
| + // tree, like the scroll area that's the parent of the main document, |
| + // which we don't expose. |
| + std::string html = "<body><input></body>"; |
| + LoadHTML(html.c_str()); |
| + |
| + scoped_ptr<TestRendererAccessibilityComplete> accessibility( |
| + new TestRendererAccessibilityComplete(view())); |
| + accessibility->SendPendingAccessibilityEvents(); |
| + EXPECT_EQ(3, CountAccessibilityNodesSentToBrowser()); |
| + |
| + WebDocument document = view()->GetWebView()->mainFrame()->document(); |
| + WebAXObject root_obj = document.accessibilityObject(); |
| + WebAXObject scroll_area = root_obj.parentObject(); |
| + EXPECT_EQ(blink::WebAXRoleScrollArea, scroll_area.role()); |
| + |
| + // Try to fire a message on the scroll area, and assert that we just |
| + // ignore it. |
| + sink_->ClearMessages(); |
| + accessibility->HandleAXEvent(scroll_area, |
| + ui::AX_EVENT_VALUE_CHANGED); |
| + |
| + accessibility->SendPendingAccessibilityEvents(); |
| + |
| + const IPC::Message* message = |
| + sink_->GetUniqueMessageMatching(AccessibilityHostMsg_Events::ID); |
| + ASSERT_TRUE(message); |
| + Tuple1<std::vector<AccessibilityHostMsg_EventParams> > param; |
| + AccessibilityHostMsg_Events::Read(message, ¶m); |
| + ASSERT_EQ(0U, param.a.size()); |
| +} |
| + |
| } // namespace content |