• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2014 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 COMPONENTS_GCM_DRIVER_FAKE_GCM_DRIVER_H_
6 #define COMPONENTS_GCM_DRIVER_FAKE_GCM_DRIVER_H_
7 
8 #include "base/compiler_specific.h"
9 #include "base/macros.h"
10 #include "components/gcm_driver/gcm_driver.h"
11 
12 namespace gcm {
13 
14 class FakeGCMDriver : public GCMDriver {
15  public:
16   FakeGCMDriver();
17   virtual ~FakeGCMDriver();
18 
19   // GCMDriver overrides:
20   virtual void Shutdown() OVERRIDE;
21   virtual void AddAppHandler(const std::string& app_id,
22                              GCMAppHandler* handler) OVERRIDE;
23   virtual void RemoveAppHandler(const std::string& app_id) OVERRIDE;
24   virtual void OnSignedIn() OVERRIDE;
25   virtual void OnSignedOut() OVERRIDE;
26   virtual void Purge() OVERRIDE;
27   virtual void AddConnectionObserver(GCMConnectionObserver* observer) OVERRIDE;
28   virtual void RemoveConnectionObserver(
29       GCMConnectionObserver* observer) OVERRIDE;
30   virtual void Enable() OVERRIDE;
31   virtual void Disable() OVERRIDE;
32   virtual GCMClient* GetGCMClientForTesting() const OVERRIDE;
33   virtual bool IsStarted() const OVERRIDE;
34   virtual bool IsConnected() const OVERRIDE;
35   virtual void GetGCMStatistics(const GetGCMStatisticsCallback& callback,
36                                 bool clear_logs) OVERRIDE;
37   virtual void SetGCMRecording(const GetGCMStatisticsCallback& callback,
38                                bool recording) OVERRIDE;
39   virtual void UpdateAccountMapping(
40       const AccountMapping& account_mapping) OVERRIDE;
41   virtual void RemoveAccountMapping(const std::string& account_id) OVERRIDE;
42 
43  protected:
44   // GCMDriver implementation:
45   virtual GCMClient::Result EnsureStarted() OVERRIDE;
46   virtual void RegisterImpl(
47       const std::string& app_id,
48       const std::vector<std::string>& sender_ids) OVERRIDE;
49   virtual void UnregisterImpl(const std::string& app_id) OVERRIDE;
50   virtual void SendImpl(const std::string& app_id,
51                         const std::string& receiver_id,
52                         const GCMClient::OutgoingMessage& message) OVERRIDE;
53 
54  private:
55   DISALLOW_COPY_AND_ASSIGN(FakeGCMDriver);
56 };
57 
58 }  // namespace gcm
59 
60 #endif  // COMPONENTS_GCM_DRIVER_FAKE_GCM_DRIVER_H_
61