| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "components/enhanced_bookmarks/enhanced_bookmark_model.h" | 5 #include "components/enhanced_bookmarks/enhanced_bookmark_model.h" |
| 6 | 6 |
| 7 #include "base/base64.h" | 7 #include "base/base64.h" |
| 8 #include "base/macros.h" | 8 #include "base/macros.h" |
| 9 #include "base/memory/scoped_ptr.h" | 9 #include "base/memory/scoped_ptr.h" |
| 10 #include "base/message_loop/message_loop.h" | 10 #include "base/message_loop/message_loop.h" |
| (...skipping 17 matching lines...) Expand all Loading... |
| 28 | 28 |
| 29 class EnhancedBookmarkModelTest | 29 class EnhancedBookmarkModelTest |
| 30 : public testing::Test, | 30 : public testing::Test, |
| 31 public enhanced_bookmarks::EnhancedBookmarkModelObserver { | 31 public enhanced_bookmarks::EnhancedBookmarkModelObserver { |
| 32 public: | 32 public: |
| 33 EnhancedBookmarkModelTest() | 33 EnhancedBookmarkModelTest() |
| 34 : loaded_calls_(0), | 34 : loaded_calls_(0), |
| 35 shutting_down_calls_(0), | 35 shutting_down_calls_(0), |
| 36 added_calls_(0), | 36 added_calls_(0), |
| 37 removed_calls_(0), | 37 removed_calls_(0), |
| 38 changed_calls_(0), | |
| 39 all_user_nodes_removed_calls_(0), | 38 all_user_nodes_removed_calls_(0), |
| 40 remote_id_changed_calls_(0), | 39 remote_id_changed_calls_(0), |
| 41 last_added_(NULL), | 40 last_added_(NULL), |
| 42 last_removed_(NULL), | 41 last_removed_(NULL), |
| 43 last_changed_(NULL), | |
| 44 last_remote_id_node_(NULL) {} | 42 last_remote_id_node_(NULL) {} |
| 45 virtual ~EnhancedBookmarkModelTest() {} | 43 virtual ~EnhancedBookmarkModelTest() {} |
| 46 | 44 |
| 47 virtual void SetUp() override { | 45 virtual void SetUp() override { |
| 48 message_loop_.reset(new base::MessageLoop(base::MessageLoop::TYPE_DEFAULT)); | 46 message_loop_.reset(new base::MessageLoop(base::MessageLoop::TYPE_DEFAULT)); |
| 49 bookmark_client_.reset(new bookmarks::TestBookmarkClient()); | 47 bookmark_client_.reset(new bookmarks::TestBookmarkClient()); |
| 50 bookmark_model_.reset(bookmark_client_->CreateModel().release()); | 48 bookmark_model_.reset(bookmark_client_->CreateModel().release()); |
| 51 model_.reset(new EnhancedBookmarkModel(bookmark_model_.get(), "v1.0")); | 49 model_.reset(new EnhancedBookmarkModel(bookmark_model_.get(), "v1.0")); |
| 52 model_->AddObserver(this); | 50 model_->AddObserver(this); |
| 53 } | 51 } |
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 113 void EnhancedBookmarkModelLoaded() override { loaded_calls_++; } | 111 void EnhancedBookmarkModelLoaded() override { loaded_calls_++; } |
| 114 void EnhancedBookmarkModelShuttingDown() override { shutting_down_calls_++; } | 112 void EnhancedBookmarkModelShuttingDown() override { shutting_down_calls_++; } |
| 115 void EnhancedBookmarkAdded(const BookmarkNode* node) override { | 113 void EnhancedBookmarkAdded(const BookmarkNode* node) override { |
| 116 added_calls_++; | 114 added_calls_++; |
| 117 last_added_ = node; | 115 last_added_ = node; |
| 118 } | 116 } |
| 119 void EnhancedBookmarkRemoved(const BookmarkNode* node) override { | 117 void EnhancedBookmarkRemoved(const BookmarkNode* node) override { |
| 120 removed_calls_++; | 118 removed_calls_++; |
| 121 last_removed_ = node; | 119 last_removed_ = node; |
| 122 } | 120 } |
| 123 void EnhancedBookmarkNodeChanged(const BookmarkNode* node) override { | |
| 124 changed_calls_++; | |
| 125 last_changed_ = node; | |
| 126 } | |
| 127 void EnhancedBookmarkAllUserNodesRemoved() override { | 121 void EnhancedBookmarkAllUserNodesRemoved() override { |
| 128 all_user_nodes_removed_calls_++; | 122 all_user_nodes_removed_calls_++; |
| 129 } | 123 } |
| 130 void EnhancedBookmarkRemoteIdChanged(const BookmarkNode* node, | 124 void EnhancedBookmarkRemoteIdChanged(const BookmarkNode* node, |
| 131 const std::string& old_remote_id, | 125 const std::string& old_remote_id, |
| 132 const std::string& remote_id) override { | 126 const std::string& remote_id) override { |
| 133 remote_id_changed_calls_++; | 127 remote_id_changed_calls_++; |
| 134 last_remote_id_node_ = node; | 128 last_remote_id_node_ = node; |
| 135 last_old_remote_id_ = old_remote_id; | 129 last_old_remote_id_ = old_remote_id; |
| 136 last_remote_id_ = remote_id; | 130 last_remote_id_ = remote_id; |
| 137 } | 131 } |
| 138 | 132 |
| 139 // Observer call counters: | 133 // Observer call counters: |
| 140 int loaded_calls_; | 134 int loaded_calls_; |
| 141 int shutting_down_calls_; | 135 int shutting_down_calls_; |
| 142 int added_calls_; | 136 int added_calls_; |
| 143 int removed_calls_; | 137 int removed_calls_; |
| 144 int changed_calls_; | |
| 145 int all_user_nodes_removed_calls_; | 138 int all_user_nodes_removed_calls_; |
| 146 int remote_id_changed_calls_; | 139 int remote_id_changed_calls_; |
| 147 | 140 |
| 148 // Observer parameter cache: | 141 // Observer parameter cache: |
| 149 const BookmarkNode* last_added_; | 142 const BookmarkNode* last_added_; |
| 150 const BookmarkNode* last_removed_; | 143 const BookmarkNode* last_removed_; |
| 151 const BookmarkNode* last_changed_; | |
| 152 const BookmarkNode* last_remote_id_node_; | 144 const BookmarkNode* last_remote_id_node_; |
| 153 std::string last_old_remote_id_; | 145 std::string last_old_remote_id_; |
| 154 std::string last_remote_id_; | 146 std::string last_remote_id_; |
| 155 | 147 |
| 156 private: | 148 private: |
| 157 DISALLOW_COPY_AND_ASSIGN(EnhancedBookmarkModelTest); | 149 DISALLOW_COPY_AND_ASSIGN(EnhancedBookmarkModelTest); |
| 158 }; | 150 }; |
| 159 | 151 |
| 160 TEST_F(EnhancedBookmarkModelTest, TestEmptySnippet) { | 152 TEST_F(EnhancedBookmarkModelTest, TestEmptySnippet) { |
| 161 const BookmarkNode* node = AddBookmark(); | 153 const BookmarkNode* node = AddBookmark(); |
| (...skipping 431 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 593 bookmark_model_->Remove(node->parent(), node->parent()->GetIndexOf(node)); | 585 bookmark_model_->Remove(node->parent(), node->parent()->GetIndexOf(node)); |
| 594 EXPECT_EQ(1, removed_calls_); | 586 EXPECT_EQ(1, removed_calls_); |
| 595 EXPECT_EQ(node, last_removed_); | 587 EXPECT_EQ(node, last_removed_); |
| 596 | 588 |
| 597 bookmark_model_->Remove(folder->parent(), | 589 bookmark_model_->Remove(folder->parent(), |
| 598 folder->parent()->GetIndexOf(folder)); | 590 folder->parent()->GetIndexOf(folder)); |
| 599 EXPECT_EQ(2, removed_calls_); | 591 EXPECT_EQ(2, removed_calls_); |
| 600 EXPECT_EQ(folder, last_removed_); | 592 EXPECT_EQ(folder, last_removed_); |
| 601 } | 593 } |
| 602 | 594 |
| 603 TEST_F(EnhancedBookmarkModelTest, ObserverNodeChangedEvent) { | |
| 604 const BookmarkNode* node = AddBookmark(); | |
| 605 | |
| 606 EXPECT_EQ(0, changed_calls_); | |
| 607 bookmark_model_->SetTitle(node, base::ASCIIToUTF16("New Title")); | |
| 608 EXPECT_EQ(1, changed_calls_); | |
| 609 EXPECT_EQ(node, last_changed_); | |
| 610 } | |
| 611 | |
| 612 TEST_F(EnhancedBookmarkModelTest, ObserverAllUserNodesRemovedEvent) { | 595 TEST_F(EnhancedBookmarkModelTest, ObserverAllUserNodesRemovedEvent) { |
| 613 AddBookmark(); | 596 AddBookmark(); |
| 614 AddFolder(); | 597 AddFolder(); |
| 615 EXPECT_EQ(0, all_user_nodes_removed_calls_); | 598 EXPECT_EQ(0, all_user_nodes_removed_calls_); |
| 616 bookmark_model_->RemoveAllUserBookmarks(); | 599 bookmark_model_->RemoveAllUserBookmarks(); |
| 617 EXPECT_EQ(0, removed_calls_); | 600 EXPECT_EQ(0, removed_calls_); |
| 618 EXPECT_EQ(1, all_user_nodes_removed_calls_); | 601 EXPECT_EQ(1, all_user_nodes_removed_calls_); |
| 619 } | 602 } |
| 620 | 603 |
| 621 TEST_F(EnhancedBookmarkModelTest, ObserverRemoteIdChangedEvent) { | 604 TEST_F(EnhancedBookmarkModelTest, ObserverRemoteIdChangedEvent) { |
| (...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 745 TEST_F(EnhancedBookmarkModelTest, | 728 TEST_F(EnhancedBookmarkModelTest, |
| 746 NodeRemovedWhileSetNeedsOfflineProcessingIsScheduled) { | 729 NodeRemovedWhileSetNeedsOfflineProcessingIsScheduled) { |
| 747 const BookmarkNode* node = | 730 const BookmarkNode* node = |
| 748 bookmark_model_->AddURL(bookmark_model_->other_node(), | 731 bookmark_model_->AddURL(bookmark_model_->other_node(), |
| 749 0, | 732 0, |
| 750 base::ASCIIToUTF16("Some title"), | 733 base::ASCIIToUTF16("Some title"), |
| 751 GURL(BOOKMARK_URL)); | 734 GURL(BOOKMARK_URL)); |
| 752 bookmark_model_->Remove(node->parent(), node->parent()->GetIndexOf(node)); | 735 bookmark_model_->Remove(node->parent(), node->parent()->GetIndexOf(node)); |
| 753 base::RunLoop().RunUntilIdle(); | 736 base::RunLoop().RunUntilIdle(); |
| 754 } | 737 } |
| OLD | NEW |