diff options
author | dcheng@chromium.org <dcheng@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-07-26 02:37:47 +0000 |
---|---|---|
committer | dcheng@chromium.org <dcheng@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-07-26 02:37:47 +0000 |
commit | 21297d623b2b000eef97002981bab4843f37b792 (patch) | |
tree | 438ba9c48193696e04728a203390404c824913bc /sync/notifier/invalidation_notifier_unittest.cc | |
parent | 67d87a8e6a96ec2d5515128d1ed957de6937ba4b (diff) | |
download | chromium_src-21297d623b2b000eef97002981bab4843f37b792.zip chromium_src-21297d623b2b000eef97002981bab4843f37b792.tar.gz chromium_src-21297d623b2b000eef97002981bab4843f37b792.tar.bz2 |
Refactor sync-specific parts out of SyncNotifier/SyncNotifierObserver
Sort of. SendNotification() is still there. Perhaps we want to split the interfaces completely.
BUG=124149
TEST=tests should still pass, no observable behavior change
NOTRY=true
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=147801
Review URL: https://chromiumcodereview.appspot.com/10702074
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@148496 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'sync/notifier/invalidation_notifier_unittest.cc')
-rw-r--r-- | sync/notifier/invalidation_notifier_unittest.cc | 28 |
1 files changed, 11 insertions, 17 deletions
diff --git a/sync/notifier/invalidation_notifier_unittest.cc b/sync/notifier/invalidation_notifier_unittest.cc index b0b64c7..4a07678 100644 --- a/sync/notifier/invalidation_notifier_unittest.cc +++ b/sync/notifier/invalidation_notifier_unittest.cc @@ -50,11 +50,10 @@ class InvalidationNotifierTest : public testing::Test { initial_invalidation_state, MakeWeakHandle(mock_tracker_.AsWeakPtr()), "fake_client_info")); - invalidation_notifier_->AddObserver(&mock_observer_); } void ResetNotifier() { - invalidation_notifier_->RemoveObserver(&mock_observer_); + invalidation_notifier_->UpdateRegisteredIds(&mock_observer_, ObjectIdSet()); // Stopping the invalidation notifier stops its scheduler, which deletes any // pending tasks without running them. Some tasks "run and delete" another // task, so they must be run in order to avoid leaking the inner task. @@ -75,15 +74,16 @@ TEST_F(InvalidationNotifierTest, Basic) { CreateAndObserveNotifier("fake_state"); InSequence dummy; - ModelTypePayloadMap type_payloads; - type_payloads[PREFERENCES] = "payload"; - type_payloads[BOOKMARKS] = "payload"; - type_payloads[AUTOFILL] = "payload"; + ModelTypeSet models(PREFERENCES, BOOKMARKS, AUTOFILL); + invalidation_notifier_->UpdateRegisteredIds( + &mock_observer_, ModelTypeSetToObjectIdSet(models)); + const ModelTypePayloadMap& type_payloads = + ModelTypePayloadMapFromEnumSet(models, "payload"); EXPECT_CALL(mock_observer_, OnNotificationsEnabled()); - EXPECT_CALL(mock_observer_, - OnIncomingNotification(type_payloads, - REMOTE_NOTIFICATION)); + EXPECT_CALL(mock_observer_, OnIncomingNotification( + ModelTypePayloadMapToObjectIdPayloadMap(type_payloads), + REMOTE_NOTIFICATION)); EXPECT_CALL(mock_observer_, OnNotificationsDisabled(TRANSIENT_NOTIFICATION_ERROR)); EXPECT_CALL(mock_observer_, @@ -99,14 +99,8 @@ TEST_F(InvalidationNotifierTest, Basic) { invalidation_notifier_->OnNotificationsEnabled(); - ObjectIdPayloadMap id_payloads; - for (ModelTypePayloadMap::const_iterator it = type_payloads.begin(); - it != type_payloads.end(); ++it) { - invalidation::ObjectId id; - ASSERT_TRUE(RealModelTypeToObjectId(it->first, &id)); - id_payloads[id] = "payload"; - } - invalidation_notifier_->OnInvalidate(id_payloads); + invalidation_notifier_->OnInvalidate( + ModelTypePayloadMapToObjectIdPayloadMap(type_payloads)); invalidation_notifier_->OnNotificationsDisabled( TRANSIENT_NOTIFICATION_ERROR); |