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

Side by Side Diff: sync/sessions/sync_session_unittest.cc

Issue 10696087: [Sync] Move ModelType and related classes to 'syncer' namespace (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: sort headers, update copyrights Created 8 years, 5 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
« no previous file with comments | « sync/sessions/sync_session.cc ('k') | sync/syncable/directory.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 "sync/sessions/sync_session.h" 5 #include "sync/sessions/sync_session.h"
6 6
7 #include "base/compiler_specific.h" 7 #include "base/compiler_specific.h"
8 #include "base/location.h" 8 #include "base/location.h"
9 #include "base/memory/ref_counted.h" 9 #include "base/memory/ref_counted.h"
10 #include "base/message_loop.h" 10 #include "base/message_loop.h"
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 46
47 GetModelSafeRoutingInfo(&routing_info); 47 GetModelSafeRoutingInfo(&routing_info);
48 GetWorkers(&workers); 48 GetWorkers(&workers);
49 49
50 context_.reset( 50 context_.reset(
51 new SyncSessionContext( 51 new SyncSessionContext(
52 NULL, NULL, routing_info, workers, &extensions_activity_monitor_, 52 NULL, NULL, routing_info, workers, &extensions_activity_monitor_,
53 throttled_data_type_tracker_.get(), 53 throttled_data_type_tracker_.get(),
54 std::vector<SyncEngineEventListener*>(), NULL, NULL)); 54 std::vector<SyncEngineEventListener*>(), NULL, NULL));
55 routes_.clear(); 55 routes_.clear();
56 routes_[syncable::BOOKMARKS] = GROUP_UI; 56 routes_[syncer::BOOKMARKS] = GROUP_UI;
57 routes_[syncable::AUTOFILL] = GROUP_DB; 57 routes_[syncer::AUTOFILL] = GROUP_DB;
58 scoped_refptr<ModelSafeWorker> passive_worker( 58 scoped_refptr<ModelSafeWorker> passive_worker(
59 new FakeModelWorker(GROUP_PASSIVE)); 59 new FakeModelWorker(GROUP_PASSIVE));
60 scoped_refptr<ModelSafeWorker> ui_worker( 60 scoped_refptr<ModelSafeWorker> ui_worker(
61 new FakeModelWorker(GROUP_UI)); 61 new FakeModelWorker(GROUP_UI));
62 scoped_refptr<ModelSafeWorker> db_worker( 62 scoped_refptr<ModelSafeWorker> db_worker(
63 new FakeModelWorker(GROUP_DB)); 63 new FakeModelWorker(GROUP_DB));
64 workers_.clear(); 64 workers_.clear();
65 workers_.push_back(passive_worker); 65 workers_.push_back(passive_worker);
66 workers_.push_back(ui_worker); 66 workers_.push_back(ui_worker);
67 workers_.push_back(db_worker); 67 workers_.push_back(db_worker);
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
111 *out = routes_; 111 *out = routes_;
112 } 112 }
113 113
114 StatusController* status() { return session_->mutable_status_controller(); } 114 StatusController* status() { return session_->mutable_status_controller(); }
115 protected: 115 protected:
116 void FailControllerInvocationIfDisabled(const std::string& msg) { 116 void FailControllerInvocationIfDisabled(const std::string& msg) {
117 if (!controller_invocations_allowed_) 117 if (!controller_invocations_allowed_)
118 FAIL() << msg; 118 FAIL() << msg;
119 } 119 }
120 120
121 syncable::ModelTypeSet ParamsMeaningAllEnabledTypes() { 121 syncer::ModelTypeSet ParamsMeaningAllEnabledTypes() {
122 syncable::ModelTypeSet request_params( 122 syncer::ModelTypeSet request_params(syncer::BOOKMARKS, syncer::AUTOFILL);
123 syncable::BOOKMARKS, syncable::AUTOFILL);
124 return request_params; 123 return request_params;
125 } 124 }
126 125
127 syncable::ModelTypeSet ParamsMeaningJustOneEnabledType() { 126 syncer::ModelTypeSet ParamsMeaningJustOneEnabledType() {
128 return syncable::ModelTypeSet(syncable::AUTOFILL); 127 return syncer::ModelTypeSet(syncer::AUTOFILL);
129 } 128 }
130 129
131 MessageLoop message_loop_; 130 MessageLoop message_loop_;
132 bool controller_invocations_allowed_; 131 bool controller_invocations_allowed_;
133 scoped_ptr<SyncSession> session_; 132 scoped_ptr<SyncSession> session_;
134 scoped_ptr<SyncSessionContext> context_; 133 scoped_ptr<SyncSessionContext> context_;
135 std::vector<scoped_refptr<ModelSafeWorker> > workers_; 134 std::vector<scoped_refptr<ModelSafeWorker> > workers_;
136 ModelSafeRoutingInfo routes_; 135 ModelSafeRoutingInfo routes_;
137 FakeExtensionsActivityMonitor extensions_activity_monitor_; 136 FakeExtensionsActivityMonitor extensions_activity_monitor_;
138 scoped_ptr<ThrottledDataTypeTracker> throttled_data_type_tracker_; 137 scoped_ptr<ThrottledDataTypeTracker> throttled_data_type_tracker_;
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
260 session_->PrepareForAnotherSyncCycle(); 259 session_->PrepareForAnotherSyncCycle();
261 EXPECT_EQ(sync_pb::GetUpdatesCallerInfo::SYNC_CYCLE_CONTINUATION, 260 EXPECT_EQ(sync_pb::GetUpdatesCallerInfo::SYNC_CYCLE_CONTINUATION,
262 session_->source().updates_source); 261 session_->source().updates_source);
263 EXPECT_FALSE(status()->conflicts_resolved()); 262 EXPECT_FALSE(status()->conflicts_resolved());
264 EXPECT_FALSE(session_->HasMoreToSync()); 263 EXPECT_FALSE(session_->HasMoreToSync());
265 } 264 }
266 265
267 TEST_F(SyncSessionTest, Coalesce) { 266 TEST_F(SyncSessionTest, Coalesce) {
268 std::vector<ModelSafeWorker*> workers_one, workers_two; 267 std::vector<ModelSafeWorker*> workers_one, workers_two;
269 ModelSafeRoutingInfo routes_one, routes_two; 268 ModelSafeRoutingInfo routes_one, routes_two;
270 syncable::ModelTypePayloadMap one_type = 269 syncer::ModelTypePayloadMap one_type =
271 syncable::ModelTypePayloadMapFromEnumSet( 270 syncer::ModelTypePayloadMapFromEnumSet(
272 ParamsMeaningJustOneEnabledType(), 271 ParamsMeaningJustOneEnabledType(),
273 std::string()); 272 std::string());
274 syncable::ModelTypePayloadMap all_types = 273 syncer::ModelTypePayloadMap all_types =
275 syncable::ModelTypePayloadMapFromEnumSet( 274 syncer::ModelTypePayloadMapFromEnumSet(
276 ParamsMeaningAllEnabledTypes(), 275 ParamsMeaningAllEnabledTypes(),
277 std::string()); 276 std::string());
278 SyncSourceInfo source_one(sync_pb::GetUpdatesCallerInfo::PERIODIC, one_type); 277 SyncSourceInfo source_one(sync_pb::GetUpdatesCallerInfo::PERIODIC, one_type);
279 SyncSourceInfo source_two(sync_pb::GetUpdatesCallerInfo::LOCAL, all_types); 278 SyncSourceInfo source_two(sync_pb::GetUpdatesCallerInfo::LOCAL, all_types);
280 279
281 scoped_refptr<ModelSafeWorker> passive_worker( 280 scoped_refptr<ModelSafeWorker> passive_worker(
282 new FakeModelWorker(GROUP_PASSIVE)); 281 new FakeModelWorker(GROUP_PASSIVE));
283 scoped_refptr<ModelSafeWorker> db_worker(new FakeModelWorker(GROUP_DB)); 282 scoped_refptr<ModelSafeWorker> db_worker(new FakeModelWorker(GROUP_DB));
284 scoped_refptr<ModelSafeWorker> ui_worker(new FakeModelWorker(GROUP_UI)); 283 scoped_refptr<ModelSafeWorker> ui_worker(new FakeModelWorker(GROUP_UI));
285 workers_one.push_back(passive_worker); 284 workers_one.push_back(passive_worker);
286 workers_one.push_back(db_worker); 285 workers_one.push_back(db_worker);
287 workers_two.push_back(passive_worker); 286 workers_two.push_back(passive_worker);
288 workers_two.push_back(db_worker); 287 workers_two.push_back(db_worker);
289 workers_two.push_back(ui_worker); 288 workers_two.push_back(ui_worker);
290 routes_one[syncable::AUTOFILL] = GROUP_DB; 289 routes_one[syncer::AUTOFILL] = GROUP_DB;
291 routes_two[syncable::AUTOFILL] = GROUP_DB; 290 routes_two[syncer::AUTOFILL] = GROUP_DB;
292 routes_two[syncable::BOOKMARKS] = GROUP_UI; 291 routes_two[syncer::BOOKMARKS] = GROUP_UI;
293 SyncSession one(context_.get(), this, source_one, routes_one, workers_one); 292 SyncSession one(context_.get(), this, source_one, routes_one, workers_one);
294 SyncSession two(context_.get(), this, source_two, routes_two, workers_two); 293 SyncSession two(context_.get(), this, source_two, routes_two, workers_two);
295 294
296 std::set<ModelSafeGroup> expected_enabled_groups_one; 295 std::set<ModelSafeGroup> expected_enabled_groups_one;
297 expected_enabled_groups_one.insert(GROUP_PASSIVE); 296 expected_enabled_groups_one.insert(GROUP_PASSIVE);
298 expected_enabled_groups_one.insert(GROUP_DB); 297 expected_enabled_groups_one.insert(GROUP_DB);
299 298
300 std::set<ModelSafeGroup> expected_enabled_groups_two; 299 std::set<ModelSafeGroup> expected_enabled_groups_two;
301 expected_enabled_groups_two.insert(GROUP_PASSIVE); 300 expected_enabled_groups_two.insert(GROUP_PASSIVE);
302 expected_enabled_groups_two.insert(GROUP_DB); 301 expected_enabled_groups_two.insert(GROUP_DB);
(...skipping 14 matching lines...) Expand all
317 std::vector<ModelSafeWorker*>::const_iterator it_ui = 316 std::vector<ModelSafeWorker*>::const_iterator it_ui =
318 std::find(one.workers().begin(), one.workers().end(), ui_worker); 317 std::find(one.workers().begin(), one.workers().end(), ui_worker);
319 EXPECT_NE(it_db, one.workers().end()); 318 EXPECT_NE(it_db, one.workers().end());
320 EXPECT_NE(it_ui, one.workers().end()); 319 EXPECT_NE(it_ui, one.workers().end());
321 EXPECT_EQ(routes_two, one.routing_info()); 320 EXPECT_EQ(routes_two, one.routing_info());
322 } 321 }
323 322
324 TEST_F(SyncSessionTest, RebaseRoutingInfoWithLatestRemoveOneType) { 323 TEST_F(SyncSessionTest, RebaseRoutingInfoWithLatestRemoveOneType) {
325 std::vector<ModelSafeWorker*> workers_one, workers_two; 324 std::vector<ModelSafeWorker*> workers_one, workers_two;
326 ModelSafeRoutingInfo routes_one, routes_two; 325 ModelSafeRoutingInfo routes_one, routes_two;
327 syncable::ModelTypePayloadMap one_type = 326 syncer::ModelTypePayloadMap one_type =
328 syncable::ModelTypePayloadMapFromEnumSet( 327 syncer::ModelTypePayloadMapFromEnumSet(
329 ParamsMeaningJustOneEnabledType(), 328 ParamsMeaningJustOneEnabledType(),
330 std::string()); 329 std::string());
331 syncable::ModelTypePayloadMap all_types = 330 syncer::ModelTypePayloadMap all_types =
332 syncable::ModelTypePayloadMapFromEnumSet( 331 syncer::ModelTypePayloadMapFromEnumSet(
333 ParamsMeaningAllEnabledTypes(), 332 ParamsMeaningAllEnabledTypes(),
334 std::string()); 333 std::string());
335 SyncSourceInfo source_one(sync_pb::GetUpdatesCallerInfo::PERIODIC, one_type); 334 SyncSourceInfo source_one(sync_pb::GetUpdatesCallerInfo::PERIODIC, one_type);
336 SyncSourceInfo source_two(sync_pb::GetUpdatesCallerInfo::LOCAL, all_types); 335 SyncSourceInfo source_two(sync_pb::GetUpdatesCallerInfo::LOCAL, all_types);
337 336
338 scoped_refptr<ModelSafeWorker> passive_worker( 337 scoped_refptr<ModelSafeWorker> passive_worker(
339 new FakeModelWorker(GROUP_PASSIVE)); 338 new FakeModelWorker(GROUP_PASSIVE));
340 scoped_refptr<ModelSafeWorker> db_worker(new FakeModelWorker(GROUP_DB)); 339 scoped_refptr<ModelSafeWorker> db_worker(new FakeModelWorker(GROUP_DB));
341 scoped_refptr<ModelSafeWorker> ui_worker(new FakeModelWorker(GROUP_UI)); 340 scoped_refptr<ModelSafeWorker> ui_worker(new FakeModelWorker(GROUP_UI));
342 workers_one.push_back(passive_worker); 341 workers_one.push_back(passive_worker);
343 workers_one.push_back(db_worker); 342 workers_one.push_back(db_worker);
344 workers_two.push_back(passive_worker); 343 workers_two.push_back(passive_worker);
345 workers_two.push_back(db_worker); 344 workers_two.push_back(db_worker);
346 workers_two.push_back(ui_worker); 345 workers_two.push_back(ui_worker);
347 routes_one[syncable::AUTOFILL] = GROUP_DB; 346 routes_one[syncer::AUTOFILL] = GROUP_DB;
348 routes_two[syncable::AUTOFILL] = GROUP_DB; 347 routes_two[syncer::AUTOFILL] = GROUP_DB;
349 routes_two[syncable::BOOKMARKS] = GROUP_UI; 348 routes_two[syncer::BOOKMARKS] = GROUP_UI;
350 SyncSession one(context_.get(), this, source_one, routes_one, workers_one); 349 SyncSession one(context_.get(), this, source_one, routes_one, workers_one);
351 SyncSession two(context_.get(), this, source_two, routes_two, workers_two); 350 SyncSession two(context_.get(), this, source_two, routes_two, workers_two);
352 351
353 std::set<ModelSafeGroup> expected_enabled_groups_one; 352 std::set<ModelSafeGroup> expected_enabled_groups_one;
354 expected_enabled_groups_one.insert(GROUP_PASSIVE); 353 expected_enabled_groups_one.insert(GROUP_PASSIVE);
355 expected_enabled_groups_one.insert(GROUP_DB); 354 expected_enabled_groups_one.insert(GROUP_DB);
356 355
357 std::set<ModelSafeGroup> expected_enabled_groups_two; 356 std::set<ModelSafeGroup> expected_enabled_groups_two;
358 expected_enabled_groups_two.insert(GROUP_PASSIVE); 357 expected_enabled_groups_two.insert(GROUP_PASSIVE);
359 expected_enabled_groups_two.insert(GROUP_DB); 358 expected_enabled_groups_two.insert(GROUP_DB);
(...skipping 18 matching lines...) Expand all
378 std::vector<ModelSafeWorker*>::const_iterator it_db = 377 std::vector<ModelSafeWorker*>::const_iterator it_db =
379 std::find(two.workers().begin(), two.workers().end(), db_worker); 378 std::find(two.workers().begin(), two.workers().end(), db_worker);
380 std::vector<ModelSafeWorker*>::const_iterator it_ui = 379 std::vector<ModelSafeWorker*>::const_iterator it_ui =
381 std::find(two.workers().begin(), two.workers().end(), ui_worker); 380 std::find(two.workers().begin(), two.workers().end(), ui_worker);
382 EXPECT_NE(it_db, two.workers().end()); 381 EXPECT_NE(it_db, two.workers().end());
383 EXPECT_EQ(it_ui, two.workers().end()); 382 EXPECT_EQ(it_ui, two.workers().end());
384 EXPECT_EQ(two.workers().size(), 2U); 383 EXPECT_EQ(two.workers().size(), 2U);
385 384
386 // Make sure the model safe routing info is reduced to one type. 385 // Make sure the model safe routing info is reduced to one type.
387 ModelSafeRoutingInfo::const_iterator it = 386 ModelSafeRoutingInfo::const_iterator it =
388 two.routing_info().find(syncable::AUTOFILL); 387 two.routing_info().find(syncer::AUTOFILL);
389 // Note that attempting to use EXPECT_NE would fail for an Android build due 388 // Note that attempting to use EXPECT_NE would fail for an Android build due
390 // to seeming incompatibility with gtest and stlport. 389 // to seeming incompatibility with gtest and stlport.
391 EXPECT_TRUE(it != two.routing_info().end()); 390 EXPECT_TRUE(it != two.routing_info().end());
392 EXPECT_EQ(it->second, GROUP_DB); 391 EXPECT_EQ(it->second, GROUP_DB);
393 EXPECT_EQ(two.routing_info().size(), 1U); 392 EXPECT_EQ(two.routing_info().size(), 1U);
394 } 393 }
395 394
396 TEST_F(SyncSessionTest, RebaseRoutingInfoWithLatestWithSameType) { 395 TEST_F(SyncSessionTest, RebaseRoutingInfoWithLatestWithSameType) {
397 std::vector<ModelSafeWorker*> workers_first, workers_second; 396 std::vector<ModelSafeWorker*> workers_first, workers_second;
398 ModelSafeRoutingInfo routes_first, routes_second; 397 ModelSafeRoutingInfo routes_first, routes_second;
399 syncable::ModelTypePayloadMap all_types = 398 syncer::ModelTypePayloadMap all_types =
400 syncable::ModelTypePayloadMapFromEnumSet( 399 syncer::ModelTypePayloadMapFromEnumSet(
401 ParamsMeaningAllEnabledTypes(), 400 ParamsMeaningAllEnabledTypes(),
402 std::string()); 401 std::string());
403 SyncSourceInfo source_first(sync_pb::GetUpdatesCallerInfo::PERIODIC, 402 SyncSourceInfo source_first(sync_pb::GetUpdatesCallerInfo::PERIODIC,
404 all_types); 403 all_types);
405 SyncSourceInfo source_second(sync_pb::GetUpdatesCallerInfo::LOCAL, 404 SyncSourceInfo source_second(sync_pb::GetUpdatesCallerInfo::LOCAL,
406 all_types); 405 all_types);
407 406
408 scoped_refptr<ModelSafeWorker> passive_worker( 407 scoped_refptr<ModelSafeWorker> passive_worker(
409 new FakeModelWorker(GROUP_PASSIVE)); 408 new FakeModelWorker(GROUP_PASSIVE));
410 scoped_refptr<FakeModelWorker> db_worker(new FakeModelWorker(GROUP_DB)); 409 scoped_refptr<FakeModelWorker> db_worker(new FakeModelWorker(GROUP_DB));
411 scoped_refptr<FakeModelWorker> ui_worker(new FakeModelWorker(GROUP_UI)); 410 scoped_refptr<FakeModelWorker> ui_worker(new FakeModelWorker(GROUP_UI));
412 workers_first.push_back(passive_worker); 411 workers_first.push_back(passive_worker);
413 workers_first.push_back(db_worker); 412 workers_first.push_back(db_worker);
414 workers_first.push_back(ui_worker); 413 workers_first.push_back(ui_worker);
415 workers_second.push_back(passive_worker); 414 workers_second.push_back(passive_worker);
416 workers_second.push_back(db_worker); 415 workers_second.push_back(db_worker);
417 workers_second.push_back(ui_worker); 416 workers_second.push_back(ui_worker);
418 routes_first[syncable::AUTOFILL] = GROUP_DB; 417 routes_first[syncer::AUTOFILL] = GROUP_DB;
419 routes_first[syncable::BOOKMARKS] = GROUP_UI; 418 routes_first[syncer::BOOKMARKS] = GROUP_UI;
420 routes_second[syncable::AUTOFILL] = GROUP_DB; 419 routes_second[syncer::AUTOFILL] = GROUP_DB;
421 routes_second[syncable::BOOKMARKS] = GROUP_UI; 420 routes_second[syncer::BOOKMARKS] = GROUP_UI;
422 SyncSession first(context_.get(), this, source_first, routes_first, 421 SyncSession first(context_.get(), this, source_first, routes_first,
423 workers_first); 422 workers_first);
424 SyncSession second(context_.get(), this, source_second, routes_second, 423 SyncSession second(context_.get(), this, source_second, routes_second,
425 workers_second); 424 workers_second);
426 425
427 std::set<ModelSafeGroup> expected_enabled_groups; 426 std::set<ModelSafeGroup> expected_enabled_groups;
428 expected_enabled_groups.insert(GROUP_PASSIVE); 427 expected_enabled_groups.insert(GROUP_PASSIVE);
429 expected_enabled_groups.insert(GROUP_DB); 428 expected_enabled_groups.insert(GROUP_DB);
430 expected_enabled_groups.insert(GROUP_UI); 429 expected_enabled_groups.insert(GROUP_UI);
431 430
(...skipping 20 matching lines...) Expand all
452 std::find(second.workers().begin(), second.workers().end(), db_worker); 451 std::find(second.workers().begin(), second.workers().end(), db_worker);
453 std::vector<ModelSafeWorker*>::const_iterator it_ui = 452 std::vector<ModelSafeWorker*>::const_iterator it_ui =
454 std::find(second.workers().begin(), second.workers().end(), ui_worker); 453 std::find(second.workers().begin(), second.workers().end(), ui_worker);
455 EXPECT_NE(it_passive, second.workers().end()); 454 EXPECT_NE(it_passive, second.workers().end());
456 EXPECT_NE(it_db, second.workers().end()); 455 EXPECT_NE(it_db, second.workers().end());
457 EXPECT_NE(it_ui, second.workers().end()); 456 EXPECT_NE(it_ui, second.workers().end());
458 EXPECT_EQ(second.workers().size(), 3U); 457 EXPECT_EQ(second.workers().size(), 3U);
459 458
460 // Make sure the model safe routing info is reduced to first type. 459 // Make sure the model safe routing info is reduced to first type.
461 ModelSafeRoutingInfo::const_iterator it1 = 460 ModelSafeRoutingInfo::const_iterator it1 =
462 second.routing_info().find(syncable::AUTOFILL); 461 second.routing_info().find(syncer::AUTOFILL);
463 ModelSafeRoutingInfo::const_iterator it2 = 462 ModelSafeRoutingInfo::const_iterator it2 =
464 second.routing_info().find(syncable::BOOKMARKS); 463 second.routing_info().find(syncer::BOOKMARKS);
465 464
466 // Note that attempting to use EXPECT_NE would fail for an Android build due 465 // Note that attempting to use EXPECT_NE would fail for an Android build due
467 // to seeming incompatibility with gtest and stlport. 466 // to seeming incompatibility with gtest and stlport.
468 EXPECT_TRUE(it1 != second.routing_info().end()); 467 EXPECT_TRUE(it1 != second.routing_info().end());
469 EXPECT_EQ(it1->second, GROUP_DB); 468 EXPECT_EQ(it1->second, GROUP_DB);
470 469
471 // Note that attempting to use EXPECT_NE would fail for an Android build due 470 // Note that attempting to use EXPECT_NE would fail for an Android build due
472 // to seeming incompatibility with gtest and stlport. 471 // to seeming incompatibility with gtest and stlport.
473 EXPECT_TRUE(it2 != second.routing_info().end()); 472 EXPECT_TRUE(it2 != second.routing_info().end());
474 EXPECT_EQ(it2->second, GROUP_UI); 473 EXPECT_EQ(it2->second, GROUP_UI);
475 EXPECT_EQ(second.routing_info().size(), 2U); 474 EXPECT_EQ(second.routing_info().size(), 2U);
476 } 475 }
477 476
478 477
479 TEST_F(SyncSessionTest, MakeTypePayloadMapFromBitSet) { 478 TEST_F(SyncSessionTest, MakeTypePayloadMapFromBitSet) {
480 syncable::ModelTypeSet types; 479 syncer::ModelTypeSet types;
481 std::string payload = "test"; 480 std::string payload = "test";
482 syncable::ModelTypePayloadMap types_with_payloads = 481 syncer::ModelTypePayloadMap types_with_payloads =
483 syncable::ModelTypePayloadMapFromEnumSet(types, payload); 482 syncer::ModelTypePayloadMapFromEnumSet(types, payload);
484 EXPECT_TRUE(types_with_payloads.empty()); 483 EXPECT_TRUE(types_with_payloads.empty());
485 484
486 types.Put(syncable::BOOKMARKS); 485 types.Put(syncer::BOOKMARKS);
487 types.Put(syncable::PASSWORDS); 486 types.Put(syncer::PASSWORDS);
488 types.Put(syncable::AUTOFILL); 487 types.Put(syncer::AUTOFILL);
489 payload = "test2"; 488 payload = "test2";
490 types_with_payloads = 489 types_with_payloads =
491 syncable::ModelTypePayloadMapFromEnumSet(types, payload); 490 syncer::ModelTypePayloadMapFromEnumSet(types, payload);
492 491
493 ASSERT_EQ(3U, types_with_payloads.size()); 492 ASSERT_EQ(3U, types_with_payloads.size());
494 EXPECT_EQ(types_with_payloads[syncable::BOOKMARKS], payload); 493 EXPECT_EQ(types_with_payloads[syncer::BOOKMARKS], payload);
495 EXPECT_EQ(types_with_payloads[syncable::PASSWORDS], payload); 494 EXPECT_EQ(types_with_payloads[syncer::PASSWORDS], payload);
496 EXPECT_EQ(types_with_payloads[syncable::AUTOFILL], payload); 495 EXPECT_EQ(types_with_payloads[syncer::AUTOFILL], payload);
497 } 496 }
498 497
499 } // namespace 498 } // namespace
500 } // namespace sessions 499 } // namespace sessions
501 } // namespace syncer 500 } // namespace syncer
OLDNEW
« no previous file with comments | « sync/sessions/sync_session.cc ('k') | sync/syncable/directory.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698