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

Side by Side Diff: ash/test/ash_test_base.cc

Issue 2734933004: ash: Use SessionController instead of SessionStateDelegate (Closed)
Patch Set: rebase to get WorkspaceLayoutManagerSoloTest change Created 3 years, 9 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
« no previous file with comments | « ash/test/ash_test_base.h ('k') | ash/test/ash_test_helper.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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/test/ash_test_base.h" 5 #include "ash/test/ash_test_base.h"
6 6
7 #include <string> 7 #include <string>
8 #include <vector> 8 #include <vector>
9 9
10 #include "ash/common/test/test_session_state_delegate.h" 10 #include "ash/common/session/session_controller.h"
11 #include "ash/common/test/test_session_controller_client.h"
11 #include "ash/common/test/test_system_tray_delegate.h" 12 #include "ash/common/test/test_system_tray_delegate.h"
12 #include "ash/common/wm/window_positioner.h" 13 #include "ash/common/wm/window_positioner.h"
13 #include "ash/common/wm_shell.h" 14 #include "ash/common/wm_shell.h"
14 #include "ash/common/wm_window.h" 15 #include "ash/common/wm_window.h"
15 #include "ash/display/extended_mouse_warp_controller.h" 16 #include "ash/display/extended_mouse_warp_controller.h"
16 #include "ash/display/mouse_cursor_event_filter.h" 17 #include "ash/display/mouse_cursor_event_filter.h"
17 #include "ash/display/unified_mouse_warp_controller.h" 18 #include "ash/display/unified_mouse_warp_controller.h"
18 #include "ash/display/window_tree_host_manager.h" 19 #include "ash/display/window_tree_host_manager.h"
19 #include "ash/ime/input_method_event_handler.h" 20 #include "ash/ime/input_method_event_handler.h"
20 #include "ash/root_window_controller.h" 21 #include "ash/root_window_controller.h"
(...skipping 271 matching lines...) Expand 10 before | Expand all | Expand 10 after
292 } 293 }
293 294
294 void AshTestBase::RunAllPendingInMessageLoop() { 295 void AshTestBase::RunAllPendingInMessageLoop() {
295 ash_test_helper_->RunAllPendingInMessageLoop(); 296 ash_test_helper_->RunAllPendingInMessageLoop();
296 } 297 }
297 298
298 TestScreenshotDelegate* AshTestBase::GetScreenshotDelegate() { 299 TestScreenshotDelegate* AshTestBase::GetScreenshotDelegate() {
299 return ash_test_helper_->test_screenshot_delegate(); 300 return ash_test_helper_->test_screenshot_delegate();
300 } 301 }
301 302
303 TestSessionControllerClient* AshTestBase::GetSessionControllerClient() {
304 return ash_test_helper_->test_session_controller_client();
305 }
306
302 TestSystemTrayDelegate* AshTestBase::GetSystemTrayDelegate() { 307 TestSystemTrayDelegate* AshTestBase::GetSystemTrayDelegate() {
303 return static_cast<TestSystemTrayDelegate*>( 308 return static_cast<TestSystemTrayDelegate*>(
304 WmShell::Get()->system_tray_delegate()); 309 WmShell::Get()->system_tray_delegate());
305 } 310 }
306 311
307 void AshTestBase::SetSessionStarted(bool session_started) { 312 void AshTestBase::SetSessionStarted(bool session_started) {
308 AshTestHelper::GetTestSessionStateDelegate()->SetActiveUserSessionStarted( 313 if (session_started)
309 session_started); 314 GetSessionControllerClient()->CreatePredefinedUserSessions(1);
310 } 315 else
311 316 GetSessionControllerClient()->Reset();
312 void AshTestBase::SetSessionStarting() {
313 AshTestHelper::GetTestSessionStateDelegate()->set_session_state(
314 session_manager::SessionState::ACTIVE);
315 } 317 }
316 318
317 void AshTestBase::SetUserLoggedIn(bool user_logged_in) { 319 void AshTestBase::SetUserLoggedIn(bool user_logged_in) {
318 AshTestHelper::GetTestSessionStateDelegate()->SetHasActiveUser( 320 SetSessionStarted(user_logged_in);
319 user_logged_in); 321 }
322
323 void AshTestBase::SetCanLockScreen(bool can_lock) {
324 GetSessionControllerClient()->SetCanLockScreen(can_lock);
320 } 325 }
321 326
322 void AshTestBase::SetShouldLockScreenAutomatically(bool should_lock) { 327 void AshTestBase::SetShouldLockScreenAutomatically(bool should_lock) {
323 AshTestHelper::GetTestSessionStateDelegate() 328 GetSessionControllerClient()->SetShouldLockScreenAutomatically(should_lock);
324 ->SetShouldLockScreenAutomatically(should_lock);
325 } 329 }
326 330
327 void AshTestBase::SetUserAddingScreenRunning(bool user_adding_screen_running) { 331 void AshTestBase::SetUserAddingScreenRunning(bool user_adding_screen_running) {
328 AshTestHelper::GetTestSessionStateDelegate()->SetUserAddingScreenRunning( 332 GetSessionControllerClient()->SetSessionState(
329 user_adding_screen_running); 333 user_adding_screen_running
334 ? session_manager::SessionState::LOGIN_SECONDARY
335 : session_manager::SessionState::ACTIVE);
330 } 336 }
331 337
332 void AshTestBase::BlockUserSession(UserSessionBlockReason block_reason) { 338 void AshTestBase::BlockUserSession(UserSessionBlockReason block_reason) {
333 switch (block_reason) { 339 switch (block_reason) {
334 case BLOCKED_BY_LOCK_SCREEN: 340 case BLOCKED_BY_LOCK_SCREEN:
335 SetSessionStarted(true); 341 SetSessionStarted(true);
336 SetUserAddingScreenRunning(false); 342 WmShell::Get()->session_controller()->LockScreenAndFlushForTest();
337 WmShell::Get()->GetSessionStateDelegate()->LockScreen();
338 Shell::GetInstance()->OnLockStateChanged(true); 343 Shell::GetInstance()->OnLockStateChanged(true);
339 break; 344 break;
340 case BLOCKED_BY_LOGIN_SCREEN: 345 case BLOCKED_BY_LOGIN_SCREEN:
341 SetUserAddingScreenRunning(false);
342 SetSessionStarted(false); 346 SetSessionStarted(false);
343 break; 347 break;
344 case BLOCKED_BY_USER_ADDING_SCREEN: 348 case BLOCKED_BY_USER_ADDING_SCREEN:
345 SetUserAddingScreenRunning(true); 349 SetUserAddingScreenRunning(true);
346 SetSessionStarted(true);
347 break; 350 break;
348 default: 351 default:
349 NOTREACHED(); 352 NOTREACHED();
350 break; 353 break;
351 } 354 }
352 } 355 }
353 356
354 void AshTestBase::UnblockUserSession() { 357 void AshTestBase::UnblockUserSession() {
355 WmShell::Get()->GetSessionStateDelegate()->UnlockScreen();
356 SetSessionStarted(true); 358 SetSessionStarted(true);
357 SetUserAddingScreenRunning(false); 359 GetSessionControllerClient()->UnlockScreen();
358 } 360 }
359 361
360 void AshTestBase::DisableIME() { 362 void AshTestBase::DisableIME() {
361 // WindowTreeHostManager isn't applicable to mash and IME is routed 363 // WindowTreeHostManager isn't applicable to mash and IME is routed
362 // differently in mash. 364 // differently in mash.
363 if (WmShell::Get()->IsRunningInMash()) 365 if (WmShell::Get()->IsRunningInMash())
364 return; 366 return;
365 367
366 Shell::GetInstance()->RemovePreTargetHandler( 368 Shell::GetInstance()->RemovePreTargetHandler(
367 Shell::GetInstance() 369 Shell::GetInstance()
(...skipping 30 matching lines...) Expand all
398 Shell::GetInstance()->window_tree_host_manager()->SetPrimaryDisplayId( 400 Shell::GetInstance()->window_tree_host_manager()->SetPrimaryDisplayId(
399 display_manager()->GetSecondaryDisplay().id()); 401 display_manager()->GetSecondaryDisplay().id());
400 } 402 }
401 403
402 display::Display AshTestBase::GetSecondaryDisplay() { 404 display::Display AshTestBase::GetSecondaryDisplay() {
403 return ash_test_helper_->GetSecondaryDisplay(); 405 return ash_test_helper_->GetSecondaryDisplay();
404 } 406 }
405 407
406 } // namespace test 408 } // namespace test
407 } // namespace ash 409 } // namespace ash
OLDNEW
« no previous file with comments | « ash/test/ash_test_base.h ('k') | ash/test/ash_test_helper.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698