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