| Index: chrome/browser/gcm/fake_gcm_profile_service.h
|
| diff --git a/chrome/browser/gcm/fake_gcm_profile_service.h b/chrome/browser/gcm/fake_gcm_profile_service.h
|
| index 7b4db7b858f0980e8677105a82af3be567708404..2a5ab46a17c23b6f29a236ca95c380a954292c71 100644
|
| --- a/chrome/browser/gcm/fake_gcm_profile_service.h
|
| +++ b/chrome/browser/gcm/fake_gcm_profile_service.h
|
| @@ -10,7 +10,8 @@
|
| #include <vector>
|
|
|
| #include "base/macros.h"
|
| -#include "components/gcm_driver/gcm_driver.h"
|
| +#include "components/gcm_driver/common/gcm_messages.h"
|
| +#include "components/gcm_driver/gcm_client.h"
|
| #include "components/gcm_driver/gcm_profile_service.h"
|
|
|
| class Profile;
|
| @@ -24,8 +25,6 @@ namespace gcm {
|
| // Acts as a bridge between GCM API and GCMClient layer for testing purposes.
|
| class FakeGCMProfileService : public GCMProfileService {
|
| public:
|
| - typedef base::Callback<void(const std::string&)> UnregisterCallback;
|
| -
|
| // Helper function to be used with
|
| // KeyedService::SetTestingFactory().
|
| static std::unique_ptr<KeyedService> Build(content::BrowserContext* context);
|
| @@ -33,17 +32,8 @@ class FakeGCMProfileService : public GCMProfileService {
|
| explicit FakeGCMProfileService(Profile* profile);
|
| ~FakeGCMProfileService() override;
|
|
|
| - void RegisterFinished(const std::string& app_id,
|
| - const std::vector<std::string>& sender_ids);
|
| - void UnregisterFinished(const std::string& app_id);
|
| - void SendFinished(const std::string& app_id,
|
| - const std::string& receiver_id,
|
| - const OutgoingMessage& message);
|
| -
|
| void AddExpectedUnregisterResponse(GCMClient::Result result);
|
|
|
| - void SetUnregisterCallback(const UnregisterCallback& callback);
|
| -
|
| void DispatchMessage(const std::string& app_id,
|
| const IncomingMessage& message);
|
|
|
| @@ -63,23 +53,26 @@ class FakeGCMProfileService : public GCMProfileService {
|
| return last_registered_sender_ids_;
|
| }
|
|
|
| - void set_collect(bool collect) {
|
| - collect_ = collect;
|
| - }
|
| + // Set whether the service will collect parameters of the calls for further
|
| + // verification in tests.
|
| + void set_collect(bool collect) { collect_ = collect; }
|
| +
|
| + // Crude offline simulation: requests fail and never run their callbacks (in
|
| + // reality, callbacks run within GetGCMBackoffPolicy().maximum_backoff_ms).
|
| + void set_offline(bool is_offline) { is_offline_ = is_offline; }
|
|
|
| private:
|
| - // Indicates whether the service will collect paramters of the calls for
|
| - // furter verification in tests.
|
| - bool collect_;
|
| - // Used to give each registration a unique registration id. Does not decrease
|
| - // when unregister is called.
|
| - int registration_count_;
|
| + class CustomFakeGCMDriver;
|
| + friend class CustomFakeGCMDriver;
|
| +
|
| + bool collect_ = false;
|
| + bool is_offline_ = false;
|
| +
|
| std::string last_registered_app_id_;
|
| std::vector<std::string> last_registered_sender_ids_;
|
| std::list<GCMClient::Result> unregister_responses_;
|
| OutgoingMessage last_sent_message_;
|
| std::string last_receiver_id_;
|
| - UnregisterCallback unregister_callback_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(FakeGCMProfileService);
|
| };
|
|
|