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

Side by Side Diff: chrome/browser/ui/cocoa/bookmarks/bookmark_editor_base_controller_unittest.mm

Issue 10827060: Removing instances of profile_->GetBookmarkModel() as part of converting BookmarkModel to a PKS. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: 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
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 #import <Cocoa/Cocoa.h> 5 #import <Cocoa/Cocoa.h>
6 6
7 #include "base/memory/scoped_nsobject.h" 7 #include "base/memory/scoped_nsobject.h"
8 #include "base/sys_string_conversions.h" 8 #include "base/sys_string_conversions.h"
9 #include "base/utf_string_conversions.h" 9 #include "base/utf_string_conversions.h"
10 #include "chrome/browser/bookmarks/bookmark_model.h" 10 #include "chrome/browser/bookmarks/bookmark_model.h"
11 #include "chrome/browser/bookmarks/bookmark_model_factory.h"
11 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_editor_controller.h" 12 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_editor_controller.h"
12 #include "chrome/browser/ui/cocoa/cocoa_profile_test.h" 13 #include "chrome/browser/ui/cocoa/cocoa_profile_test.h"
13 #include "chrome/test/base/test_browser_window.h" 14 #include "chrome/test/base/test_browser_window.h"
14 #include "grit/generated_resources.h" 15 #include "grit/generated_resources.h"
15 #include "testing/gtest/include/gtest/gtest.h" 16 #include "testing/gtest/include/gtest/gtest.h"
16 #import "testing/gtest_mac.h" 17 #import "testing/gtest_mac.h"
17 #include "testing/platform_test.h" 18 #include "testing/platform_test.h"
18 #include "ui/base/l10n/l10n_util_mac.h" 19 #include "ui/base/l10n/l10n_util_mac.h"
19 20
20 class BookmarkEditorBaseControllerTest : public CocoaProfileTest { 21 class BookmarkEditorBaseControllerTest : public CocoaProfileTest {
21 public: 22 public:
22 BookmarkEditorBaseController* controller_; // weak 23 BookmarkEditorBaseController* controller_; // weak
23 const BookmarkNode* folder_a_; 24 const BookmarkNode* folder_a_;
24 const BookmarkNode* folder_b_; 25 const BookmarkNode* folder_b_;
25 const BookmarkNode* folder_b_0_; 26 const BookmarkNode* folder_b_0_;
26 const BookmarkNode* folder_b_3_; 27 const BookmarkNode* folder_b_3_;
27 const BookmarkNode* folder_c_; 28 const BookmarkNode* folder_c_;
28 29
29 void CreateModel() { 30 void CreateModel() {
30 // Set up a small bookmark hierarchy, which will look as follows: 31 // Set up a small bookmark hierarchy, which will look as follows:
31 // a b c d 32 // a b c d
32 // a-0 b-0 c-0 33 // a-0 b-0 c-0
33 // a-1 b-00 c-1 34 // a-1 b-00 c-1
34 // a-2 b-1 c-2 35 // a-2 b-1 c-2
35 // b-2 c-3 36 // b-2 c-3
36 // b-3 37 // b-3
37 // b-30 38 // b-30
38 // b-31 39 // b-31
39 // b-4 40 // b-4
40 BookmarkModel& model(*(profile()->GetBookmarkModel())); 41 BookmarkModel& model(*(BookmarkModelFactory::GetForProfile(profile())));
41 const BookmarkNode* root = model.bookmark_bar_node(); 42 const BookmarkNode* root = model.bookmark_bar_node();
42 folder_a_ = model.AddFolder(root, 0, ASCIIToUTF16("a")); 43 folder_a_ = model.AddFolder(root, 0, ASCIIToUTF16("a"));
43 model.AddURL(folder_a_, 0, ASCIIToUTF16("a-0"), GURL("http://a-0.com")); 44 model.AddURL(folder_a_, 0, ASCIIToUTF16("a-0"), GURL("http://a-0.com"));
44 model.AddURL(folder_a_, 1, ASCIIToUTF16("a-1"), GURL("http://a-1.com")); 45 model.AddURL(folder_a_, 1, ASCIIToUTF16("a-1"), GURL("http://a-1.com"));
45 model.AddURL(folder_a_, 2, ASCIIToUTF16("a-2"), GURL("http://a-2.com")); 46 model.AddURL(folder_a_, 2, ASCIIToUTF16("a-2"), GURL("http://a-2.com"));
46 47
47 folder_b_ = model.AddFolder(root, 1, ASCIIToUTF16("b")); 48 folder_b_ = model.AddFolder(root, 1, ASCIIToUTF16("b"));
48 folder_b_0_ = model.AddFolder(folder_b_, 0, ASCIIToUTF16("b-0")); 49 folder_b_0_ = model.AddFolder(folder_b_, 0, ASCIIToUTF16("b-0"));
49 model.AddURL(folder_b_0_, 0, ASCIIToUTF16("bb-0"), GURL("http://bb-0.com")); 50 model.AddURL(folder_b_0_, 0, ASCIIToUTF16("bb-0"), GURL("http://bb-0.com"));
50 model.AddURL(folder_b_, 1, ASCIIToUTF16("b-1"), GURL("http://b-1.com")); 51 model.AddURL(folder_b_, 1, ASCIIToUTF16("b-1"), GURL("http://b-1.com"));
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
89 controller_ = NULL; 90 controller_ = NULL;
90 CocoaTest::TearDown(); 91 CocoaTest::TearDown();
91 } 92 }
92 93
93 virtual Browser* CreateBrowser() OVERRIDE { 94 virtual Browser* CreateBrowser() OVERRIDE {
94 return chrome::CreateBrowserWithTestWindowForProfile(profile()); 95 return chrome::CreateBrowserWithTestWindowForProfile(profile());
95 } 96 }
96 }; 97 };
97 98
98 TEST_F(BookmarkEditorBaseControllerTest, VerifyBookmarkTestModel) { 99 TEST_F(BookmarkEditorBaseControllerTest, VerifyBookmarkTestModel) {
99 BookmarkModel& model(*(profile()->GetBookmarkModel())); 100 BookmarkModel& model(*(BookmarkModelFactory::GetForProfile(profile())));
100 const BookmarkNode& root(*model.bookmark_bar_node()); 101 const BookmarkNode& root(*model.bookmark_bar_node());
101 EXPECT_EQ(4, root.child_count()); 102 EXPECT_EQ(4, root.child_count());
102 // a 103 // a
103 const BookmarkNode* child = root.GetChild(0); 104 const BookmarkNode* child = root.GetChild(0);
104 EXPECT_EQ(3, child->child_count()); 105 EXPECT_EQ(3, child->child_count());
105 const BookmarkNode* subchild = child->GetChild(0); 106 const BookmarkNode* subchild = child->GetChild(0);
106 EXPECT_EQ(0, subchild->child_count()); 107 EXPECT_EQ(0, subchild->child_count());
107 subchild = child->GetChild(1); 108 subchild = child->GetChild(1);
108 EXPECT_EQ(0, subchild->child_count()); 109 EXPECT_EQ(0, subchild->child_count());
109 subchild = child->GetChild(2); 110 subchild = child->GetChild(2);
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
169 EXPECT_TRUE(newFolderInfo); 170 EXPECT_TRUE(newFolderInfo);
170 NSString* newFolderName = [newFolderInfo folderName]; 171 NSString* newFolderName = [newFolderInfo folderName];
171 EXPECT_NSEQ(expectedName, newFolderName); 172 EXPECT_NSEQ(expectedName, newFolderName);
172 [controller_ createNewFolders]; 173 [controller_ createNewFolders];
173 // Verify that the tab folder was added to the new folder. 174 // Verify that the tab folder was added to the new folder.
174 EXPECT_EQ(3, folder_b_3_->child_count()); 175 EXPECT_EQ(3, folder_b_3_->child_count());
175 [controller_ cancel:nil]; 176 [controller_ cancel:nil];
176 } 177 }
177 178
178 TEST_F(BookmarkEditorBaseControllerTest, CreateTwoFolders) { 179 TEST_F(BookmarkEditorBaseControllerTest, CreateTwoFolders) {
179 BookmarkModel* model = profile()->GetBookmarkModel(); 180 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile());
180 const BookmarkNode* bar = model->bookmark_bar_node(); 181 const BookmarkNode* bar = model->bookmark_bar_node();
181 // Create 2 folders which are children of the bar. 182 // Create 2 folders which are children of the bar.
182 [controller_ selectTestNodeInBrowser:bar]; 183 [controller_ selectTestNodeInBrowser:bar];
183 [controller_ newFolder:nil]; 184 [controller_ newFolder:nil];
184 [controller_ selectTestNodeInBrowser:bar]; 185 [controller_ selectTestNodeInBrowser:bar];
185 [controller_ newFolder:nil]; 186 [controller_ newFolder:nil];
186 // If we do NOT crash on createNewFolders, success! 187 // If we do NOT crash on createNewFolders, success!
187 // (e.g. http://crbug.com/47877 is fixed). 188 // (e.g. http://crbug.com/47877 is fixed).
188 [controller_ createNewFolders]; 189 [controller_ createNewFolders];
189 [controller_ cancel:nil]; 190 [controller_ cancel:nil];
190 } 191 }
191 192
192 TEST_F(BookmarkEditorBaseControllerTest, SelectedFolderDeleted) { 193 TEST_F(BookmarkEditorBaseControllerTest, SelectedFolderDeleted) {
193 BookmarkModel& model(*(profile()->GetBookmarkModel())); 194 BookmarkModel& model(*(BookmarkModelFactory::GetForProfile(profile())));
194 [controller_ selectTestNodeInBrowser:folder_b_3_]; 195 [controller_ selectTestNodeInBrowser:folder_b_3_];
195 EXPECT_EQ(folder_b_3_, [controller_ selectedNode]); 196 EXPECT_EQ(folder_b_3_, [controller_ selectedNode]);
196 197
197 // Delete the selected node, and verify it's no longer selected: 198 // Delete the selected node, and verify it's no longer selected:
198 model.Remove(folder_b_, 3); 199 model.Remove(folder_b_, 3);
199 EXPECT_NE(folder_b_3_, [controller_ selectedNode]); 200 EXPECT_NE(folder_b_3_, [controller_ selectedNode]);
200 201
201 [controller_ cancel:nil]; 202 [controller_ cancel:nil];
202 } 203 }
203 204
204 TEST_F(BookmarkEditorBaseControllerTest, SelectedFoldersParentDeleted) { 205 TEST_F(BookmarkEditorBaseControllerTest, SelectedFoldersParentDeleted) {
205 BookmarkModel& model(*(profile()->GetBookmarkModel())); 206 BookmarkModel& model(*(BookmarkModelFactory::GetForProfile(profile())));
206 const BookmarkNode* root = model.bookmark_bar_node(); 207 const BookmarkNode* root = model.bookmark_bar_node();
207 [controller_ selectTestNodeInBrowser:folder_b_3_]; 208 [controller_ selectTestNodeInBrowser:folder_b_3_];
208 EXPECT_EQ(folder_b_3_, [controller_ selectedNode]); 209 EXPECT_EQ(folder_b_3_, [controller_ selectedNode]);
209 210
210 // Delete the selected node's parent, and verify it's no longer selected: 211 // Delete the selected node's parent, and verify it's no longer selected:
211 model.Remove(root, 1); 212 model.Remove(root, 1);
212 EXPECT_NE(folder_b_3_, [controller_ selectedNode]); 213 EXPECT_NE(folder_b_3_, [controller_ selectedNode]);
213 214
214 [controller_ cancel:nil]; 215 [controller_ cancel:nil];
215 } 216 }
216 217
217 TEST_F(BookmarkEditorBaseControllerTest, FolderAdded) { 218 TEST_F(BookmarkEditorBaseControllerTest, FolderAdded) {
218 BookmarkModel& model(*(profile()->GetBookmarkModel())); 219 BookmarkModel& model(*(BookmarkModelFactory::GetForProfile(profile())));
219 const BookmarkNode* root = model.bookmark_bar_node(); 220 const BookmarkNode* root = model.bookmark_bar_node();
220 221
221 // Add a folder node to the model, and verify it can be selected in the tree: 222 // Add a folder node to the model, and verify it can be selected in the tree:
222 const BookmarkNode* folder_added = model.AddFolder( 223 const BookmarkNode* folder_added = model.AddFolder(
223 root, 0, ASCIIToUTF16("added")); 224 root, 0, ASCIIToUTF16("added"));
224 [controller_ selectTestNodeInBrowser:folder_added]; 225 [controller_ selectTestNodeInBrowser:folder_added];
225 EXPECT_EQ(folder_added, [controller_ selectedNode]); 226 EXPECT_EQ(folder_added, [controller_ selectedNode]);
226 227
227 [controller_ cancel:nil]; 228 [controller_ cancel:nil];
228 } 229 }
229 230
230 // Verifies expandeNodes and getExpandedNodes. 231 // Verifies expandeNodes and getExpandedNodes.
231 TEST_F(BookmarkEditorBaseControllerTest, ExpandedState) { 232 TEST_F(BookmarkEditorBaseControllerTest, ExpandedState) {
232 BookmarkModel& model(*(profile()->GetBookmarkModel())); 233 BookmarkModel& model(*(BookmarkModelFactory::GetForProfile(profile())));
233 234
234 // Sets up the state we're going to expand. 235 // Sets up the state we're going to expand.
235 BookmarkExpandedStateTracker::Nodes nodes; 236 BookmarkExpandedStateTracker::Nodes nodes;
236 nodes.insert(model.bookmark_bar_node()); 237 nodes.insert(model.bookmark_bar_node());
237 nodes.insert(folder_b_); 238 nodes.insert(folder_b_);
238 nodes.insert(folder_c_); 239 nodes.insert(folder_c_);
239 240
240 // Initial state shouldn't match expected state, otherwise this test isn't 241 // Initial state shouldn't match expected state, otherwise this test isn't
241 // really going to test anything. 242 // really going to test anything.
242 BookmarkExpandedStateTracker::Nodes actual = [controller_ getExpandedNodes]; 243 BookmarkExpandedStateTracker::Nodes actual = [controller_ getExpandedNodes];
(...skipping 17 matching lines...) Expand all
260 reinterpret_cast<const BookmarkNode*>(&children); 261 reinterpret_cast<const BookmarkNode*>(&children);
261 BookmarkFolderInfo* info = 262 BookmarkFolderInfo* info =
262 [BookmarkFolderInfo bookmarkFolderInfoWithFolderName:@"name" 263 [BookmarkFolderInfo bookmarkFolderInfoWithFolderName:@"name"
263 folderNode:fakeNode 264 folderNode:fakeNode
264 children:children]; 265 children:children];
265 EXPECT_TRUE(info); 266 EXPECT_TRUE(info);
266 EXPECT_EQ([info folderName], @"name"); 267 EXPECT_EQ([info folderName], @"name");
267 EXPECT_EQ([info children], children); 268 EXPECT_EQ([info children], children);
268 EXPECT_EQ([info folderNode], fakeNode); 269 EXPECT_EQ([info folderNode], fakeNode);
269 } 270 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698