Home | History | Annotate | Download | only in login
      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
      3 // found in the LICENSE file.
      4 
      5 #ifndef CHROME_BROWSER_CHROMEOS_LOGIN_MOCK_LOGIN_STATUS_CONSUMER_H_
      6 #define CHROME_BROWSER_CHROMEOS_LOGIN_MOCK_LOGIN_STATUS_CONSUMER_H_
      7 
      8 #include "chrome/browser/chromeos/login/login_status_consumer.h"
      9 #include "chrome/browser/chromeos/login/user.h"
     10 #include "testing/gmock/include/gmock/gmock.h"
     11 
     12 namespace chromeos {
     13 
     14 class MockConsumer : public LoginStatusConsumer {
     15  public:
     16   MockConsumer();
     17   virtual ~MockConsumer();
     18 
     19   MOCK_METHOD1(OnLoginFailure, void(const LoginFailure& error));
     20   MOCK_METHOD1(OnRetailModeLoginSuccess, void(
     21       const UserContext& user_context));
     22   MOCK_METHOD3(OnLoginSuccess, void(
     23       const UserContext& user_context,
     24       bool pending_requests,
     25       bool using_oauth));
     26   MOCK_METHOD0(OnOffTheRecordLoginSuccess, void(void));
     27   MOCK_METHOD0(OnPasswordChangeDetected, void(void));
     28 
     29   // The following functions can be used in gmock Invoke() clauses.
     30 
     31   // Compatible with LoginStatusConsumer::OnRetailModeLoginSuccess()
     32   static void OnRetailModeSuccessQuit(const UserContext& user_context);
     33   static void OnRetailModeSuccessQuitAndFail(
     34       const UserContext& user_context);
     35 
     36   // Compatible with LoginStatusConsumer::OnOffTheRecordLoginSuccess()
     37   static void OnGuestSuccessQuit();
     38   static void OnGuestSuccessQuitAndFail();
     39 
     40   // Compatible with LoginStatusConsumer::OnLoginSuccess()
     41   static void OnSuccessQuit(
     42       const UserContext& user_context,
     43       bool pending_requests,
     44       bool using_oauth);
     45   static void OnSuccessQuitAndFail(
     46       const UserContext& user_context,
     47       bool pending_requests,
     48       bool using_oauth);
     49 
     50   // Compatible with LoginStatusConsumer::OnLoginFailure()
     51   static void OnFailQuit(const LoginFailure& error);
     52   static void OnFailQuitAndFail(const LoginFailure& error);
     53 
     54   // Compatible with LoginStatusConsumer::OnPasswordChangeDetected()
     55   static void OnMigrateQuit();
     56   static void OnMigrateQuitAndFail();
     57 };
     58 
     59 }  // namespace chromeos
     60 
     61 #endif  // CHROME_BROWSER_CHROMEOS_LOGIN_MOCK_LOGIN_STATUS_CONSUMER_H_
     62