| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include <mshtmcid.h> | 5 #include <mshtmcid.h> |
| 6 #include <string> | 6 #include <string> |
| 7 | 7 |
| 8 #include "base/test/test_file_util.h" | 8 #include "base/test/test_file_util.h" |
| 9 #include "base/utf_string_conversions.h" | 9 #include "base/utf_string_conversions.h" |
| 10 #include "base/win/scoped_bstr.h" | 10 #include "base/win/scoped_bstr.h" |
| (...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 107 simulate_input::SHIFT))); | 107 simulate_input::SHIFT))); |
| 108 | 108 |
| 109 EXPECT_CALL(ie_mock_, OnLoad(in_cf, StrEq(page2))) | 109 EXPECT_CALL(ie_mock_, OnLoad(in_cf, StrEq(page2))) |
| 110 .WillOnce(CloseBrowserMock(&ie_mock_)); | 110 .WillOnce(CloseBrowserMock(&ie_mock_)); |
| 111 | 111 |
| 112 LaunchIENavigateAndLoop(page1, kChromeFrameVeryLongNavigationTimeout); | 112 LaunchIENavigateAndLoop(page1, kChromeFrameVeryLongNavigationTimeout); |
| 113 } | 113 } |
| 114 | 114 |
| 115 // Tests new window behavior with ctrl+N. | 115 // Tests new window behavior with ctrl+N. |
| 116 // Flaky due to DelaySendChar; see http://crbug.com/124244. | 116 // Flaky due to DelaySendChar; see http://crbug.com/124244. |
| 117 TEST_P(FullTabUITest, FLAKY_CtrlN) { | 117 TEST_P(FullTabUITest, DISABLED_CtrlN) { |
| 118 if (IsWorkstationLocked()) { | 118 if (IsWorkstationLocked()) { |
| 119 LOG(ERROR) << "This test cannot be run in a locked workstation."; | 119 LOG(ERROR) << "This test cannot be run in a locked workstation."; |
| 120 return; | 120 return; |
| 121 } | 121 } |
| 122 | 122 |
| 123 bool is_cf = GetParam().invokes_cf(); | 123 bool is_cf = GetParam().invokes_cf(); |
| 124 if (!is_cf) { | 124 if (!is_cf) { |
| 125 LOG(ERROR) << "Test not implemented for this configuration."; | 125 LOG(ERROR) << "Test not implemented for this configuration."; |
| 126 return; | 126 return; |
| 127 } | 127 } |
| (...skipping 21 matching lines...) Expand all Loading... |
| 149 | 149 |
| 150 EXPECT_CALL(win_observer_mock, OnWindowClose(_)) | 150 EXPECT_CALL(win_observer_mock, OnWindowClose(_)) |
| 151 .Times(testing::AtMost(2)); | 151 .Times(testing::AtMost(2)); |
| 152 | 152 |
| 153 LaunchIENavigateAndLoop(GetSimplePageUrl(), | 153 LaunchIENavigateAndLoop(GetSimplePageUrl(), |
| 154 kChromeFrameVeryLongNavigationTimeout); | 154 kChromeFrameVeryLongNavigationTimeout); |
| 155 } | 155 } |
| 156 | 156 |
| 157 // Test that Ctrl+F opens the Find dialog. | 157 // Test that Ctrl+F opens the Find dialog. |
| 158 // Flaky due to DelaySendChar; see http://crbug.com/124244. | 158 // Flaky due to DelaySendChar; see http://crbug.com/124244. |
| 159 TEST_P(FullTabUITest, FLAKY_CtrlF) { | 159 TEST_P(FullTabUITest, DISABLED_CtrlF) { |
| 160 if (IsWorkstationLocked()) { | 160 if (IsWorkstationLocked()) { |
| 161 LOG(ERROR) << "This test cannot be run in a locked workstation."; | 161 LOG(ERROR) << "This test cannot be run in a locked workstation."; |
| 162 return; | 162 return; |
| 163 } | 163 } |
| 164 | 164 |
| 165 bool is_cf = GetParam().invokes_cf(); | 165 bool is_cf = GetParam().invokes_cf(); |
| 166 if (!is_cf) { | 166 if (!is_cf) { |
| 167 LOG(ERROR) << "Test not implemented for this configuration."; | 167 LOG(ERROR) << "Test not implemented for this configuration."; |
| 168 return; | 168 return; |
| 169 } | 169 } |
| (...skipping 13 matching lines...) Expand all Loading... |
| 183 | 183 |
| 184 EXPECT_CALL(win_observer_mock, OnWindowOpen(_)) | 184 EXPECT_CALL(win_observer_mock, OnWindowOpen(_)) |
| 185 .WillOnce(CloseBrowserMock(&ie_mock_)); | 185 .WillOnce(CloseBrowserMock(&ie_mock_)); |
| 186 | 186 |
| 187 LaunchIENavigateAndLoop(GetSimplePageUrl(), | 187 LaunchIENavigateAndLoop(GetSimplePageUrl(), |
| 188 kChromeFrameVeryLongNavigationTimeout); | 188 kChromeFrameVeryLongNavigationTimeout); |
| 189 } | 189 } |
| 190 | 190 |
| 191 // Test that ctrl+r does cause a refresh. | 191 // Test that ctrl+r does cause a refresh. |
| 192 // Flaky due to DelaySendChar; see http://crbug.com/124244. | 192 // Flaky due to DelaySendChar; see http://crbug.com/124244. |
| 193 TEST_P(FullTabUITest, FLAKY_CtrlR) { | 193 TEST_P(FullTabUITest, DISABLED_CtrlR) { |
| 194 if (IsWorkstationLocked()) { | 194 if (IsWorkstationLocked()) { |
| 195 LOG(ERROR) << "This test cannot be run in a locked workstation."; | 195 LOG(ERROR) << "This test cannot be run in a locked workstation."; |
| 196 return; | 196 return; |
| 197 } | 197 } |
| 198 | 198 |
| 199 EXPECT_CALL(server_mock_, Get(_, UrlPathEq(GetSimplePageUrl()), _)) | 199 EXPECT_CALL(server_mock_, Get(_, UrlPathEq(GetSimplePageUrl()), _)) |
| 200 .Times(testing::AtMost(2)) | 200 .Times(testing::AtMost(2)) |
| 201 .WillRepeatedly(SendResponse(&server_mock_, GetParam())); | 201 .WillRepeatedly(SendResponse(&server_mock_, GetParam())); |
| 202 | 202 |
| 203 EXPECT_CALL(ie_mock_, OnLoad(GetParam().invokes_cf(), | 203 EXPECT_CALL(ie_mock_, OnLoad(GetParam().invokes_cf(), |
| 204 StrEq(GetSimplePageUrl()))) | 204 StrEq(GetSimplePageUrl()))) |
| 205 .Times(testing::AtMost(2)) | 205 .Times(testing::AtMost(2)) |
| 206 .WillOnce(testing::DoAll( | 206 .WillOnce(testing::DoAll( |
| 207 SetFocusToRenderer(&ie_mock_), | 207 SetFocusToRenderer(&ie_mock_), |
| 208 DelaySendChar(&loop_, | 208 DelaySendChar(&loop_, |
| 209 base::TimeDelta::FromSeconds(1), | 209 base::TimeDelta::FromSeconds(1), |
| 210 'r', | 210 'r', |
| 211 simulate_input::CONTROL), | 211 simulate_input::CONTROL), |
| 212 DelayCloseBrowserMock( | 212 DelayCloseBrowserMock( |
| 213 &loop_, base::TimeDelta::FromSeconds(4), &ie_mock_))) | 213 &loop_, base::TimeDelta::FromSeconds(4), &ie_mock_))) |
| 214 .WillRepeatedly(testing::Return()); | 214 .WillRepeatedly(testing::Return()); |
| 215 | 215 |
| 216 LaunchIENavigateAndLoop(GetSimplePageUrl(), | 216 LaunchIENavigateAndLoop(GetSimplePageUrl(), |
| 217 kChromeFrameVeryLongNavigationTimeout); | 217 kChromeFrameVeryLongNavigationTimeout); |
| 218 } | 218 } |
| 219 | 219 |
| 220 // Test window close with ctrl+w. | 220 // Test window close with ctrl+w. |
| 221 // Flaky due to DelaySendChar; see http://crbug.com/124244. | 221 // Flaky due to DelaySendChar; see http://crbug.com/124244. |
| 222 TEST_P(FullTabUITest, FLAKY_CtrlW) { | 222 TEST_P(FullTabUITest, DISABLED_CtrlW) { |
| 223 if (IsWorkstationLocked()) { | 223 if (IsWorkstationLocked()) { |
| 224 LOG(ERROR) << "This test cannot be run in a locked workstation."; | 224 LOG(ERROR) << "This test cannot be run in a locked workstation."; |
| 225 return; | 225 return; |
| 226 } | 226 } |
| 227 | 227 |
| 228 EXPECT_CALL(ie_mock_, OnLoad(GetParam().invokes_cf(), | 228 EXPECT_CALL(ie_mock_, OnLoad(GetParam().invokes_cf(), |
| 229 StrEq(GetSimplePageUrl()))) | 229 StrEq(GetSimplePageUrl()))) |
| 230 .WillOnce(testing::DoAll( | 230 .WillOnce(testing::DoAll( |
| 231 SetFocusToRenderer(&ie_mock_), | 231 SetFocusToRenderer(&ie_mock_), |
| 232 DelaySendChar(&loop_, | 232 DelaySendChar(&loop_, |
| 233 base::TimeDelta::FromSeconds(1), | 233 base::TimeDelta::FromSeconds(1), |
| 234 'w', | 234 'w', |
| 235 simulate_input::CONTROL))); | 235 simulate_input::CONTROL))); |
| 236 | 236 |
| 237 LaunchIENavigateAndLoop(GetSimplePageUrl(), | 237 LaunchIENavigateAndLoop(GetSimplePageUrl(), |
| 238 kChromeFrameVeryLongNavigationTimeout); | 238 kChromeFrameVeryLongNavigationTimeout); |
| 239 } | 239 } |
| 240 | 240 |
| 241 // Test address bar navigation with Alt+d and URL. | 241 // Test address bar navigation with Alt+d and URL. |
| 242 // Flaky due to TypeUrlInAddressBar; see http://crbug.com/124244. | 242 // Flaky due to TypeUrlInAddressBar; see http://crbug.com/124244. |
| 243 TEST_P(FullTabUITest, FLAKY_AltD) { | 243 TEST_P(FullTabUITest, DISABLED_AltD) { |
| 244 if (IsWorkstationLocked()) { | 244 if (IsWorkstationLocked()) { |
| 245 LOG(ERROR) << "This test cannot be run in a locked workstation."; | 245 LOG(ERROR) << "This test cannot be run in a locked workstation."; |
| 246 return; | 246 return; |
| 247 } | 247 } |
| 248 | 248 |
| 249 EXPECT_CALL(ie_mock_, OnLoad(GetParam().invokes_cf(), | 249 EXPECT_CALL(ie_mock_, OnLoad(GetParam().invokes_cf(), |
| 250 StrEq(GetSimplePageUrl()))) | 250 StrEq(GetSimplePageUrl()))) |
| 251 .WillOnce(testing::DoAll( | 251 .WillOnce(testing::DoAll( |
| 252 SetFocusToRenderer(&ie_mock_), | 252 SetFocusToRenderer(&ie_mock_), |
| 253 TypeUrlInAddressBar(&loop_, | 253 TypeUrlInAddressBar(&loop_, |
| (...skipping 548 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 802 AccLeftClick(AccObjectMatcher(L"Copy link address*")), | 802 AccLeftClick(AccObjectMatcher(L"Copy link address*")), |
| 803 CloseBrowserMock(&ie_mock_))); | 803 CloseBrowserMock(&ie_mock_))); |
| 804 | 804 |
| 805 LaunchIEAndNavigate(GetLinkPageUrl()); | 805 LaunchIEAndNavigate(GetLinkPageUrl()); |
| 806 | 806 |
| 807 EXPECT_STREQ(GetSimplePageUrl().c_str(), GetClipboardText().c_str()); | 807 EXPECT_STREQ(GetSimplePageUrl().c_str(), GetClipboardText().c_str()); |
| 808 } | 808 } |
| 809 | 809 |
| 810 // Test CF text field context menu - cut. | 810 // Test CF text field context menu - cut. |
| 811 // Times out sporadically http://crbug.com/119660. | 811 // Times out sporadically http://crbug.com/119660. |
| 812 TEST_F(ContextMenuTest, FLAKY_CFTxtFieldCut) { | 812 TEST_F(ContextMenuTest, DISABLED_CFTxtFieldCut) { |
| 813 server_mock_.ExpectAndServeAnyRequests(CFInvocation::MetaTag()); | 813 server_mock_.ExpectAndServeAnyRequests(CFInvocation::MetaTag()); |
| 814 AccObjectMatcher txtfield_matcher(L"", L"editable text"); | 814 AccObjectMatcher txtfield_matcher(L"", L"editable text"); |
| 815 | 815 |
| 816 // Invoke "Cut" context menu item of text field. | 816 // Invoke "Cut" context menu item of text field. |
| 817 EXPECT_CALL(acc_observer_, | 817 EXPECT_CALL(acc_observer_, |
| 818 OnAccDocLoad(TabContentsTitleEq(context_menu_page_title))) | 818 OnAccDocLoad(TabContentsTitleEq(context_menu_page_title))) |
| 819 .WillOnce(testing::DoAll( | 819 .WillOnce(testing::DoAll( |
| 820 AccRightClick(txtfield_matcher), | 820 AccRightClick(txtfield_matcher), |
| 821 AccWatchForOneValueChange(&acc_observer_, txtfield_matcher))); | 821 AccWatchForOneValueChange(&acc_observer_, txtfield_matcher))); |
| 822 EXPECT_CALL(acc_observer_, OnMenuPopup(_)) | 822 EXPECT_CALL(acc_observer_, OnMenuPopup(_)) |
| 823 .WillOnce(AccLeftClick(AccObjectMatcher(L"Cut*"))); | 823 .WillOnce(AccLeftClick(AccObjectMatcher(L"Cut*"))); |
| 824 | 824 |
| 825 // Verify that text field is empty after cut operation. | 825 // Verify that text field is empty after cut operation. |
| 826 EXPECT_CALL(acc_observer_, OnAccValueChange(_, _, StrEq(L""))) | 826 EXPECT_CALL(acc_observer_, OnAccValueChange(_, _, StrEq(L""))) |
| 827 .WillOnce(CloseBrowserMock(&ie_mock_)); | 827 .WillOnce(CloseBrowserMock(&ie_mock_)); |
| 828 | 828 |
| 829 LaunchIEAndNavigate(context_menu_page_url); | 829 LaunchIEAndNavigate(context_menu_page_url); |
| 830 // Verify that the text value has been cut to clipboard. | 830 // Verify that the text value has been cut to clipboard. |
| 831 EXPECT_STREQ(kTextFieldInitValue.c_str(), GetClipboardText().c_str()); | 831 EXPECT_STREQ(kTextFieldInitValue.c_str(), GetClipboardText().c_str()); |
| 832 } | 832 } |
| 833 | 833 |
| 834 // Test CF text field context menu - copy. | 834 // Test CF text field context menu - copy. |
| 835 // Times out sporadically http://crbug.com/119660. | 835 // Times out sporadically http://crbug.com/119660. |
| 836 TEST_F(ContextMenuTest, FLAKY_CFTxtFieldCopy) { | 836 TEST_F(ContextMenuTest, DISABLED_CFTxtFieldCopy) { |
| 837 server_mock_.ExpectAndServeAnyRequests(CFInvocation::MetaTag()); | 837 server_mock_.ExpectAndServeAnyRequests(CFInvocation::MetaTag()); |
| 838 AccObjectMatcher txtfield_matcher(L"", L"editable text"); | 838 AccObjectMatcher txtfield_matcher(L"", L"editable text"); |
| 839 | 839 |
| 840 // Invoke "Copy" context menu item of text field. | 840 // Invoke "Copy" context menu item of text field. |
| 841 EXPECT_CALL(acc_observer_, | 841 EXPECT_CALL(acc_observer_, |
| 842 OnAccDocLoad(TabContentsTitleEq(context_menu_page_title))) | 842 OnAccDocLoad(TabContentsTitleEq(context_menu_page_title))) |
| 843 .WillOnce(testing::DoAll( | 843 .WillOnce(testing::DoAll( |
| 844 AccRightClick(txtfield_matcher), | 844 AccRightClick(txtfield_matcher), |
| 845 AccWatchForOneValueChange(&acc_observer_, txtfield_matcher))); | 845 AccWatchForOneValueChange(&acc_observer_, txtfield_matcher))); |
| 846 EXPECT_CALL(acc_observer_, OnMenuPopup(_)) | 846 EXPECT_CALL(acc_observer_, OnMenuPopup(_)) |
| 847 .WillOnce(testing::DoAll( | 847 .WillOnce(testing::DoAll( |
| 848 AccLeftClick(AccObjectMatcher(L"Copy*")), | 848 AccLeftClick(AccObjectMatcher(L"Copy*")), |
| 849 CloseBrowserMock(&ie_mock_))); | 849 CloseBrowserMock(&ie_mock_))); |
| 850 | 850 |
| 851 // Verify that there is no change on text field value after copy operation. | 851 // Verify that there is no change on text field value after copy operation. |
| 852 EXPECT_CALL(acc_observer_, OnAccValueChange(_, _, _)) | 852 EXPECT_CALL(acc_observer_, OnAccValueChange(_, _, _)) |
| 853 .Times(testing::AtMost(0)); | 853 .Times(testing::AtMost(0)); |
| 854 | 854 |
| 855 LaunchIEAndNavigate(context_menu_page_url); | 855 LaunchIEAndNavigate(context_menu_page_url); |
| 856 // Verify that the text value has been copied to clipboard. | 856 // Verify that the text value has been copied to clipboard. |
| 857 EXPECT_STREQ(kTextFieldInitValue.c_str(), GetClipboardText().c_str()); | 857 EXPECT_STREQ(kTextFieldInitValue.c_str(), GetClipboardText().c_str()); |
| 858 } | 858 } |
| 859 | 859 |
| 860 // Test CF text field context menu - paste. | 860 // Test CF text field context menu - paste. |
| 861 // Times out sporadically http://crbug.com/119660. | 861 // Times out sporadically http://crbug.com/119660. |
| 862 TEST_F(ContextMenuTest, FLAKY_CFTxtFieldPaste) { | 862 TEST_F(ContextMenuTest, DISABLED_CFTxtFieldPaste) { |
| 863 server_mock_.ExpectAndServeAnyRequests(CFInvocation::MetaTag()); | 863 server_mock_.ExpectAndServeAnyRequests(CFInvocation::MetaTag()); |
| 864 AccObjectMatcher txtfield_matcher(L"", L"editable text"); | 864 AccObjectMatcher txtfield_matcher(L"", L"editable text"); |
| 865 | 865 |
| 866 // Invoke "Paste" context menu item of text field. | 866 // Invoke "Paste" context menu item of text field. |
| 867 EXPECT_CALL(acc_observer_, | 867 EXPECT_CALL(acc_observer_, |
| 868 OnAccDocLoad(TabContentsTitleEq(context_menu_page_title))) | 868 OnAccDocLoad(TabContentsTitleEq(context_menu_page_title))) |
| 869 .WillOnce(testing::DoAll( | 869 .WillOnce(testing::DoAll( |
| 870 AccRightClick(txtfield_matcher), | 870 AccRightClick(txtfield_matcher), |
| 871 AccWatchForOneValueChange(&acc_observer_, txtfield_matcher))); | 871 AccWatchForOneValueChange(&acc_observer_, txtfield_matcher))); |
| 872 EXPECT_CALL(acc_observer_, OnMenuPopup(_)) | 872 EXPECT_CALL(acc_observer_, OnMenuPopup(_)) |
| 873 .WillOnce(AccLeftClick(AccObjectMatcher(L"Paste*"))); | 873 .WillOnce(AccLeftClick(AccObjectMatcher(L"Paste*"))); |
| 874 // Verify that value has been pasted to text field. | 874 // Verify that value has been pasted to text field. |
| 875 EXPECT_CALL(acc_observer_, OnAccValueChange(_, _, StrEq(kTextFieldInitValue))) | 875 EXPECT_CALL(acc_observer_, OnAccValueChange(_, _, StrEq(kTextFieldInitValue))) |
| 876 .WillOnce(CloseBrowserMock(&ie_mock_)); | 876 .WillOnce(CloseBrowserMock(&ie_mock_)); |
| 877 | 877 |
| 878 // Set some text value to clipboard, this is to emulate the 'copy' action. | 878 // Set some text value to clipboard, this is to emulate the 'copy' action. |
| 879 SetClipboardText(kTextFieldInitValue); | 879 SetClipboardText(kTextFieldInitValue); |
| 880 | 880 |
| 881 LaunchIEAndNavigate(context_menu_page_url); | 881 LaunchIEAndNavigate(context_menu_page_url); |
| 882 } | 882 } |
| 883 | 883 |
| 884 // Test CF text field context menu - delete. | 884 // Test CF text field context menu - delete. |
| 885 // Times out sporadically http://crbug.com/119660. | 885 // Times out sporadically http://crbug.com/119660. |
| 886 TEST_F(ContextMenuTest, FLAKY_CFTxtFieldDelete) { | 886 TEST_F(ContextMenuTest, DISABLED_CFTxtFieldDelete) { |
| 887 server_mock_.ExpectAndServeAnyRequests(CFInvocation::MetaTag()); | 887 server_mock_.ExpectAndServeAnyRequests(CFInvocation::MetaTag()); |
| 888 AccObjectMatcher txtfield_matcher(L"", L"editable text"); | 888 AccObjectMatcher txtfield_matcher(L"", L"editable text"); |
| 889 | 889 |
| 890 // Invoke 'Delete' context menu item of text field. | 890 // Invoke 'Delete' context menu item of text field. |
| 891 EXPECT_CALL(acc_observer_, | 891 EXPECT_CALL(acc_observer_, |
| 892 OnAccDocLoad(TabContentsTitleEq(context_menu_page_title))) | 892 OnAccDocLoad(TabContentsTitleEq(context_menu_page_title))) |
| 893 .WillOnce(testing::DoAll( | 893 .WillOnce(testing::DoAll( |
| 894 AccRightClick(txtfield_matcher), | 894 AccRightClick(txtfield_matcher), |
| 895 AccWatchForOneValueChange(&acc_observer_, txtfield_matcher))); | 895 AccWatchForOneValueChange(&acc_observer_, txtfield_matcher))); |
| 896 EXPECT_CALL(acc_observer_, OnMenuPopup(_)) | 896 EXPECT_CALL(acc_observer_, OnMenuPopup(_)) |
| (...skipping 21 matching lines...) Expand all Loading... |
| 918 // Client side script verifies that the text field value has been selected, | 918 // Client side script verifies that the text field value has been selected, |
| 919 // then send 'OK' message. | 919 // then send 'OK' message. |
| 920 EXPECT_CALL(ie_mock_, OnMessage(testing::StrCaseEq(L"OK"), _, _)) | 920 EXPECT_CALL(ie_mock_, OnMessage(testing::StrCaseEq(L"OK"), _, _)) |
| 921 .WillOnce(CloseBrowserMock(&ie_mock_)); | 921 .WillOnce(CloseBrowserMock(&ie_mock_)); |
| 922 | 922 |
| 923 LaunchIEAndNavigate(context_menu_page_url + L"?action=selectall"); | 923 LaunchIEAndNavigate(context_menu_page_url + L"?action=selectall"); |
| 924 } | 924 } |
| 925 | 925 |
| 926 // Test CF text field context menu - undo. | 926 // Test CF text field context menu - undo. |
| 927 // Times out sporadically http://crbug.com/119660. | 927 // Times out sporadically http://crbug.com/119660. |
| 928 TEST_F(ContextMenuTest, FLAKY_CFTxtFieldUndo) { | 928 TEST_F(ContextMenuTest, DISABLED_CFTxtFieldUndo) { |
| 929 server_mock_.ExpectAndServeAnyRequests(CFInvocation::MetaTag()); | 929 server_mock_.ExpectAndServeAnyRequests(CFInvocation::MetaTag()); |
| 930 AccObjectMatcher txtfield_matcher(L"", L"editable text"); | 930 AccObjectMatcher txtfield_matcher(L"", L"editable text"); |
| 931 | 931 |
| 932 // Change the value of text field to 'A'. | 932 // Change the value of text field to 'A'. |
| 933 EXPECT_CALL(acc_observer_, | 933 EXPECT_CALL(acc_observer_, |
| 934 OnAccDocLoad(TabContentsTitleEq(context_menu_page_title))) | 934 OnAccDocLoad(TabContentsTitleEq(context_menu_page_title))) |
| 935 .WillOnce(testing::DoAll( | 935 .WillOnce(testing::DoAll( |
| 936 AccWatchForOneValueChange(&acc_observer_, txtfield_matcher), | 936 AccWatchForOneValueChange(&acc_observer_, txtfield_matcher), |
| 937 AccSendCharMessage(txtfield_matcher, L'A'))); | 937 AccSendCharMessage(txtfield_matcher, L'A'))); |
| 938 // Bring up the context menu once the value has changed. | 938 // Bring up the context menu once the value has changed. |
| 939 EXPECT_CALL(acc_observer_, OnAccValueChange(_, _, StrEq(L"A"))) | 939 EXPECT_CALL(acc_observer_, OnAccValueChange(_, _, StrEq(L"A"))) |
| 940 .WillOnce(AccRightClick(txtfield_matcher)); | 940 .WillOnce(AccRightClick(txtfield_matcher)); |
| 941 // Then select "Undo". | 941 // Then select "Undo". |
| 942 EXPECT_CALL(acc_observer_, OnMenuPopup(_)) | 942 EXPECT_CALL(acc_observer_, OnMenuPopup(_)) |
| 943 .WillOnce(testing::DoAll( | 943 .WillOnce(testing::DoAll( |
| 944 AccWatchForOneValueChange(&acc_observer_, txtfield_matcher), | 944 AccWatchForOneValueChange(&acc_observer_, txtfield_matcher), |
| 945 AccLeftClick(AccObjectMatcher(L"Undo*")))); | 945 AccLeftClick(AccObjectMatcher(L"Undo*")))); |
| 946 | 946 |
| 947 // Verify that value has been reset to initial value after undo operation. | 947 // Verify that value has been reset to initial value after undo operation. |
| 948 EXPECT_CALL(acc_observer_, OnAccValueChange(_, _, StrEq(kTextFieldInitValue))) | 948 EXPECT_CALL(acc_observer_, OnAccValueChange(_, _, StrEq(kTextFieldInitValue))) |
| 949 .WillOnce(CloseBrowserMock(&ie_mock_)); | 949 .WillOnce(CloseBrowserMock(&ie_mock_)); |
| 950 | 950 |
| 951 LaunchIEAndNavigate(context_menu_page_url); | 951 LaunchIEAndNavigate(context_menu_page_url); |
| 952 } | 952 } |
| 953 | 953 |
| 954 // Test CF text field context menu - redo. | 954 // Test CF text field context menu - redo. |
| 955 // Times out sporadically http://crbug.com/119660. | 955 // Times out sporadically http://crbug.com/119660. |
| 956 TEST_F(ContextMenuTest, FLAKY_CFTxtFieldRedo) { | 956 TEST_F(ContextMenuTest, DISABLED_CFTxtFieldRedo) { |
| 957 server_mock_.ExpectAndServeAnyRequests(CFInvocation::MetaTag()); | 957 server_mock_.ExpectAndServeAnyRequests(CFInvocation::MetaTag()); |
| 958 AccObjectMatcher txtfield_matcher(L"", L"editable text"); | 958 AccObjectMatcher txtfield_matcher(L"", L"editable text"); |
| 959 InSequence expect_in_sequence_for_scope; | 959 InSequence expect_in_sequence_for_scope; |
| 960 | 960 |
| 961 // Change text field from its initial value to 'A'. | 961 // Change text field from its initial value to 'A'. |
| 962 EXPECT_CALL(acc_observer_, | 962 EXPECT_CALL(acc_observer_, |
| 963 OnAccDocLoad(TabContentsTitleEq(context_menu_page_title))) | 963 OnAccDocLoad(TabContentsTitleEq(context_menu_page_title))) |
| 964 .WillOnce(testing::DoAll( | 964 .WillOnce(testing::DoAll( |
| 965 AccWatchForOneValueChange(&acc_observer_, txtfield_matcher), | 965 AccWatchForOneValueChange(&acc_observer_, txtfield_matcher), |
| 966 AccSendCharMessage(txtfield_matcher, L'A'))); | 966 AccSendCharMessage(txtfield_matcher, L'A'))); |
| (...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1058 EXPECT_CALL(acc_observer_, OnMenuPopup(_)) | 1058 EXPECT_CALL(acc_observer_, OnMenuPopup(_)) |
| 1059 .WillOnce(AccLeftClick(AccObjectMatcher(L"Forward"))); | 1059 .WillOnce(AccLeftClick(AccObjectMatcher(L"Forward"))); |
| 1060 | 1060 |
| 1061 EXPECT_CALL(ie_mock_, OnLoad(IN_CF, StrEq(page3))) | 1061 EXPECT_CALL(ie_mock_, OnLoad(IN_CF, StrEq(page3))) |
| 1062 .WillOnce(CloseBrowserMock(&ie_mock_)); | 1062 .WillOnce(CloseBrowserMock(&ie_mock_)); |
| 1063 | 1063 |
| 1064 LaunchIENavigateAndLoop(page1, kChromeFrameVeryLongNavigationTimeout); | 1064 LaunchIENavigateAndLoop(page1, kChromeFrameVeryLongNavigationTimeout); |
| 1065 } | 1065 } |
| 1066 | 1066 |
| 1067 } // namespace chrome_frame_test | 1067 } // namespace chrome_frame_test |
| OLD | NEW |