Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(326)

Unified Diff: sync/notifier/invalidation_notifier_unittest.cc

Issue 10827133: [Sync] Rework unit tests for ChromeInvalidationClient (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: sync to head Created 8 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « sync/notifier/invalidation_notifier.cc ('k') | sync/notifier/mock_invalidation_state_tracker.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: sync/notifier/invalidation_notifier_unittest.cc
diff --git a/sync/notifier/invalidation_notifier_unittest.cc b/sync/notifier/invalidation_notifier_unittest.cc
index 4a076789b5501237b9b4c63c19a405ea45de2ffe..ded6bab0d838f994fb880e70f0ba309021c96537 100644
--- a/sync/notifier/invalidation_notifier_unittest.cc
+++ b/sync/notifier/invalidation_notifier_unittest.cc
@@ -13,8 +13,8 @@
#include "sync/internal_api/public/base/model_type.h"
#include "sync/internal_api/public/base/model_type_payload_map.h"
#include "sync/internal_api/public/util/weak_handle.h"
+#include "sync/notifier/fake_invalidation_state_tracker.h"
#include "sync/notifier/invalidation_state_tracker.h"
-#include "sync/notifier/mock_invalidation_state_tracker.h"
#include "sync/notifier/mock_sync_notifier_observer.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
@@ -48,7 +48,7 @@ class InvalidationNotifierTest : public testing::Test {
scoped_ptr<notifier::PushClient>(new notifier::FakePushClient()),
InvalidationVersionMap(),
initial_invalidation_state,
- MakeWeakHandle(mock_tracker_.AsWeakPtr()),
+ MakeWeakHandle(fake_tracker_.AsWeakPtr()),
"fake_client_info"));
}
@@ -63,11 +63,19 @@ class InvalidationNotifierTest : public testing::Test {
invalidation_notifier_.reset();
}
+ void SetStateDeprecated(const std::string& new_state) {
+ invalidation_notifier_->SetStateDeprecated(new_state);
+ message_loop_.RunAllPending();
+ }
+
+ private:
MessageLoopForIO message_loop_;
+ notifier::FakeBaseTask fake_base_task_;
+
+ protected:
scoped_ptr<InvalidationNotifier> invalidation_notifier_;
- StrictMock<MockInvalidationStateTracker> mock_tracker_;
+ FakeInvalidationStateTracker fake_tracker_;
StrictMock<MockSyncNotifierObserver> mock_observer_;
- notifier::FakeBaseTask fake_base_task_;
};
TEST_F(InvalidationNotifierTest, Basic) {
@@ -88,12 +96,13 @@ TEST_F(InvalidationNotifierTest, Basic) {
OnNotificationsDisabled(TRANSIENT_NOTIFICATION_ERROR));
EXPECT_CALL(mock_observer_,
OnNotificationsDisabled(NOTIFICATION_CREDENTIALS_REJECTED));
- // Note no expectation on mock_tracker_, as we initialized with
- // non-empty initial_invalidation_state above.
// TODO(tim): This call should be a no-op, Remove once bug 124140 and
// associated issues are fixed.
invalidation_notifier_->SetStateDeprecated("fake_state");
+ // We don't expect |fake_tracker_|'s state to change, as we
+ // initialized with non-empty initial_invalidation_state above.
+ EXPECT_TRUE(fake_tracker_.GetInvalidationState().empty());
invalidation_notifier_->SetUniqueId("fake_id");
invalidation_notifier_->UpdateCredentials("foo@bar.com", "fake_token");
@@ -110,20 +119,21 @@ TEST_F(InvalidationNotifierTest, Basic) {
TEST_F(InvalidationNotifierTest, MigrateState) {
CreateAndObserveNotifier(std::string());
- InSequence dummy;
- EXPECT_CALL(mock_tracker_, SetInvalidationState("fake_state"));
- invalidation_notifier_->SetStateDeprecated("fake_state");
+ SetStateDeprecated("fake_state");
+ EXPECT_EQ("fake_state", fake_tracker_.GetInvalidationState());
// Should do nothing.
- invalidation_notifier_->SetStateDeprecated("spurious_fake_state");
+ SetStateDeprecated("spurious_fake_state");
+ EXPECT_EQ("fake_state", fake_tracker_.GetInvalidationState());
// Pretend Chrome shut down.
ResetNotifier();
CreateAndObserveNotifier("fake_state");
// Should do nothing.
- invalidation_notifier_->SetStateDeprecated("more_spurious_fake_state");
+ SetStateDeprecated("more_spurious_fake_state");
+ EXPECT_EQ("fake_state", fake_tracker_.GetInvalidationState());
}
} // namespace
« no previous file with comments | « sync/notifier/invalidation_notifier.cc ('k') | sync/notifier/mock_invalidation_state_tracker.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698