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

Side by Side Diff: sync/engine/sync_scheduler_unittest.cc

Issue 26594002: Chrome sync: Put WeakPtrFactory members at the end (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: merge (see prior patch for try jobs) Created 7 years, 2 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) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "base/bind.h" 5 #include "base/bind.h"
6 #include "base/callback.h" 6 #include "base/callback.h"
7 #include "base/compiler_specific.h" 7 #include "base/compiler_specific.h"
8 #include "base/memory/weak_ptr.h" 8 #include "base/memory/weak_ptr.h"
9 #include "base/message_loop/message_loop.h" 9 #include "base/message_loop/message_loop.h"
10 #include "base/test/test_timeouts.h" 10 #include "base/test/test_timeouts.h"
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
90 for (ModelTypeSet::Iterator iter = types.First(); iter.Good(); iter.Inc()) { 90 for (ModelTypeSet::Iterator iter = types.First(); iter.Good(); iter.Inc()) {
91 routes[iter.Get()] = GROUP_PASSIVE; 91 routes[iter.Get()] = GROUP_PASSIVE;
92 } 92 }
93 return routes; 93 return routes;
94 } 94 }
95 95
96 // Convenient to use in tests wishing to analyze SyncShare calls over time. 96 // Convenient to use in tests wishing to analyze SyncShare calls over time.
97 static const size_t kMinNumSamples = 5; 97 static const size_t kMinNumSamples = 5;
98 class SyncSchedulerTest : public testing::Test { 98 class SyncSchedulerTest : public testing::Test {
99 public: 99 public:
100 SyncSchedulerTest() : weak_ptr_factory_(this), syncer_(NULL), delay_(NULL) {} 100 SyncSchedulerTest() : syncer_(NULL), delay_(NULL), weak_ptr_factory_(this) {}
101 101
102 class MockDelayProvider : public BackoffDelayProvider { 102 class MockDelayProvider : public BackoffDelayProvider {
103 public: 103 public:
104 MockDelayProvider() : BackoffDelayProvider( 104 MockDelayProvider() : BackoffDelayProvider(
105 TimeDelta::FromSeconds(kInitialBackoffRetrySeconds), 105 TimeDelta::FromSeconds(kInitialBackoffRetrySeconds),
106 TimeDelta::FromSeconds(kInitialBackoffImmediateRetrySeconds)) { 106 TimeDelta::FromSeconds(kInitialBackoffImmediateRetrySeconds)) {
107 } 107 }
108 108
109 MOCK_METHOD1(GetDelay, TimeDelta(const TimeDelta&)); 109 MOCK_METHOD1(GetDelay, TimeDelta(const TimeDelta&));
110 }; 110 };
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
215 ModelTypeSet GetThrottledTypes() { 215 ModelTypeSet GetThrottledTypes() {
216 return scheduler_->nudge_tracker_.GetThrottledTypes(); 216 return scheduler_->nudge_tracker_.GetThrottledTypes();
217 } 217 }
218 218
219 private: 219 private:
220 syncable::Directory* directory() { 220 syncable::Directory* directory() {
221 return dir_maker_.directory(); 221 return dir_maker_.directory();
222 } 222 }
223 223
224 base::MessageLoop loop_; 224 base::MessageLoop loop_;
225 base::WeakPtrFactory<SyncSchedulerTest> weak_ptr_factory_;
226 TestDirectorySetterUpper dir_maker_; 225 TestDirectorySetterUpper dir_maker_;
227 CancelationSignal cancelation_signal_; 226 CancelationSignal cancelation_signal_;
228 scoped_ptr<MockConnectionManager> connection_; 227 scoped_ptr<MockConnectionManager> connection_;
229 scoped_ptr<SyncSessionContext> context_; 228 scoped_ptr<SyncSessionContext> context_;
230 scoped_ptr<SyncSchedulerImpl> scheduler_; 229 scoped_ptr<SyncSchedulerImpl> scheduler_;
231 MockSyncer* syncer_; 230 MockSyncer* syncer_;
232 MockDelayProvider* delay_; 231 MockDelayProvider* delay_;
233 std::vector<scoped_refptr<FakeModelWorker> > workers_; 232 std::vector<scoped_refptr<FakeModelWorker> > workers_;
234 scoped_refptr<ExtensionsActivity> extensions_activity_; 233 scoped_refptr<ExtensionsActivity> extensions_activity_;
235 ModelSafeRoutingInfo routing_info_; 234 ModelSafeRoutingInfo routing_info_;
235 base::WeakPtrFactory<SyncSchedulerTest> weak_ptr_factory_;
236 }; 236 };
237 237
238 void RecordSyncShareImpl(SyncShareTimes* times) { 238 void RecordSyncShareImpl(SyncShareTimes* times) {
239 times->push_back(TimeTicks::Now()); 239 times->push_back(TimeTicks::Now());
240 } 240 }
241 241
242 ACTION_P(RecordSyncShare, times) { 242 ACTION_P(RecordSyncShare, times) {
243 RecordSyncShareImpl(times); 243 RecordSyncShareImpl(times);
244 if (base::MessageLoop::current()->is_running()) 244 if (base::MessageLoop::current()->is_running())
245 QuitLoopNow(); 245 QuitLoopNow();
(...skipping 957 matching lines...) Expand 10 before | Expand all | Expand 10 after
1203 // poll once more 1203 // poll once more
1204 EXPECT_CALL(*syncer(), PollSyncShare(_,_)) 1204 EXPECT_CALL(*syncer(), PollSyncShare(_,_))
1205 .WillOnce(DoAll(Invoke(sessions::test_util::SimulatePollSuccess), 1205 .WillOnce(DoAll(Invoke(sessions::test_util::SimulatePollSuccess),
1206 RecordSyncShare(&times))); 1206 RecordSyncShare(&times)));
1207 scheduler()->OnCredentialsUpdated(); 1207 scheduler()->OnCredentialsUpdated();
1208 connection()->SetServerStatus(HttpResponse::SERVER_CONNECTION_OK); 1208 connection()->SetServerStatus(HttpResponse::SERVER_CONNECTION_OK);
1209 StopSyncScheduler(); 1209 StopSyncScheduler();
1210 } 1210 }
1211 1211
1212 } // namespace syncer 1212 } // namespace syncer
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698