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

Side by Side Diff: chrome/browser/chromeos/login/login_browsertest.cc

Issue 1083683003: Speculative revert by sheriff (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Removed an unrelated commit that had accidentally slipped in. Created 5 years, 8 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
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 "ash/shell.h" 5 #include "ash/shell.h"
6 #include "ash/system/tray/system_tray.h" 6 #include "ash/system/tray/system_tray.h"
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/json/json_file_value_serializer.h"
9 #include "base/path_service.h"
10 #include "base/strings/string_util.h" 8 #include "base/strings/string_util.h"
11 #include "chrome/browser/chrome_notification_types.h" 9 #include "chrome/browser/chrome_notification_types.h"
12 #include "chrome/browser/chromeos/login/login_manager_test.h" 10 #include "chrome/browser/chromeos/login/login_manager_test.h"
13 #include "chrome/browser/chromeos/login/login_wizard.h" 11 #include "chrome/browser/chromeos/login/login_wizard.h"
14 #include "chrome/browser/chromeos/login/startup_utils.h" 12 #include "chrome/browser/chromeos/login/startup_utils.h"
15 #include "chrome/browser/chromeos/login/ui/login_display_host_impl.h" 13 #include "chrome/browser/chromeos/login/ui/login_display_host_impl.h"
16 #include "chrome/browser/chromeos/login/wizard_controller.h" 14 #include "chrome/browser/chromeos/login/wizard_controller.h"
17 #include "chrome/browser/chromeos/settings/cros_settings.h" 15 #include "chrome/browser/chromeos/settings/cros_settings.h"
18 #include "chrome/browser/profiles/profile_manager.h" 16 #include "chrome/browser/profiles/profile_manager.h"
19 #include "chrome/browser/profiles/profiles_state.h" 17 #include "chrome/browser/profiles/profiles_state.h"
20 #include "chrome/browser/ui/browser.h" 18 #include "chrome/browser/ui/browser.h"
21 #include "chrome/common/chrome_constants.h" 19 #include "chrome/common/chrome_constants.h"
22 #include "chrome/common/chrome_paths.h"
23 #include "chrome/common/chrome_switches.h" 20 #include "chrome/common/chrome_switches.h"
24 #include "chrome/common/pref_names.h"
25 #include "chrome/test/base/in_process_browser_test.h" 21 #include "chrome/test/base/in_process_browser_test.h"
26 #include "chrome/test/base/interactive_test_utils.h" 22 #include "chrome/test/base/interactive_test_utils.h"
27 #include "chrome/test/base/tracing.h" 23 #include "chrome/test/base/tracing.h"
28 #include "chrome/test/base/ui_test_utils.h" 24 #include "chrome/test/base/ui_test_utils.h"
29 #include "chromeos/chromeos_switches.h" 25 #include "chromeos/chromeos_switches.h"
30 #include "chromeos/login/user_names.h" 26 #include "chromeos/login/user_names.h"
31 #include "chromeos/settings/cros_settings_names.h" 27 #include "chromeos/settings/cros_settings_names.h"
32 #include "content/public/browser/render_frame_host.h" 28 #include "content/public/browser/render_frame_host.h"
33 #include "content/public/test/browser_test_utils.h" 29 #include "content/public/test/browser_test_utils.h"
34 #include "content/public/test/test_utils.h" 30 #include "content/public/test/test_utils.h"
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after
140 "document.getElementsByName('email')[0].value = '$Email';" 136 "document.getElementsByName('email')[0].value = '$Email';"
141 "document.getElementsByName('password')[0].value = '$Password';" 137 "document.getElementsByName('password')[0].value = '$Password';"
142 "document.getElementById('submit-button').click();" 138 "document.getElementById('submit-button').click();"
143 "})();"; 139 "})();";
144 ReplaceSubstringsAfterOffset(&js, 0, "$Email", user_email); 140 ReplaceSubstringsAfterOffset(&js, 0, "$Email", user_email);
145 ReplaceSubstringsAfterOffset(&js, 0, "$Password", password); 141 ReplaceSubstringsAfterOffset(&js, 0, "$Password", password);
146 ExecuteJsInGaiaAuthFrame(js); 142 ExecuteJsInGaiaAuthFrame(js);
147 } 143 }
148 }; 144 };
149 145
150 class LoginOfflineTest : public LoginTest {
151 public:
152 LoginOfflineTest() {}
153 ~LoginOfflineTest() override {}
154
155 bool SetUpUserDataDirectory() override {
156 base::FilePath user_data_dir;
157 CHECK(PathService::Get(chrome::DIR_USER_DATA, &user_data_dir));
158 base::FilePath local_state_path =
159 user_data_dir.Append(chrome::kLocalStateFilename);
160 base::DictionaryValue local_state_dict;
161
162 // Set webview disabled flag only when local state file does not exist.
163 // Otherwise, we break PRE tests that leave state in it.
164 if (!base::PathExists(local_state_path)) {
165 // TODO(rsorokin): Fix offline test for webview signin.
166 // http://crbug.com/475569
167 local_state_dict.SetBoolean(prefs::kWebviewSigninDisabled, true);
168
169 CHECK(JSONFileValueSerializer(local_state_path)
170 .Serialize(local_state_dict));
171 }
172
173 return LoginTest::SetUpUserDataDirectory();
174 }
175 };
176
177 // Used to make sure that the system tray is visible and within the screen 146 // Used to make sure that the system tray is visible and within the screen
178 // bounds after login. 147 // bounds after login.
179 void TestSystemTrayIsVisible() { 148 void TestSystemTrayIsVisible() {
180 ash::SystemTray* tray = ash::Shell::GetInstance()->GetPrimarySystemTray(); 149 ash::SystemTray* tray = ash::Shell::GetInstance()->GetPrimarySystemTray();
181 aura::Window* primary_win = ash::Shell::GetPrimaryRootWindow(); 150 aura::Window* primary_win = ash::Shell::GetPrimaryRootWindow();
182 EXPECT_TRUE(tray->visible()); 151 EXPECT_TRUE(tray->visible());
183 EXPECT_TRUE(primary_win->bounds().Contains(tray->GetBoundsInScreen())); 152 EXPECT_TRUE(primary_win->bounds().Contains(tray->GetBoundsInScreen()));
184 } 153 }
185 154
186 // After a chrome crash, the session manager will restart chrome with 155 // After a chrome crash, the session manager will restart chrome with
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
239 } 208 }
240 209
241 // Verifies that the webui for login comes up successfully. 210 // Verifies that the webui for login comes up successfully.
242 IN_PROC_BROWSER_TEST_F(LoginSigninTest, WebUIVisible) { 211 IN_PROC_BROWSER_TEST_F(LoginSigninTest, WebUIVisible) {
243 base::TimeDelta no_timeout; 212 base::TimeDelta no_timeout;
244 EXPECT_TRUE(tracing::WaitForWatchEvent(no_timeout)); 213 EXPECT_TRUE(tracing::WaitForWatchEvent(no_timeout));
245 std::string json_events; 214 std::string json_events;
246 ASSERT_TRUE(tracing::EndTracing(&json_events)); 215 ASSERT_TRUE(tracing::EndTracing(&json_events));
247 } 216 }
248 217
249 IN_PROC_BROWSER_TEST_F(LoginOfflineTest, PRE_GaiaAuthOffline) { 218 IN_PROC_BROWSER_TEST_F(LoginTest, PRE_GaiaAuthOffline) {
250 RegisterUser(kTestUser); 219 RegisterUser(kTestUser);
251 chromeos::StartupUtils::MarkOobeCompleted(); 220 chromeos::StartupUtils::MarkOobeCompleted();
252 chromeos::CrosSettings::Get()->SetBoolean( 221 chromeos::CrosSettings::Get()->SetBoolean(
253 chromeos::kAccountsPrefShowUserNamesOnSignIn, false); 222 chromeos::kAccountsPrefShowUserNamesOnSignIn, false);
254 } 223 }
255 224
256 IN_PROC_BROWSER_TEST_F(LoginOfflineTest, GaiaAuthOffline) { 225 IN_PROC_BROWSER_TEST_F(LoginTest, GaiaAuthOffline) {
257 bool show_user; 226 bool show_user;
258 ASSERT_TRUE(chromeos::CrosSettings::Get()->GetBoolean( 227 ASSERT_TRUE(chromeos::CrosSettings::Get()->GetBoolean(
259 chromeos::kAccountsPrefShowUserNamesOnSignIn, &show_user)); 228 chromeos::kAccountsPrefShowUserNamesOnSignIn, &show_user));
260 ASSERT_FALSE(show_user); 229 ASSERT_FALSE(show_user);
261 230
262 StartGaiaAuthOffline(); 231 StartGaiaAuthOffline();
263 232
264 chromeos::UserContext user_context(kTestUser); 233 chromeos::UserContext user_context(kTestUser);
265 user_context.SetKey(chromeos::Key(kPassword)); 234 user_context.SetKey(chromeos::Key(kPassword));
266 SetExpectedCredentials(user_context); 235 SetExpectedCredentials(user_context);
267 236
268 content::WindowedNotificationObserver session_start_waiter( 237 content::WindowedNotificationObserver session_start_waiter(
269 chrome::NOTIFICATION_SESSION_STARTED, 238 chrome::NOTIFICATION_SESSION_STARTED,
270 content::NotificationService::AllSources()); 239 content::NotificationService::AllSources());
271 SubmitGaiaAuthOfflineForm(kTestUser, kPassword); 240 SubmitGaiaAuthOfflineForm(kTestUser, kPassword);
272 session_start_waiter.Wait(); 241 session_start_waiter.Wait();
273 242
274 TestSystemTrayIsVisible(); 243 TestSystemTrayIsVisible();
275 } 244 }
276 245
277 } // namespace 246 } // namespace
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/login/hid_detection_browsertest.cc ('k') | chrome/browser/chromeos/login/login_manager_test.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698