OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 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 #ifndef COMPONENTS_GCM_DRIVER_FAKE_GCM_APP_HANDLER_H_ | 5 #ifndef COMPONENTS_GCM_DRIVER_FAKE_GCM_APP_HANDLER_H_ |
6 #define COMPONENTS_GCM_DRIVER_FAKE_GCM_APP_HANDLER_H_ | 6 #define COMPONENTS_GCM_DRIVER_FAKE_GCM_APP_HANDLER_H_ |
7 | 7 |
8 #include "base/compiler_specific.h" | 8 #include "base/compiler_specific.h" |
9 #include "base/memory/scoped_ptr.h" | 9 #include "base/memory/scoped_ptr.h" |
10 #include "components/gcm_driver/gcm_app_handler.h" | 10 #include "components/gcm_driver/gcm_app_handler.h" |
11 | 11 |
12 namespace base { | 12 namespace base { |
13 class RunLoop; | 13 class RunLoop; |
14 } | 14 } |
15 | 15 |
16 namespace gcm { | 16 namespace gcm { |
17 | 17 |
18 class FakeGCMAppHandler : public GCMAppHandler { | 18 class FakeGCMAppHandler : public GCMAppHandler { |
19 public: | 19 public: |
20 enum Event { | 20 enum Event { |
21 NO_EVENT, | 21 NO_EVENT, |
22 MESSAGE_EVENT, | 22 MESSAGE_EVENT, |
23 MESSAGES_DELETED_EVENT, | 23 MESSAGES_DELETED_EVENT, |
24 SEND_ERROR_EVENT | 24 SEND_ERROR_EVENT |
25 }; | 25 }; |
26 | 26 |
27 FakeGCMAppHandler(); | 27 FakeGCMAppHandler(); |
28 virtual ~FakeGCMAppHandler(); | 28 ~FakeGCMAppHandler() override; |
29 | 29 |
30 const Event& received_event() const { return received_event_; } | 30 const Event& received_event() const { return received_event_; } |
31 const std::string& app_id() const { return app_id_; } | 31 const std::string& app_id() const { return app_id_; } |
32 const std::string& acked_message_id() const { return acked_message_id_; } | 32 const std::string& acked_message_id() const { return acked_message_id_; } |
33 const GCMClient::IncomingMessage& message() const { return message_; } | 33 const GCMClient::IncomingMessage& message() const { return message_; } |
34 const GCMClient::SendErrorDetails& send_error_details() const { | 34 const GCMClient::SendErrorDetails& send_error_details() const { |
35 return send_error_details_; | 35 return send_error_details_; |
36 } | 36 } |
37 | 37 |
38 void WaitForNotification(); | 38 void WaitForNotification(); |
39 | 39 |
40 // GCMAppHandler implementation. | 40 // GCMAppHandler implementation. |
41 virtual void ShutdownHandler() override; | 41 void ShutdownHandler() override; |
42 virtual void OnMessage(const std::string& app_id, | 42 void OnMessage(const std::string& app_id, |
43 const GCMClient::IncomingMessage& message) override; | 43 const GCMClient::IncomingMessage& message) override; |
44 virtual void OnMessagesDeleted(const std::string& app_id) override; | 44 void OnMessagesDeleted(const std::string& app_id) override; |
45 virtual void OnSendError( | 45 void OnSendError( |
46 const std::string& app_id, | 46 const std::string& app_id, |
47 const GCMClient::SendErrorDetails& send_error_details) override; | 47 const GCMClient::SendErrorDetails& send_error_details) override; |
48 virtual void OnSendAcknowledged(const std::string& app_id, | 48 void OnSendAcknowledged(const std::string& app_id, |
49 const std::string& message_id) override; | 49 const std::string& message_id) override; |
50 | 50 |
51 private: | 51 private: |
52 void ClearResults(); | 52 void ClearResults(); |
53 | 53 |
54 scoped_ptr<base::RunLoop> run_loop_; | 54 scoped_ptr<base::RunLoop> run_loop_; |
55 | 55 |
56 Event received_event_; | 56 Event received_event_; |
57 std::string app_id_; | 57 std::string app_id_; |
58 std::string acked_message_id_; | 58 std::string acked_message_id_; |
59 GCMClient::IncomingMessage message_; | 59 GCMClient::IncomingMessage message_; |
60 GCMClient::SendErrorDetails send_error_details_; | 60 GCMClient::SendErrorDetails send_error_details_; |
61 | 61 |
62 DISALLOW_COPY_AND_ASSIGN(FakeGCMAppHandler); | 62 DISALLOW_COPY_AND_ASSIGN(FakeGCMAppHandler); |
63 }; | 63 }; |
64 | 64 |
65 } // namespace gcm | 65 } // namespace gcm |
66 | 66 |
67 #endif // COMPONENTS_GCM_DRIVER_FAKE_GCM_APP_HANDLER_H_ | 67 #endif // COMPONENTS_GCM_DRIVER_FAKE_GCM_APP_HANDLER_H_ |
OLD | NEW |