diff options
Diffstat (limited to 'content/renderer/accessibility/renderer_accessibility_browsertest.cc')
-rw-r--r-- | content/renderer/accessibility/renderer_accessibility_browsertest.cc | 144 |
1 files changed, 0 insertions, 144 deletions
diff --git a/content/renderer/accessibility/renderer_accessibility_browsertest.cc b/content/renderer/accessibility/renderer_accessibility_browsertest.cc index a197b9f..18e7366 100644 --- a/content/renderer/accessibility/renderer_accessibility_browsertest.cc +++ b/content/renderer/accessibility/renderer_accessibility_browsertest.cc @@ -78,150 +78,6 @@ class RendererAccessibilityTest : public RenderViewTest { }; -TEST_F(RendererAccessibilityTest, EditableTextModeFocusEvents) { - // This is not a test of true web accessibility, it's a test of - // a mode used on Windows 8 in Metro mode where an extremely simplified - // accessibility tree containing only the current focused node is - // generated. - SetMode(AccessibilityModeEditableTextOnly); - - // Set a minimum size and give focus so simulated events work. - view()->webwidget()->resize(blink::WebSize(500, 500)); - view()->webwidget()->setFocus(true); - - std::string html = - "<body>" - " <input>" - " <textarea></textarea>" - " <p contentEditable>Editable</p>" - " <div tabindex=0 role=textbox>Textbox</div>" - " <button>Button</button>" - " <a href=#>Link</a>" - "</body>"; - - // Load the test page. - LoadHTML(html.c_str()); - - // We should have sent a message to the browser with the initial focus - // on the document. - { - SCOPED_TRACE("Initial focus on document"); - AccessibilityHostMsg_EventParams event; - GetLastAccEvent(&event); - EXPECT_EQ(event.event_type, - ui::AX_EVENT_LAYOUT_COMPLETE); - EXPECT_EQ(event.id, 1); - EXPECT_EQ(event.update.nodes.size(), 2U); - EXPECT_EQ(event.update.nodes[0].id, 1); - EXPECT_EQ(event.update.nodes[0].role, - ui::AX_ROLE_ROOT_WEB_AREA); - EXPECT_EQ(event.update.nodes[0].state, - (1U << ui::AX_STATE_READ_ONLY) | - (1U << ui::AX_STATE_FOCUSABLE) | - (1U << ui::AX_STATE_FOCUSED)); - EXPECT_EQ(event.update.nodes[0].child_ids.size(), 1U); - } - - // Now focus the input element, and check everything again. - { - SCOPED_TRACE("input"); - sink_->ClearMessages(); - ExecuteJavaScript("document.querySelector('input').focus();"); - AccessibilityHostMsg_EventParams event; - GetLastAccEvent(&event); - EXPECT_EQ(event.event_type, - ui::AX_EVENT_FOCUS); - EXPECT_EQ(event.id, 3); - EXPECT_EQ(event.update.nodes[0].id, 1); - EXPECT_EQ(event.update.nodes[0].role, - ui::AX_ROLE_ROOT_WEB_AREA); - EXPECT_EQ(event.update.nodes[0].state, - (1U << ui::AX_STATE_READ_ONLY) | - (1U << ui::AX_STATE_FOCUSABLE)); - EXPECT_EQ(event.update.nodes[0].child_ids.size(), 1U); - EXPECT_EQ(event.update.nodes[1].id, 3); - EXPECT_EQ(event.update.nodes[1].role, - ui::AX_ROLE_GROUP); - EXPECT_EQ(event.update.nodes[1].state, - (1U << ui::AX_STATE_FOCUSABLE) | - (1U << ui::AX_STATE_FOCUSED)); - } - - // Check other editable text nodes. - { - SCOPED_TRACE("textarea"); - sink_->ClearMessages(); - ExecuteJavaScript("document.querySelector('textarea').focus();"); - AccessibilityHostMsg_EventParams event; - GetLastAccEvent(&event); - EXPECT_EQ(event.id, 4); - EXPECT_EQ(event.update.nodes[1].state, - (1U << ui::AX_STATE_FOCUSABLE) | - (1U << ui::AX_STATE_FOCUSED)); - } - - { - SCOPED_TRACE("contentEditable"); - sink_->ClearMessages(); - ExecuteJavaScript("document.querySelector('p').focus();"); - AccessibilityHostMsg_EventParams event; - GetLastAccEvent(&event); - EXPECT_EQ(event.id, 5); - EXPECT_EQ(event.update.nodes[1].state, - (1U << ui::AX_STATE_FOCUSABLE) | - (1U << ui::AX_STATE_FOCUSED)); - } - - { - SCOPED_TRACE("role=textarea"); - sink_->ClearMessages(); - ExecuteJavaScript("document.querySelector('div').focus();"); - AccessibilityHostMsg_EventParams event; - GetLastAccEvent(&event); - EXPECT_EQ(event.id, 6); - EXPECT_EQ(event.update.nodes[1].state, - (1U << ui::AX_STATE_FOCUSABLE) | - (1U << ui::AX_STATE_FOCUSED)); - } - - // Try focusing things that aren't editable text. - { - SCOPED_TRACE("button"); - sink_->ClearMessages(); - ExecuteJavaScript("document.querySelector('button').focus();"); - AccessibilityHostMsg_EventParams event; - GetLastAccEvent(&event); - EXPECT_EQ(event.id, 7); - EXPECT_EQ(event.update.nodes[1].state, - (1U << ui::AX_STATE_FOCUSABLE) | - (1U << ui::AX_STATE_FOCUSED) | - (1U << ui::AX_STATE_READ_ONLY)); - } - - { - SCOPED_TRACE("link"); - sink_->ClearMessages(); - ExecuteJavaScript("document.querySelector('a').focus();"); - AccessibilityHostMsg_EventParams event; - GetLastAccEvent(&event); - EXPECT_EQ(event.id, 8); - EXPECT_EQ(event.update.nodes[1].state, - (1U << ui::AX_STATE_FOCUSABLE) | - (1U << ui::AX_STATE_FOCUSED) | - (1U << ui::AX_STATE_READ_ONLY)); - } - - // Clear focus. - { - SCOPED_TRACE("Back to document."); - sink_->ClearMessages(); - ExecuteJavaScript("document.activeElement.blur()"); - AccessibilityHostMsg_EventParams event; - GetLastAccEvent(&event); - EXPECT_EQ(event.id, 1); - } -} - TEST_F(RendererAccessibilityTest, SendFullAccessibilityTreeOnReload) { // The job of RendererAccessibilityComplete is to serialize the // accessibility tree built by WebKit and send it to the browser. |