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

Side by Side Diff: chrome/browser/sync/test/integration/bookmarks_helper.cc

Issue 242823002: Extract GetNodeByID() method from BookmarkModel. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: revert a change in bookmarks_helper.cc that colides with a wstring and cq does not like that Created 6 years, 8 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 "chrome/browser/sync/test/integration/bookmarks_helper.h" 5 #include "chrome/browser/sync/test/integration/bookmarks_helper.h"
6 6
7 #include "base/compiler_specific.h" 7 #include "base/compiler_specific.h"
8 #include "base/file_util.h" 8 #include "base/file_util.h"
9 #include "base/path_service.h" 9 #include "base/path_service.h"
10 #include "base/rand_util.h" 10 #include "base/rand_util.h"
11 #include "base/strings/string_number_conversions.h" 11 #include "base/strings/string_number_conversions.h"
12 #include "base/strings/string_util.h" 12 #include "base/strings/string_util.h"
13 #include "base/strings/stringprintf.h" 13 #include "base/strings/stringprintf.h"
14 #include "base/strings/utf_string_conversions.h" 14 #include "base/strings/utf_string_conversions.h"
15 #include "base/synchronization/waitable_event.h" 15 #include "base/synchronization/waitable_event.h"
16 #include "chrome/browser/bookmarks/bookmark_model.h" 16 #include "chrome/browser/bookmarks/bookmark_model.h"
17 #include "chrome/browser/bookmarks/bookmark_model_factory.h" 17 #include "chrome/browser/bookmarks/bookmark_model_factory.h"
18 #include "chrome/browser/bookmarks/bookmark_model_observer.h" 18 #include "chrome/browser/bookmarks/bookmark_model_observer.h"
19 #include "chrome/browser/bookmarks/bookmark_utils.h"
19 #include "chrome/browser/favicon/favicon_service_factory.h" 20 #include "chrome/browser/favicon/favicon_service_factory.h"
20 #include "chrome/browser/favicon/favicon_util.h" 21 #include "chrome/browser/favicon/favicon_util.h"
21 #include "chrome/browser/history/history_db_task.h" 22 #include "chrome/browser/history/history_db_task.h"
22 #include "chrome/browser/history/history_service_factory.h" 23 #include "chrome/browser/history/history_service_factory.h"
23 #include "chrome/browser/history/history_types.h" 24 #include "chrome/browser/history/history_types.h"
24 #include "chrome/browser/profiles/profile.h" 25 #include "chrome/browser/profiles/profile.h"
25 #include "chrome/browser/sync/glue/bookmark_change_processor.h" 26 #include "chrome/browser/sync/glue/bookmark_change_processor.h"
26 #include "chrome/browser/sync/test/integration/multi_client_status_change_checke r.h" 27 #include "chrome/browser/sync/test/integration/multi_client_status_change_checke r.h"
27 #include "chrome/browser/sync/test/integration/profile_sync_service_harness.h" 28 #include "chrome/browser/sync/test/integration/profile_sync_service_harness.h"
28 #include "chrome/browser/sync/test/integration/sync_datatype_helper.h" 29 #include "chrome/browser/sync/test/integration/sync_datatype_helper.h"
(...skipping 385 matching lines...) Expand 10 before | Expand all | Expand 10 after
414 const std::wstring& title, 415 const std::wstring& title,
415 const GURL& url) { 416 const GURL& url) {
416 return AddURL(profile, GetBookmarkBarNode(profile), index, title, url); 417 return AddURL(profile, GetBookmarkBarNode(profile), index, title, url);
417 } 418 }
418 419
419 const BookmarkNode* AddURL(int profile, 420 const BookmarkNode* AddURL(int profile,
420 const BookmarkNode* parent, 421 const BookmarkNode* parent,
421 int index, 422 int index,
422 const std::wstring& title, 423 const std::wstring& title,
423 const GURL& url) { 424 const GURL& url) {
424 if (GetBookmarkModel(profile)->GetNodeByID(parent->id()) != parent) { 425 BookmarkModel* model = GetBookmarkModel(profile);
426 if (GetBookmarkNodeByID(model, parent->id()) != parent) {
425 LOG(ERROR) << "Node " << parent->GetTitle() << " does not belong to " 427 LOG(ERROR) << "Node " << parent->GetTitle() << " does not belong to "
426 << "Profile " << profile; 428 << "Profile " << profile;
427 return NULL; 429 return NULL;
428 } 430 }
429 const BookmarkNode* result = GetBookmarkModel(profile)-> 431 const BookmarkNode* result =
430 AddURL(parent, index, base::WideToUTF16(title), url); 432 model->AddURL(parent, index, base::WideToUTF16(title), url);
431 if (!result) { 433 if (!result) {
432 LOG(ERROR) << "Could not add bookmark " << title << " to Profile " 434 LOG(ERROR) << "Could not add bookmark " << title << " to Profile "
433 << profile; 435 << profile;
434 return NULL; 436 return NULL;
435 } 437 }
436 if (test()->use_verifier()) { 438 if (test()->use_verifier()) {
437 const BookmarkNode* v_parent = NULL; 439 const BookmarkNode* v_parent = NULL;
438 FindNodeInVerifier(GetBookmarkModel(profile), parent, &v_parent); 440 FindNodeInVerifier(model, parent, &v_parent);
439 const BookmarkNode* v_node = GetVerifierBookmarkModel()-> 441 const BookmarkNode* v_node = GetVerifierBookmarkModel()->AddURL(
440 AddURL(v_parent, index, base::WideToUTF16(title), url); 442 v_parent, index, base::WideToUTF16(title), url);
441 if (!v_node) { 443 if (!v_node) {
442 LOG(ERROR) << "Could not add bookmark " << title << " to the verifier"; 444 LOG(ERROR) << "Could not add bookmark " << title << " to the verifier";
443 return NULL; 445 return NULL;
444 } 446 }
445 EXPECT_TRUE(NodesMatch(v_node, result)); 447 EXPECT_TRUE(NodesMatch(v_node, result));
446 } 448 }
447 return result; 449 return result;
448 } 450 }
449 451
450 const BookmarkNode* AddFolder(int profile, 452 const BookmarkNode* AddFolder(int profile,
451 const std::wstring& title) { 453 const std::wstring& title) {
452 return AddFolder(profile, GetBookmarkBarNode(profile), 0, title); 454 return AddFolder(profile, GetBookmarkBarNode(profile), 0, title);
453 } 455 }
454 456
455 const BookmarkNode* AddFolder(int profile, 457 const BookmarkNode* AddFolder(int profile,
456 int index, 458 int index,
457 const std::wstring& title) { 459 const std::wstring& title) {
458 return AddFolder(profile, GetBookmarkBarNode(profile), index, title); 460 return AddFolder(profile, GetBookmarkBarNode(profile), index, title);
459 } 461 }
460 462
461 const BookmarkNode* AddFolder(int profile, 463 const BookmarkNode* AddFolder(int profile,
462 const BookmarkNode* parent, 464 const BookmarkNode* parent,
463 int index, 465 int index,
464 const std::wstring& title) { 466 const std::wstring& title) {
465 if (GetBookmarkModel(profile)->GetNodeByID(parent->id()) != parent) { 467 BookmarkModel* model = GetBookmarkModel(profile);
468 if (GetBookmarkNodeByID(model, parent->id()) != parent) {
466 LOG(ERROR) << "Node " << parent->GetTitle() << " does not belong to " 469 LOG(ERROR) << "Node " << parent->GetTitle() << " does not belong to "
467 << "Profile " << profile; 470 << "Profile " << profile;
468 return NULL; 471 return NULL;
469 } 472 }
470 const BookmarkNode* result = GetBookmarkModel(profile)->AddFolder( 473 const BookmarkNode* result =
471 parent, index, base::WideToUTF16(title)); 474 model->AddFolder(parent, index, base::WideToUTF16(title));
472 EXPECT_TRUE(result); 475 EXPECT_TRUE(result);
473 if (!result) { 476 if (!result) {
474 LOG(ERROR) << "Could not add folder " << title << " to Profile " 477 LOG(ERROR) << "Could not add folder " << title << " to Profile "
475 << profile; 478 << profile;
476 return NULL; 479 return NULL;
477 } 480 }
478 if (test()->use_verifier()) { 481 if (test()->use_verifier()) {
479 const BookmarkNode* v_parent = NULL; 482 const BookmarkNode* v_parent = NULL;
480 FindNodeInVerifier(GetBookmarkModel(profile), parent, &v_parent); 483 FindNodeInVerifier(model, parent, &v_parent);
481 const BookmarkNode* v_node = GetVerifierBookmarkModel()->AddFolder( 484 const BookmarkNode* v_node = GetVerifierBookmarkModel()->AddFolder(
482 v_parent, index, base::WideToUTF16(title)); 485 v_parent, index, base::WideToUTF16(title));
483 if (!v_node) { 486 if (!v_node) {
484 LOG(ERROR) << "Could not add folder " << title << " to the verifier"; 487 LOG(ERROR) << "Could not add folder " << title << " to the verifier";
485 return NULL; 488 return NULL;
486 } 489 }
487 EXPECT_TRUE(NodesMatch(v_node, result)); 490 EXPECT_TRUE(NodesMatch(v_node, result));
488 } 491 }
489 return result; 492 return result;
490 } 493 }
491 494
492 void SetTitle(int profile, 495 void SetTitle(int profile,
493 const BookmarkNode* node, 496 const BookmarkNode* node,
494 const std::wstring& new_title) { 497 const std::wstring& new_title) {
495 ASSERT_EQ(GetBookmarkModel(profile)->GetNodeByID(node->id()), node) 498 BookmarkModel* model = GetBookmarkModel(profile);
499 ASSERT_EQ(GetBookmarkNodeByID(model, node->id()), node)
496 << "Node " << node->GetTitle() << " does not belong to " 500 << "Node " << node->GetTitle() << " does not belong to "
497 << "Profile " << profile; 501 << "Profile " << profile;
498 if (test()->use_verifier()) { 502 if (test()->use_verifier()) {
499 const BookmarkNode* v_node = NULL; 503 const BookmarkNode* v_node = NULL;
500 FindNodeInVerifier(GetBookmarkModel(profile), node, &v_node); 504 FindNodeInVerifier(model, node, &v_node);
501 GetVerifierBookmarkModel()->SetTitle(v_node, base::WideToUTF16(new_title)); 505 GetVerifierBookmarkModel()->SetTitle(v_node, base::WideToUTF16(new_title));
502 } 506 }
503 GetBookmarkModel(profile)->SetTitle(node, base::WideToUTF16(new_title)); 507 model->SetTitle(node, base::WideToUTF16(new_title));
504 } 508 }
505 509
506 void SetFavicon(int profile, 510 void SetFavicon(int profile,
507 const BookmarkNode* node, 511 const BookmarkNode* node,
508 const GURL& icon_url, 512 const GURL& icon_url,
509 const gfx::Image& image, 513 const gfx::Image& image,
510 FaviconSource favicon_source) { 514 FaviconSource favicon_source) {
511 ASSERT_EQ(GetBookmarkModel(profile)->GetNodeByID(node->id()), node) 515 BookmarkModel* model = GetBookmarkModel(profile);
516 ASSERT_EQ(GetBookmarkNodeByID(model, node->id()), node)
512 << "Node " << node->GetTitle() << " does not belong to " 517 << "Node " << node->GetTitle() << " does not belong to "
513 << "Profile " << profile; 518 << "Profile " << profile;
514 ASSERT_EQ(BookmarkNode::URL, node->type()) 519 ASSERT_EQ(BookmarkNode::URL, node->type()) << "Node " << node->GetTitle()
515 << "Node " << node->GetTitle() << " must be a url."; 520 << " must be a url.";
516 if (urls_with_favicons_ == NULL) 521 if (urls_with_favicons_ == NULL)
517 urls_with_favicons_ = new std::set<GURL>(); 522 urls_with_favicons_ = new std::set<GURL>();
518 urls_with_favicons_->insert(node->url()); 523 urls_with_favicons_->insert(node->url());
519 if (test()->use_verifier()) { 524 if (test()->use_verifier()) {
520 const BookmarkNode* v_node = NULL; 525 const BookmarkNode* v_node = NULL;
521 FindNodeInVerifier(GetBookmarkModel(profile), node, &v_node); 526 FindNodeInVerifier(model, node, &v_node);
522 SetFaviconImpl(test()->verifier(), v_node, icon_url, image, favicon_source); 527 SetFaviconImpl(test()->verifier(), v_node, icon_url, image, favicon_source);
523 } 528 }
524 SetFaviconImpl(test()->GetProfile(profile), node, icon_url, image, 529 SetFaviconImpl(test()->GetProfile(profile), node, icon_url, image,
525 favicon_source); 530 favicon_source);
526 } 531 }
527 532
528 const BookmarkNode* SetURL(int profile, 533 const BookmarkNode* SetURL(int profile,
529 const BookmarkNode* node, 534 const BookmarkNode* node,
530 const GURL& new_url) { 535 const GURL& new_url) {
531 if (GetBookmarkModel(profile)->GetNodeByID(node->id()) != node) { 536 BookmarkModel* model = GetBookmarkModel(profile);
537 if (GetBookmarkNodeByID(model, node->id()) != node) {
532 LOG(ERROR) << "Node " << node->GetTitle() << " does not belong to " 538 LOG(ERROR) << "Node " << node->GetTitle() << " does not belong to "
533 << "Profile " << profile; 539 << "Profile " << profile;
534 return NULL; 540 return NULL;
535 } 541 }
536 if (test()->use_verifier()) { 542 if (test()->use_verifier()) {
537 const BookmarkNode* v_node = NULL; 543 const BookmarkNode* v_node = NULL;
538 FindNodeInVerifier(GetBookmarkModel(profile), node, &v_node); 544 FindNodeInVerifier(model, node, &v_node);
539 if (v_node->is_url()) 545 if (v_node->is_url())
540 GetVerifierBookmarkModel()->SetURL(v_node, new_url); 546 GetVerifierBookmarkModel()->SetURL(v_node, new_url);
541 } 547 }
542 if (node->is_url()) 548 if (node->is_url())
543 GetBookmarkModel(profile)->SetURL(node, new_url); 549 model->SetURL(node, new_url);
544 return node; 550 return node;
545 } 551 }
546 552
547 void Move(int profile, 553 void Move(int profile,
548 const BookmarkNode* node, 554 const BookmarkNode* node,
549 const BookmarkNode* new_parent, 555 const BookmarkNode* new_parent,
550 int index) { 556 int index) {
551 ASSERT_EQ(GetBookmarkModel(profile)->GetNodeByID(node->id()), node) 557 BookmarkModel* model = GetBookmarkModel(profile);
558 ASSERT_EQ(GetBookmarkNodeByID(model, node->id()), node)
552 << "Node " << node->GetTitle() << " does not belong to " 559 << "Node " << node->GetTitle() << " does not belong to "
553 << "Profile " << profile; 560 << "Profile " << profile;
554 if (test()->use_verifier()) { 561 if (test()->use_verifier()) {
555 const BookmarkNode* v_new_parent = NULL; 562 const BookmarkNode* v_new_parent = NULL;
556 const BookmarkNode* v_node = NULL; 563 const BookmarkNode* v_node = NULL;
557 FindNodeInVerifier(GetBookmarkModel(profile), new_parent, &v_new_parent); 564 FindNodeInVerifier(model, new_parent, &v_new_parent);
558 FindNodeInVerifier(GetBookmarkModel(profile), node, &v_node); 565 FindNodeInVerifier(model, node, &v_node);
559 GetVerifierBookmarkModel()->Move(v_node, v_new_parent, index); 566 GetVerifierBookmarkModel()->Move(v_node, v_new_parent, index);
560 } 567 }
561 GetBookmarkModel(profile)->Move(node, new_parent, index); 568 model->Move(node, new_parent, index);
562 } 569 }
563 570
564 void Remove(int profile, 571 void Remove(int profile, const BookmarkNode* parent, int index) {
565 const BookmarkNode* parent, 572 BookmarkModel* model = GetBookmarkModel(profile);
566 int index) { 573 ASSERT_EQ(GetBookmarkNodeByID(model, parent->id()), parent)
567 ASSERT_EQ(GetBookmarkModel(profile)->GetNodeByID(parent->id()), parent)
568 << "Node " << parent->GetTitle() << " does not belong to " 574 << "Node " << parent->GetTitle() << " does not belong to "
569 << "Profile " << profile; 575 << "Profile " << profile;
570 if (test()->use_verifier()) { 576 if (test()->use_verifier()) {
571 const BookmarkNode* v_parent = NULL; 577 const BookmarkNode* v_parent = NULL;
572 FindNodeInVerifier(GetBookmarkModel(profile), parent, &v_parent); 578 FindNodeInVerifier(model, parent, &v_parent);
573 ASSERT_TRUE(NodesMatch(parent->GetChild(index), v_parent->GetChild(index))); 579 ASSERT_TRUE(NodesMatch(parent->GetChild(index), v_parent->GetChild(index)));
574 GetVerifierBookmarkModel()->Remove(v_parent, index); 580 GetVerifierBookmarkModel()->Remove(v_parent, index);
575 } 581 }
576 GetBookmarkModel(profile)->Remove(parent, index); 582 model->Remove(parent, index);
577 } 583 }
578 584
579 void RemoveAll(int profile) { 585 void RemoveAll(int profile) {
580 if (test()->use_verifier()) { 586 if (test()->use_verifier()) {
581 const BookmarkNode* root_node = GetVerifierBookmarkModel()->root_node(); 587 const BookmarkNode* root_node = GetVerifierBookmarkModel()->root_node();
582 for (int i = 0; i < root_node->child_count(); ++i) { 588 for (int i = 0; i < root_node->child_count(); ++i) {
583 const BookmarkNode* permanent_node = root_node->GetChild(i); 589 const BookmarkNode* permanent_node = root_node->GetChild(i);
584 for (int j = permanent_node->child_count() - 1; j >= 0; --j) { 590 for (int j = permanent_node->child_count() - 1; j >= 0; --j) {
585 GetVerifierBookmarkModel()->Remove(permanent_node, j); 591 GetVerifierBookmarkModel()->Remove(permanent_node, j);
586 } 592 }
587 } 593 }
588 } 594 }
589 GetBookmarkModel(profile)->RemoveAll(); 595 GetBookmarkModel(profile)->RemoveAll();
590 } 596 }
591 597
592 void SortChildren(int profile, const BookmarkNode* parent) { 598 void SortChildren(int profile, const BookmarkNode* parent) {
593 ASSERT_EQ(GetBookmarkModel(profile)->GetNodeByID(parent->id()), parent) 599 BookmarkModel* model = GetBookmarkModel(profile);
600 ASSERT_EQ(GetBookmarkNodeByID(model, parent->id()), parent)
594 << "Node " << parent->GetTitle() << " does not belong to " 601 << "Node " << parent->GetTitle() << " does not belong to "
595 << "Profile " << profile; 602 << "Profile " << profile;
596 if (test()->use_verifier()) { 603 if (test()->use_verifier()) {
597 const BookmarkNode* v_parent = NULL; 604 const BookmarkNode* v_parent = NULL;
598 FindNodeInVerifier(GetBookmarkModel(profile), parent, &v_parent); 605 FindNodeInVerifier(model, parent, &v_parent);
599 GetVerifierBookmarkModel()->SortChildren(v_parent); 606 GetVerifierBookmarkModel()->SortChildren(v_parent);
600 } 607 }
601 GetBookmarkModel(profile)->SortChildren(parent); 608 model->SortChildren(parent);
602 } 609 }
603 610
604 void ReverseChildOrder(int profile, const BookmarkNode* parent) { 611 void ReverseChildOrder(int profile, const BookmarkNode* parent) {
605 ASSERT_EQ(GetBookmarkModel(profile)->GetNodeByID(parent->id()), parent) 612 ASSERT_EQ(GetBookmarkNodeByID(GetBookmarkModel(profile), parent->id()),
613 parent)
606 << "Node " << parent->GetTitle() << " does not belong to " 614 << "Node " << parent->GetTitle() << " does not belong to "
607 << "Profile " << profile; 615 << "Profile " << profile;
608 int child_count = parent->child_count(); 616 int child_count = parent->child_count();
609 if (child_count <= 0) 617 if (child_count <= 0)
610 return; 618 return;
611 for (int index = 0; index < child_count; ++index) { 619 for (int index = 0; index < child_count; ++index) {
612 Move(profile, parent->GetChild(index), parent, child_count - index); 620 Move(profile, parent->GetChild(index), parent, child_count - index);
613 } 621 }
614 } 622 }
615 623
(...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after
793 801
794 std::wstring IndexedSubfolderName(int i) { 802 std::wstring IndexedSubfolderName(int i) {
795 return base::StringPrintf(L"Subfolder Name %d", i); 803 return base::StringPrintf(L"Subfolder Name %d", i);
796 } 804 }
797 805
798 std::wstring IndexedSubsubfolderName(int i) { 806 std::wstring IndexedSubsubfolderName(int i) {
799 return base::StringPrintf(L"Subsubfolder Name %d", i); 807 return base::StringPrintf(L"Subsubfolder Name %d", i);
800 } 808 }
801 809
802 } // namespace bookmarks_helper 810 } // namespace bookmarks_helper
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698