| Index: components/invalidation/gcm_network_channel_unittest.cc
|
| diff --git a/components/invalidation/gcm_network_channel_unittest.cc b/components/invalidation/gcm_network_channel_unittest.cc
|
| index 29cab076baa89398623b6e79ca364c7a39c7c619..be61ba98a1ef4d322d55c408acd0e30f7c360bdd 100644
|
| --- a/components/invalidation/gcm_network_channel_unittest.cc
|
| +++ b/components/invalidation/gcm_network_channel_unittest.cc
|
| @@ -17,7 +17,10 @@ class TestGCMNetworkChannelDelegate : public GCMNetworkChannelDelegate {
|
| TestGCMNetworkChannelDelegate()
|
| : register_call_count_(0) {}
|
|
|
| - virtual void Initialize() OVERRIDE {}
|
| + virtual void Initialize(
|
| + GCMNetworkChannelDelegate::ConnectionStateCallback callback) OVERRIDE {
|
| + connection_state_callback = callback;
|
| + }
|
|
|
| virtual void RequestToken(RequestTokenCallback callback) OVERRIDE {
|
| request_token_callback = callback;
|
| @@ -41,6 +44,7 @@ class TestGCMNetworkChannelDelegate : public GCMNetworkChannelDelegate {
|
| RegisterCallback register_callback;
|
| int register_call_count_;
|
| MessageCallback message_callback;
|
| + ConnectionStateCallback connection_state_callback;
|
| };
|
|
|
| // Backoff policy for test. Run first 5 retries without delay.
|
| @@ -406,7 +410,7 @@ TEST_F(GCMNetworkChannelTest, Base64EncodeDecode) {
|
| EXPECT_EQ(input, plain);
|
| }
|
|
|
| -TEST_F(GCMNetworkChannelTest, TransientError) {
|
| +TEST_F(GCMNetworkChannelTest, HttpTransientError) {
|
| EXPECT_FALSE(delegate()->message_callback.is_null());
|
| // POST will fail.
|
| url_fetcher_factory()->SetFakeResponse(GURL("http://test.url.com"),
|
| @@ -437,6 +441,15 @@ TEST_F(GCMNetworkChannelTest, TransientError) {
|
| EXPECT_EQ(INVALIDATIONS_ENABLED, get_last_invalidator_state());
|
| }
|
|
|
| +TEST_F(GCMNetworkChannelTest, GcmConnectionState) {
|
| + delegate()->connection_state_callback.Run(
|
| + GCMNetworkChannelDelegate::CONNECTION_STATE_OFFLINE);
|
| + EXPECT_EQ(TRANSIENT_INVALIDATION_ERROR, get_last_invalidator_state());
|
| + delegate()->connection_state_callback.Run(
|
| + GCMNetworkChannelDelegate::CONNECTION_STATE_ONLINE);
|
| + EXPECT_EQ(INVALIDATIONS_ENABLED, get_last_invalidator_state());
|
| +}
|
| +
|
| #if !defined(OS_ANDROID)
|
| TEST_F(GCMNetworkChannelTest, BuildUrl) {
|
| GURL url = BuildUrl("registration.id");
|
|
|