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

Side by Side Diff: chrome/browser/invalidation/invalidation_service_android_unittest.cc

Issue 327243003: Introduce ProfileInvalidationProvider wrapper for InvalidationService (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix clang compilation. Created 6 years, 6 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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 #include "chrome/browser/invalidation/invalidation_service_android.h" 5 #include "chrome/browser/invalidation/invalidation_service_android.h"
6 6
7 #include "chrome/browser/chrome_notification_types.h" 7 #include "chrome/browser/chrome_notification_types.h"
8 #include "chrome/browser/invalidation/invalidation_controller_android.h" 8 #include "chrome/browser/invalidation/invalidation_controller_android.h"
9 #include "chrome/browser/invalidation/invalidation_service_factory.h"
10 #include "chrome/browser/invalidation/invalidation_service_test_template.h" 9 #include "chrome/browser/invalidation/invalidation_service_test_template.h"
11 #include "chrome/test/base/testing_profile.h" 10 #include "chrome/test/base/testing_profile.h"
12 #include "components/invalidation/fake_invalidation_handler.h" 11 #include "components/invalidation/fake_invalidation_handler.h"
13 #include "content/public/browser/notification_service.h" 12 #include "content/public/browser/notification_service.h"
14 #include "testing/gtest/include/gtest/gtest.h" 13 #include "testing/gtest/include/gtest/gtest.h"
15 14
16 namespace invalidation { 15 namespace invalidation {
17 16
18 class MockInvalidationControllerAndroid : public InvalidationControllerAndroid { 17 class MockInvalidationControllerAndroid : public InvalidationControllerAndroid {
19 public: 18 public:
20 MockInvalidationControllerAndroid() {} 19 MockInvalidationControllerAndroid() {}
21 virtual ~MockInvalidationControllerAndroid() {} 20 virtual ~MockInvalidationControllerAndroid() {}
22 21
23 virtual void SetRegisteredObjectIds(const syncer::ObjectIdSet& ids) OVERRIDE { 22 virtual void SetRegisteredObjectIds(const syncer::ObjectIdSet& ids) OVERRIDE {
24 registered_ids_ = ids; 23 registered_ids_ = ids;
25 } 24 }
26 25
27 syncer::ObjectIdSet registered_ids_; 26 syncer::ObjectIdSet registered_ids_;
28 }; 27 };
29 28
30 class InvalidationServiceAndroidTestDelegate { 29 class InvalidationServiceAndroidTestDelegate {
31 public: 30 public:
32 InvalidationServiceAndroidTestDelegate() { } 31 InvalidationServiceAndroidTestDelegate() {}
33 32
34 ~InvalidationServiceAndroidTestDelegate() { 33 ~InvalidationServiceAndroidTestDelegate() {}
35 DestroyInvalidationService();
36 }
37 34
38 void CreateInvalidationService() { 35 void CreateInvalidationService() {
39 profile_.reset(new TestingProfile()); 36 profile_.reset(new TestingProfile());
40 invalidation_service_android_.reset( 37 invalidation_service_android_.reset(
41 new InvalidationServiceAndroid( 38 new InvalidationServiceAndroid(
42 profile_.get(), 39 profile_.get(),
43 new MockInvalidationControllerAndroid())); 40 new MockInvalidationControllerAndroid()));
44 } 41 }
45 42
46 InvalidationService* GetInvalidationService() { 43 InvalidationService* GetInvalidationService() {
47 return invalidation_service_android_.get(); 44 return invalidation_service_android_.get();
48 } 45 }
49 46
50 void DestroyInvalidationService() { 47 void DestroyInvalidationService() {
51 invalidation_service_android_->Shutdown(); 48 invalidation_service_android_.reset();
52 } 49 }
53 50
54 void TriggerOnInvalidatorStateChange(syncer::InvalidatorState state) { 51 void TriggerOnInvalidatorStateChange(syncer::InvalidatorState state) {
55 invalidation_service_android_->TriggerStateChangeForTest(state); 52 invalidation_service_android_->TriggerStateChangeForTest(state);
56 } 53 }
57 54
58 void TriggerOnIncomingInvalidation( 55 void TriggerOnIncomingInvalidation(
59 const syncer::ObjectIdInvalidationMap& invalidation_map) { 56 const syncer::ObjectIdInvalidationMap& invalidation_map) {
60 content::NotificationService::current()->Notify( 57 content::NotificationService::current()->Notify(
61 chrome::NOTIFICATION_SYNC_REFRESH_REMOTE, 58 chrome::NOTIFICATION_SYNC_REFRESH_REMOTE,
62 content::Source<Profile>(profile_.get()), 59 content::Source<Profile>(profile_.get()),
63 content::Details<const syncer::ObjectIdInvalidationMap>( 60 content::Details<const syncer::ObjectIdInvalidationMap>(
64 &invalidation_map)); 61 &invalidation_map));
65 } 62 }
66 63
67 scoped_ptr<TestingProfile> profile_; 64 scoped_ptr<TestingProfile> profile_;
68 scoped_ptr<InvalidationServiceAndroid> invalidation_service_android_; 65 scoped_ptr<InvalidationServiceAndroid> invalidation_service_android_;
69 }; 66 };
70 67
71 INSTANTIATE_TYPED_TEST_CASE_P( 68 INSTANTIATE_TYPED_TEST_CASE_P(
72 AndroidInvalidationServiceTest, InvalidationServiceTest, 69 AndroidInvalidationServiceTest, InvalidationServiceTest,
73 InvalidationServiceAndroidTestDelegate); 70 InvalidationServiceAndroidTestDelegate);
74 71
75 class InvalidationServiceAndroidRegistrationTest : public testing::Test { 72 class InvalidationServiceAndroidRegistrationTest : public testing::Test {
76 protected: 73 protected:
77 InvalidationServiceAndroidRegistrationTest() 74 InvalidationServiceAndroidRegistrationTest()
78 : invalidation_controller_(new MockInvalidationControllerAndroid()), 75 : invalidation_controller_(new MockInvalidationControllerAndroid()),
79 invalidation_service_(&profile_, invalidation_controller_) {} 76 invalidation_service_(&profile_, invalidation_controller_) {}
80 77
81 virtual ~InvalidationServiceAndroidRegistrationTest() { 78 virtual ~InvalidationServiceAndroidRegistrationTest() {}
82 invalidation_service_.Shutdown();
83 }
84 79
85 // Get the invalidation service being tested. 80 // Get the invalidation service being tested.
86 InvalidationService& invalidation_service() { 81 InvalidationService& invalidation_service() {
87 return invalidation_service_; 82 return invalidation_service_;
88 } 83 }
89 84
90 // Get the number of objects which are registered. 85 // Get the number of objects which are registered.
91 size_t RegisteredObjectCount() { 86 size_t RegisteredObjectCount() {
92 return registered_ids().size(); 87 return registered_ids().size();
93 } 88 }
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after
167 ASSERT_FALSE(id1.empty()); 162 ASSERT_FALSE(id1.empty());
168 163
169 // If nothing else, the ID should be consistent. 164 // If nothing else, the ID should be consistent.
170 const std::string id2 = invalidation_service().GetInvalidatorClientId(); 165 const std::string id2 = invalidation_service().GetInvalidatorClientId();
171 ASSERT_EQ(id1, id2); 166 ASSERT_EQ(id1, id2);
172 } 167 }
173 168
174 #endif 169 #endif
175 170
176 } // namespace invalidation 171 } // namespace invalidation
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698