| OLD | NEW |
| 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 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 "chrome/app/chrome_dll_resource.h" | 5 #include "chrome/app/chrome_dll_resource.h" |
| 6 #include "chrome/test/automated_ui_tests/automated_ui_test_base.h" | 6 #include "chrome/test/automated_ui_tests/automated_ui_test_base.h" |
| 7 #include "chrome/test/automation/browser_proxy.h" | 7 #include "chrome/test/automation/browser_proxy.h" |
| 8 #include "chrome/test/automation/tab_proxy.h" | 8 #include "chrome/test/automation/tab_proxy.h" |
| 9 #include "chrome/test/ui/ui_test.h" | 9 #include "chrome/test/ui/ui_test.h" |
| 10 #include "googleurl/src/gurl.h" | 10 #include "googleurl/src/gurl.h" |
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 70 ASSERT_EQ(1, tab_count); | 70 ASSERT_EQ(1, tab_count); |
| 71 RestoreTab(); | 71 RestoreTab(); |
| 72 active_browser()->GetTabCount(&tab_count); | 72 active_browser()->GetTabCount(&tab_count); |
| 73 ASSERT_EQ(2, tab_count); | 73 ASSERT_EQ(2, tab_count); |
| 74 } | 74 } |
| 75 | 75 |
| 76 TEST_F(AutomatedUITestBase, MAYBE_CloseTab) { | 76 TEST_F(AutomatedUITestBase, MAYBE_CloseTab) { |
| 77 int num_browser_windows; | 77 int num_browser_windows; |
| 78 int tab_count; | 78 int tab_count; |
| 79 NewTab(); | 79 NewTab(); |
| 80 automation()->GetBrowserWindowCount(&num_browser_windows); | 80 ASSERT_TRUE(automation()->GetBrowserWindowCount(&num_browser_windows)); |
| 81 ASSERT_EQ(1, num_browser_windows); | 81 ASSERT_EQ(1, num_browser_windows); |
| 82 active_browser()->GetTabCount(&tab_count); | 82 active_browser()->GetTabCount(&tab_count); |
| 83 ASSERT_EQ(2, tab_count); | 83 ASSERT_EQ(2, tab_count); |
| 84 | 84 |
| 85 ASSERT_TRUE(OpenAndActivateNewBrowserWindow(NULL)); | 85 ASSERT_TRUE(OpenAndActivateNewBrowserWindow(NULL)); |
| 86 NewTab(); | 86 NewTab(); |
| 87 NewTab(); | 87 NewTab(); |
| 88 active_browser()->GetTabCount(&tab_count); | 88 active_browser()->GetTabCount(&tab_count); |
| 89 ASSERT_EQ(3, tab_count); | 89 ASSERT_EQ(3, tab_count); |
| 90 automation()->GetBrowserWindowCount(&num_browser_windows); | 90 ASSERT_TRUE(automation()->GetBrowserWindowCount(&num_browser_windows)); |
| 91 ASSERT_EQ(2, num_browser_windows); | 91 ASSERT_EQ(2, num_browser_windows); |
| 92 | 92 |
| 93 ASSERT_TRUE(CloseActiveTab()); | 93 ASSERT_TRUE(CloseActiveTab()); |
| 94 active_browser()->GetTabCount(&tab_count); | 94 active_browser()->GetTabCount(&tab_count); |
| 95 ASSERT_EQ(2, tab_count); | 95 ASSERT_EQ(2, tab_count); |
| 96 ASSERT_TRUE(CloseActiveTab()); | 96 ASSERT_TRUE(CloseActiveTab()); |
| 97 active_browser()->GetTabCount(&tab_count); | 97 active_browser()->GetTabCount(&tab_count); |
| 98 ASSERT_EQ(1, tab_count); | 98 ASSERT_EQ(1, tab_count); |
| 99 num_browser_windows = 0; | 99 num_browser_windows = 0; |
| 100 automation()->GetBrowserWindowCount(&num_browser_windows); | 100 ASSERT_TRUE(automation()->GetBrowserWindowCount(&num_browser_windows)); |
| 101 ASSERT_EQ(2, num_browser_windows); | 101 ASSERT_EQ(2, num_browser_windows); |
| 102 | 102 |
| 103 // The browser window is closed by closing this tab. | 103 // The browser window is closed by closing this tab. |
| 104 ASSERT_TRUE(CloseActiveTab()); | 104 ASSERT_TRUE(CloseActiveTab()); |
| 105 automation()->GetBrowserWindowCount(&num_browser_windows); | 105 ASSERT_TRUE(automation()->GetBrowserWindowCount(&num_browser_windows)); |
| 106 ASSERT_EQ(1, num_browser_windows); | 106 ASSERT_EQ(1, num_browser_windows); |
| 107 // Active_browser_ is now the first created window. | 107 // Active_browser_ is now the first created window. |
| 108 active_browser()->GetTabCount(&tab_count); | 108 active_browser()->GetTabCount(&tab_count); |
| 109 ASSERT_EQ(2, tab_count); | 109 ASSERT_EQ(2, tab_count); |
| 110 ASSERT_TRUE(CloseActiveTab()); | 110 ASSERT_TRUE(CloseActiveTab()); |
| 111 active_browser()->GetTabCount(&tab_count); | 111 active_browser()->GetTabCount(&tab_count); |
| 112 ASSERT_EQ(1, tab_count); | 112 ASSERT_EQ(1, tab_count); |
| 113 | 113 |
| 114 // The last tab should not be closed. | 114 // The last tab should not be closed. |
| 115 ASSERT_FALSE(CloseActiveTab()); | 115 ASSERT_FALSE(CloseActiveTab()); |
| 116 active_browser()->GetTabCount(&tab_count); | 116 active_browser()->GetTabCount(&tab_count); |
| 117 ASSERT_EQ(1, tab_count); | 117 ASSERT_EQ(1, tab_count); |
| 118 } | 118 } |
| 119 | 119 |
| 120 TEST_F(AutomatedUITestBase, OpenBrowserWindow) { | 120 TEST_F(AutomatedUITestBase, OpenBrowserWindow) { |
| 121 int num_browser_windows; | 121 int num_browser_windows; |
| 122 int tab_count; | 122 int tab_count; |
| 123 automation()->GetBrowserWindowCount(&num_browser_windows); | 123 ASSERT_TRUE(automation()->GetBrowserWindowCount(&num_browser_windows)); |
| 124 ASSERT_EQ(1, num_browser_windows); | 124 ASSERT_EQ(1, num_browser_windows); |
| 125 active_browser()->GetTabCount(&tab_count); | 125 active_browser()->GetTabCount(&tab_count); |
| 126 ASSERT_EQ(1, tab_count); | 126 ASSERT_EQ(1, tab_count); |
| 127 | 127 |
| 128 scoped_refptr<BrowserProxy> browser_1; | 128 scoped_refptr<BrowserProxy> browser_1; |
| 129 ASSERT_TRUE(OpenAndActivateNewBrowserWindow(&browser_1)); | 129 ASSERT_TRUE(OpenAndActivateNewBrowserWindow(&browser_1)); |
| 130 automation()->GetBrowserWindowCount(&num_browser_windows); | 130 ASSERT_TRUE(automation()->GetBrowserWindowCount(&num_browser_windows)); |
| 131 ASSERT_EQ(2, num_browser_windows); | 131 ASSERT_EQ(2, num_browser_windows); |
| 132 active_browser()->GetTabCount(&tab_count); | 132 active_browser()->GetTabCount(&tab_count); |
| 133 ASSERT_EQ(1, tab_count); | 133 ASSERT_EQ(1, tab_count); |
| 134 NewTab(); | 134 NewTab(); |
| 135 browser_1->GetTabCount(&tab_count); | 135 browser_1->GetTabCount(&tab_count); |
| 136 ASSERT_EQ(1, tab_count); | 136 ASSERT_EQ(1, tab_count); |
| 137 active_browser()->GetTabCount(&tab_count); | 137 active_browser()->GetTabCount(&tab_count); |
| 138 ASSERT_EQ(2, tab_count); | 138 ASSERT_EQ(2, tab_count); |
| 139 | 139 |
| 140 scoped_refptr<BrowserProxy> browser_2; | 140 scoped_refptr<BrowserProxy> browser_2; |
| 141 ASSERT_TRUE(OpenAndActivateNewBrowserWindow(&browser_2)); | 141 ASSERT_TRUE(OpenAndActivateNewBrowserWindow(&browser_2)); |
| 142 automation()->GetBrowserWindowCount(&num_browser_windows); | 142 ASSERT_TRUE(automation()->GetBrowserWindowCount(&num_browser_windows)); |
| 143 ASSERT_EQ(3, num_browser_windows); | 143 ASSERT_EQ(3, num_browser_windows); |
| 144 active_browser()->GetTabCount(&tab_count); | 144 active_browser()->GetTabCount(&tab_count); |
| 145 ASSERT_EQ(1, tab_count); | 145 ASSERT_EQ(1, tab_count); |
| 146 NewTab(); | 146 NewTab(); |
| 147 NewTab(); | 147 NewTab(); |
| 148 browser_1->GetTabCount(&tab_count); | 148 browser_1->GetTabCount(&tab_count); |
| 149 ASSERT_EQ(1, tab_count); | 149 ASSERT_EQ(1, tab_count); |
| 150 browser_2->GetTabCount(&tab_count); | 150 browser_2->GetTabCount(&tab_count); |
| 151 ASSERT_EQ(2, tab_count); | 151 ASSERT_EQ(2, tab_count); |
| 152 active_browser()->GetTabCount(&tab_count); | 152 active_browser()->GetTabCount(&tab_count); |
| 153 ASSERT_EQ(3, tab_count); | 153 ASSERT_EQ(3, tab_count); |
| 154 | 154 |
| 155 bool application_closed; | 155 bool application_closed; |
| 156 CloseBrowser(browser_1.get(), &application_closed); | 156 CloseBrowser(browser_1.get(), &application_closed); |
| 157 ASSERT_FALSE(application_closed); | 157 ASSERT_FALSE(application_closed); |
| 158 automation()->GetBrowserWindowCount(&num_browser_windows); | 158 ASSERT_TRUE(automation()->GetBrowserWindowCount(&num_browser_windows)); |
| 159 ASSERT_EQ(2, num_browser_windows); | 159 ASSERT_EQ(2, num_browser_windows); |
| 160 CloseBrowser(browser_2.get(), &application_closed); | 160 CloseBrowser(browser_2.get(), &application_closed); |
| 161 ASSERT_FALSE(application_closed); | 161 ASSERT_FALSE(application_closed); |
| 162 automation()->GetBrowserWindowCount(&num_browser_windows); | 162 ASSERT_TRUE(automation()->GetBrowserWindowCount(&num_browser_windows)); |
| 163 ASSERT_EQ(1, num_browser_windows); | 163 ASSERT_EQ(1, num_browser_windows); |
| 164 } | 164 } |
| 165 | 165 |
| 166 TEST_F(AutomatedUITestBase, MAYBE_CloseBrowserWindow) { | 166 TEST_F(AutomatedUITestBase, MAYBE_CloseBrowserWindow) { |
| 167 int tab_count; | 167 int tab_count; |
| 168 NewTab(); | 168 NewTab(); |
| 169 active_browser()->GetTabCount(&tab_count); | 169 active_browser()->GetTabCount(&tab_count); |
| 170 ASSERT_EQ(2, tab_count); | 170 ASSERT_EQ(2, tab_count); |
| 171 | 171 |
| 172 ASSERT_TRUE(OpenAndActivateNewBrowserWindow(NULL)); | 172 ASSERT_TRUE(OpenAndActivateNewBrowserWindow(NULL)); |
| (...skipping 22 matching lines...) Expand all Loading... |
| 195 active_browser()->GetTabCount(&tab_count); | 195 active_browser()->GetTabCount(&tab_count); |
| 196 ASSERT_EQ(2, tab_count); | 196 ASSERT_EQ(2, tab_count); |
| 197 } | 197 } |
| 198 | 198 |
| 199 ASSERT_FALSE(CloseActiveWindow()); | 199 ASSERT_FALSE(CloseActiveWindow()); |
| 200 } | 200 } |
| 201 | 201 |
| 202 TEST_F(AutomatedUITestBase, MAYBE_IncognitoWindow) { | 202 TEST_F(AutomatedUITestBase, MAYBE_IncognitoWindow) { |
| 203 int num_browser_windows; | 203 int num_browser_windows; |
| 204 int num_normal_browser_windows; | 204 int num_normal_browser_windows; |
| 205 automation()->GetBrowserWindowCount(&num_browser_windows); | 205 ASSERT_TRUE(automation()->GetBrowserWindowCount(&num_browser_windows)); |
| 206 ASSERT_EQ(1, num_browser_windows); | 206 ASSERT_EQ(1, num_browser_windows); |
| 207 automation()->GetNormalBrowserWindowCount(&num_normal_browser_windows); | 207 automation()->GetNormalBrowserWindowCount(&num_normal_browser_windows); |
| 208 ASSERT_EQ(1, num_normal_browser_windows); | 208 ASSERT_EQ(1, num_normal_browser_windows); |
| 209 | 209 |
| 210 ASSERT_TRUE(GoOffTheRecord()); | 210 ASSERT_TRUE(GoOffTheRecord()); |
| 211 ASSERT_TRUE(GoOffTheRecord()); | 211 ASSERT_TRUE(GoOffTheRecord()); |
| 212 automation()->GetBrowserWindowCount(&num_browser_windows); | 212 ASSERT_TRUE(automation()->GetBrowserWindowCount(&num_browser_windows)); |
| 213 ASSERT_EQ(3, num_browser_windows); | 213 ASSERT_EQ(3, num_browser_windows); |
| 214 automation()->GetNormalBrowserWindowCount(&num_normal_browser_windows); | 214 automation()->GetNormalBrowserWindowCount(&num_normal_browser_windows); |
| 215 ASSERT_EQ(1, num_normal_browser_windows); | 215 ASSERT_EQ(1, num_normal_browser_windows); |
| 216 | 216 |
| 217 // There is only one normal window so it will not be closed. | 217 // There is only one normal window so it will not be closed. |
| 218 ASSERT_FALSE(CloseActiveWindow()); | 218 ASSERT_FALSE(CloseActiveWindow()); |
| 219 automation()->GetBrowserWindowCount(&num_browser_windows); | 219 ASSERT_TRUE(automation()->GetBrowserWindowCount(&num_browser_windows)); |
| 220 ASSERT_EQ(3, num_browser_windows); | 220 ASSERT_EQ(3, num_browser_windows); |
| 221 automation()->GetNormalBrowserWindowCount(&num_normal_browser_windows); | 221 automation()->GetNormalBrowserWindowCount(&num_normal_browser_windows); |
| 222 ASSERT_EQ(1, num_normal_browser_windows); | 222 ASSERT_EQ(1, num_normal_browser_windows); |
| 223 | 223 |
| 224 set_active_browser(automation()->GetBrowserWindow(0)); | 224 set_active_browser(automation()->GetBrowserWindow(0)); |
| 225 ASSERT_TRUE(RunCommand(IDC_CLOSE_WINDOW)); | 225 ASSERT_TRUE(RunCommand(IDC_CLOSE_WINDOW)); |
| 226 set_active_browser(automation()->GetBrowserWindow(0)); | 226 set_active_browser(automation()->GetBrowserWindow(0)); |
| 227 ASSERT_TRUE(RunCommand(IDC_CLOSE_WINDOW)); | 227 ASSERT_TRUE(RunCommand(IDC_CLOSE_WINDOW)); |
| 228 automation()->GetBrowserWindowCount(&num_browser_windows); | 228 ASSERT_TRUE(automation()->GetBrowserWindowCount(&num_browser_windows)); |
| 229 ASSERT_EQ(1, num_browser_windows); | 229 ASSERT_EQ(1, num_browser_windows); |
| 230 } | 230 } |
| 231 | 231 |
| 232 TEST_F(AutomatedUITestBase, MAYBE_OpenCloseBrowserWindowWithAccelerator) { | 232 TEST_F(AutomatedUITestBase, MAYBE_OpenCloseBrowserWindowWithAccelerator) { |
| 233 // Note: we don't use RunCommand(IDC_OPEN/CLOSE_WINDOW) to open/close | 233 // Note: we don't use RunCommand(IDC_OPEN/CLOSE_WINDOW) to open/close |
| 234 // browser window in automated ui tests. Instead we use | 234 // browser window in automated ui tests. Instead we use |
| 235 // OpenAndActivateNewBrowserWindow and CloseActiveWindow. | 235 // OpenAndActivateNewBrowserWindow and CloseActiveWindow. |
| 236 // There are other parts of UI test that use the accelerators. This is | 236 // There are other parts of UI test that use the accelerators. This is |
| 237 // a unit test for those usage. | 237 // a unit test for those usage. |
| 238 ASSERT_TRUE(RunCommand(IDC_NEW_WINDOW)); | 238 ASSERT_TRUE(RunCommand(IDC_NEW_WINDOW)); |
| 239 int num_browser_windows; | 239 int num_browser_windows; |
| 240 automation()->GetBrowserWindowCount(&num_browser_windows); | 240 ASSERT_TRUE(automation()->GetBrowserWindowCount(&num_browser_windows)); |
| 241 ASSERT_EQ(2, num_browser_windows); | 241 ASSERT_EQ(2, num_browser_windows); |
| 242 ASSERT_TRUE(RunCommand(IDC_NEW_WINDOW)); | 242 ASSERT_TRUE(RunCommand(IDC_NEW_WINDOW)); |
| 243 ASSERT_TRUE(RunCommand(IDC_NEW_WINDOW)); | 243 ASSERT_TRUE(RunCommand(IDC_NEW_WINDOW)); |
| 244 ASSERT_TRUE(RunCommand(IDC_NEW_WINDOW)); | 244 ASSERT_TRUE(RunCommand(IDC_NEW_WINDOW)); |
| 245 ASSERT_TRUE(RunCommand(IDC_NEW_WINDOW)); | 245 ASSERT_TRUE(RunCommand(IDC_NEW_WINDOW)); |
| 246 ASSERT_TRUE(RunCommand(IDC_NEW_WINDOW)); | 246 ASSERT_TRUE(RunCommand(IDC_NEW_WINDOW)); |
| 247 automation()->GetBrowserWindowCount(&num_browser_windows); | 247 ASSERT_TRUE(automation()->GetBrowserWindowCount(&num_browser_windows)); |
| 248 ASSERT_EQ(7, num_browser_windows); | 248 ASSERT_EQ(7, num_browser_windows); |
| 249 | 249 |
| 250 set_active_browser(automation()->GetBrowserWindow(0)); | 250 set_active_browser(automation()->GetBrowserWindow(0)); |
| 251 ASSERT_TRUE(RunCommand(IDC_CLOSE_WINDOW)); | 251 ASSERT_TRUE(RunCommand(IDC_CLOSE_WINDOW)); |
| 252 automation()->GetBrowserWindowCount(&num_browser_windows); | 252 ASSERT_TRUE(automation()->GetBrowserWindowCount(&num_browser_windows)); |
| 253 ASSERT_EQ(6, num_browser_windows); | 253 ASSERT_EQ(6, num_browser_windows); |
| 254 set_active_browser(automation()->GetBrowserWindow(0)); | 254 set_active_browser(automation()->GetBrowserWindow(0)); |
| 255 ASSERT_TRUE(RunCommand(IDC_CLOSE_WINDOW)); | 255 ASSERT_TRUE(RunCommand(IDC_CLOSE_WINDOW)); |
| 256 set_active_browser(automation()->GetBrowserWindow(0)); | 256 set_active_browser(automation()->GetBrowserWindow(0)); |
| 257 ASSERT_TRUE(RunCommand(IDC_CLOSE_WINDOW)); | 257 ASSERT_TRUE(RunCommand(IDC_CLOSE_WINDOW)); |
| 258 set_active_browser(automation()->GetBrowserWindow(0)); | 258 set_active_browser(automation()->GetBrowserWindow(0)); |
| 259 ASSERT_TRUE(RunCommand(IDC_CLOSE_WINDOW)); | 259 ASSERT_TRUE(RunCommand(IDC_CLOSE_WINDOW)); |
| 260 set_active_browser(automation()->GetBrowserWindow(0)); | 260 set_active_browser(automation()->GetBrowserWindow(0)); |
| 261 ASSERT_TRUE(RunCommand(IDC_CLOSE_WINDOW)); | 261 ASSERT_TRUE(RunCommand(IDC_CLOSE_WINDOW)); |
| 262 set_active_browser(automation()->GetBrowserWindow(0)); | 262 set_active_browser(automation()->GetBrowserWindow(0)); |
| 263 ASSERT_TRUE(RunCommand(IDC_CLOSE_WINDOW)); | 263 ASSERT_TRUE(RunCommand(IDC_CLOSE_WINDOW)); |
| 264 automation()->GetBrowserWindowCount(&num_browser_windows); | 264 ASSERT_TRUE(automation()->GetBrowserWindowCount(&num_browser_windows)); |
| 265 ASSERT_EQ(1, num_browser_windows); | 265 ASSERT_EQ(1, num_browser_windows); |
| 266 } | 266 } |
| 267 | 267 |
| 268 TEST_F(AutomatedUITestBase, Navigate) { | 268 TEST_F(AutomatedUITestBase, Navigate) { |
| 269 FilePath path_prefix(test_data_directory_.AppendASCII("session_history")); | 269 FilePath path_prefix(test_data_directory_.AppendASCII("session_history")); |
| 270 GURL url1(net::FilePathToFileURL(path_prefix.AppendASCII("bot1.html"))); | 270 GURL url1(net::FilePathToFileURL(path_prefix.AppendASCII("bot1.html"))); |
| 271 GURL url2(net::FilePathToFileURL(path_prefix.AppendASCII("bot2.html"))); | 271 GURL url2(net::FilePathToFileURL(path_prefix.AppendASCII("bot2.html"))); |
| 272 GURL url3(net::FilePathToFileURL(path_prefix.AppendASCII("bot3.html"))); | 272 GURL url3(net::FilePathToFileURL(path_prefix.AppendASCII("bot3.html"))); |
| 273 GURL url; | 273 GURL url; |
| 274 ASSERT_TRUE(Navigate(url1)); | 274 ASSERT_TRUE(Navigate(url1)); |
| (...skipping 11 matching lines...) Expand all Loading... |
| 286 ASSERT_TRUE(BackButton()); | 286 ASSERT_TRUE(BackButton()); |
| 287 ASSERT_TRUE(GetActiveTab()->GetCurrentURL(&url)); | 287 ASSERT_TRUE(GetActiveTab()->GetCurrentURL(&url)); |
| 288 ASSERT_EQ(url1, url); | 288 ASSERT_EQ(url1, url); |
| 289 ASSERT_TRUE(ForwardButton()); | 289 ASSERT_TRUE(ForwardButton()); |
| 290 ASSERT_TRUE(GetActiveTab()->GetCurrentURL(&url)); | 290 ASSERT_TRUE(GetActiveTab()->GetCurrentURL(&url)); |
| 291 ASSERT_EQ(url2, url); | 291 ASSERT_EQ(url2, url); |
| 292 ASSERT_TRUE(ReloadPage()); | 292 ASSERT_TRUE(ReloadPage()); |
| 293 ASSERT_TRUE(GetActiveTab()->GetCurrentURL(&url)); | 293 ASSERT_TRUE(GetActiveTab()->GetCurrentURL(&url)); |
| 294 ASSERT_EQ(url2, url); | 294 ASSERT_EQ(url2, url); |
| 295 } | 295 } |
| OLD | NEW |