Home | History | Annotate | Download | only in ash
      1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #ifndef ASH_SESSION_STATE_DELEGATE_STUB_H_
      6 #define ASH_SESSION_STATE_DELEGATE_STUB_H_
      7 
      8 #include "ash/session_state_delegate.h"
      9 #include "base/basictypes.h"
     10 #include "base/compiler_specific.h"
     11 #include "ui/gfx/image/image_skia.h"
     12 
     13 namespace ash {
     14 
     15 // Stub implementation of SessionStateDelegate for testing.
     16 class SessionStateDelegateStub : public SessionStateDelegate {
     17  public:
     18   SessionStateDelegateStub();
     19   virtual ~SessionStateDelegateStub();
     20 
     21   // SessionStateDelegate:
     22   virtual int GetMaximumNumberOfLoggedInUsers() const OVERRIDE;
     23   virtual int NumberOfLoggedInUsers() const OVERRIDE;
     24   virtual bool IsActiveUserSessionStarted() const OVERRIDE;
     25   virtual bool CanLockScreen() const OVERRIDE;
     26   virtual bool IsScreenLocked() const OVERRIDE;
     27   virtual bool ShouldLockScreenBeforeSuspending() const OVERRIDE;
     28   virtual void LockScreen() OVERRIDE;
     29   virtual void UnlockScreen() OVERRIDE;
     30   virtual bool IsUserSessionBlocked() const OVERRIDE;
     31   virtual const base::string16 GetUserDisplayName(
     32       ash::MultiProfileIndex index) const OVERRIDE;
     33   virtual const std::string GetUserEmail(
     34       ash::MultiProfileIndex index) const OVERRIDE;
     35   virtual const std::string GetUserID(
     36       ash::MultiProfileIndex index) const OVERRIDE;
     37   virtual const gfx::ImageSkia& GetUserImage(
     38       ash::MultiProfileIndex index) const OVERRIDE;
     39   virtual void GetLoggedInUsers(UserIdList* users) OVERRIDE;
     40   virtual void SwitchActiveUser(const std::string& user_id) OVERRIDE;
     41   virtual void CycleActiveUser(CycleUser cycle_user) OVERRIDE;
     42   virtual void AddSessionStateObserver(
     43       ash::SessionStateObserver* observer) OVERRIDE;
     44   virtual void RemoveSessionStateObserver(
     45       ash::SessionStateObserver* observer) OVERRIDE;
     46   virtual bool TransferWindowToDesktopOfUser(
     47       aura::Window* window,
     48       ash::MultiProfileIndex index) OVERRIDE;
     49 
     50  private:
     51   bool screen_locked_;
     52 
     53   // A pseudo user image.
     54   gfx::ImageSkia null_image_;
     55 
     56   DISALLOW_COPY_AND_ASSIGN(SessionStateDelegateStub);
     57 };
     58 
     59 }  // namespace ash
     60 
     61 #endif  // ASH_SESSION_STATE_DELEGATE_STUB_H_
     62