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

Side by Side Diff: chrome/browser/cocoa/bookmark_editor_controller_unittest.mm

Issue 393006: Change the folder presentation in the Bookmark Editor and the Bookmark All Ta... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 11 years, 1 month 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 | « chrome/browser/cocoa/bookmark_editor_controller.mm ('k') | no next file » | 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) 2009 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2009 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/scoped_nsobject.h"
8 #include "base/sys_string_conversions.h" 7 #include "base/sys_string_conversions.h"
9 #import "chrome/browser/cocoa/bookmark_editor_controller.h" 8 #import "chrome/browser/cocoa/bookmark_editor_controller.h"
10 #include "chrome/browser/cocoa/browser_test_helper.h" 9 #include "chrome/browser/cocoa/browser_test_helper.h"
11 #import "chrome/browser/cocoa/cocoa_test_helper.h" 10 #import "chrome/browser/cocoa/cocoa_test_helper.h"
12 #include "testing/gtest/include/gtest/gtest.h" 11 #include "testing/gtest/include/gtest/gtest.h"
13 #include "testing/platform_test.h" 12 #include "testing/platform_test.h"
14 13
15 class BookmarkEditorControllerTest : public CocoaTest { 14 class BookmarkEditorControllerTest : public CocoaTest {
16 public: 15 public:
17 BrowserTestHelper helper_; 16 BrowserTestHelper browser_helper_;
18 const BookmarkNode* default_node_; 17 const BookmarkNode* default_node_;
19 const BookmarkNode* default_parent_; 18 const BookmarkNode* default_parent_;
20 const char* default_name_; 19 const char* default_name_;
21 std::wstring default_title_; 20 std::wstring default_title_;
22 BookmarkEditorController* default_controller_; 21 BookmarkEditorController* controller_;
23 22
24 virtual void SetUp() { 23 virtual void SetUp() {
25 CocoaTest::SetUp(); 24 CocoaTest::SetUp();
26 BookmarkModel* model = helper_.profile()->GetBookmarkModel(); 25 BookmarkModel* model = browser_helper_.profile()->GetBookmarkModel();
27 default_parent_ = model->GetBookmarkBarNode(); 26 default_parent_ = model->GetBookmarkBarNode();
28 default_name_ = "http://www.zim-bop-a-dee.com/"; 27 default_name_ = "http://www.zim-bop-a-dee.com/";
29 default_title_ = L"ooh title"; 28 default_title_ = L"ooh title";
30 const BookmarkNode* default_node = model->AddURL(default_parent_, 0, 29 const BookmarkNode* default_node = model->AddURL(default_parent_, 0,
31 default_title_, 30 default_title_,
32 GURL(default_name_)); 31 GURL(default_name_));
33 default_controller_ = [[BookmarkEditorController alloc] 32 controller_ = [[BookmarkEditorController alloc]
34 initWithParentWindow:test_window() 33 initWithParentWindow:test_window()
35 profile:helper_.profile() 34 profile:browser_helper_.profile()
36 parent:default_parent_ 35 parent:default_parent_
37 node:default_node 36 node:default_node
38 configuration:BookmarkEditor::NO_TREE 37 configuration:BookmarkEditor::NO_TREE
39 handler:nil]; 38 handler:nil];
40 [default_controller_ window]; // Forces a nib load 39 [controller_ runAsModalSheet];
41 } 40 }
42 41
43 virtual void TearDown() { 42 virtual void TearDown() {
44 [default_controller_ close]; 43 controller_ = NULL;
45 CocoaTest::TearDown(); 44 CocoaTest::TearDown();
46 } 45 }
47 }; 46 };
48 47
49 TEST_F(BookmarkEditorControllerTest, NoNodeNoTree) {
50 BookmarkModel* model = helper_.profile()->GetBookmarkModel();
51 const BookmarkNode* parent = model->GetBookmarkBarNode();
52 const BookmarkNode* node = NULL;
53
54 BookmarkEditorController* controller =
55 [[BookmarkEditorController alloc]
56 initWithParentWindow:test_window()
57 profile:helper_.profile()
58 parent:parent
59 node:node
60 configuration:BookmarkEditor::NO_TREE
61 handler:nil];
62
63 EXPECT_NE((NSWindow*)nil, [controller window]); // Forces a nib load
64 EXPECT_EQ(@"", [controller displayName]);
65 EXPECT_EQ(@"", [controller displayURL]);
66 EXPECT_FALSE([controller okButtonEnabled]);
67 [controller close];
68 }
69
70 TEST_F(BookmarkEditorControllerTest, YesNodeShowTree) {
71 BookmarkModel* model = helper_.profile()->GetBookmarkModel();
72 const BookmarkNode* parent = model->GetBookmarkBarNode();
73 const char* url_name = "http://www.zim-bop-a-dee.com/";
74 const BookmarkNode* node = model->AddURL(parent, 0, default_title_,
75 GURL(url_name));
76
77 BookmarkEditorController* controller =
78 [[BookmarkEditorController alloc]
79 initWithParentWindow:test_window()
80 profile:helper_.profile()
81 parent:parent
82 node:node
83 configuration:BookmarkEditor::SHOW_TREE
84 handler:nil];
85
86 EXPECT_NE((NSWindow*)nil, [controller window]); // Forces a nib load
87 EXPECT_TRUE([base::SysWideToNSString(default_title_)
88 isEqual:[controller displayName]]);
89 EXPECT_TRUE([[NSString stringWithCString:url_name
90 encoding:NSUTF8StringEncoding]
91 isEqual:[controller displayURL]]);
92 [controller close];
93 }
94
95 TEST_F(BookmarkEditorControllerTest, NoEdit) { 48 TEST_F(BookmarkEditorControllerTest, NoEdit) {
96 [default_controller_ ok:nil]; 49 [controller_ cancel:nil];
97 ASSERT_EQ(default_parent_->GetChildCount(), 1); 50 ASSERT_EQ(default_parent_->GetChildCount(), 1);
98 const BookmarkNode* child = default_parent_->GetChild(0); 51 const BookmarkNode* child = default_parent_->GetChild(0);
99 EXPECT_EQ(child->GetTitle(), default_title_); 52 EXPECT_EQ(child->GetTitle(), default_title_);
100 EXPECT_EQ(child->GetURL(), GURL(default_name_)); 53 EXPECT_EQ(child->GetURL(), GURL(default_name_));
101 } 54 }
102 55
103 TEST_F(BookmarkEditorControllerTest, EditTitle) { 56 TEST_F(BookmarkEditorControllerTest, EditTitle) {
104 [default_controller_ setDisplayName:@"whamma jamma bamma"]; 57 [controller_ setDisplayName:@"whamma jamma bamma"];
105 [default_controller_ ok:nil]; 58 [controller_ ok:nil];
106 ASSERT_EQ(default_parent_->GetChildCount(), 1); 59 ASSERT_EQ(default_parent_->GetChildCount(), 1);
107 const BookmarkNode* child = default_parent_->GetChild(0); 60 const BookmarkNode* child = default_parent_->GetChild(0);
108 EXPECT_EQ(child->GetTitle(), L"whamma jamma bamma"); 61 EXPECT_EQ(child->GetTitle(), L"whamma jamma bamma");
109 EXPECT_EQ(child->GetURL(), GURL(default_name_)); 62 EXPECT_EQ(child->GetURL(), GURL(default_name_));
110 } 63 }
111 64
112 TEST_F(BookmarkEditorControllerTest, EditURL) { 65 TEST_F(BookmarkEditorControllerTest, EditURL) {
113 EXPECT_TRUE([default_controller_ okButtonEnabled]); 66 EXPECT_TRUE([controller_ okButtonEnabled]);
114 [default_controller_ setDisplayURL:@"http://yellow-sneakers.com/"]; 67 [controller_ setDisplayURL:@"http://yellow-sneakers.com/"];
115 EXPECT_TRUE([default_controller_ okButtonEnabled]); 68 EXPECT_TRUE([controller_ okButtonEnabled]);
116 [default_controller_ ok:nil]; 69 [controller_ ok:nil];
117 ASSERT_EQ(default_parent_->GetChildCount(), 1); 70 ASSERT_EQ(default_parent_->GetChildCount(), 1);
118 const BookmarkNode* child = default_parent_->GetChild(0); 71 const BookmarkNode* child = default_parent_->GetChild(0);
119 EXPECT_EQ(child->GetTitle(), default_title_); 72 EXPECT_EQ(child->GetTitle(), default_title_);
120 EXPECT_EQ(child->GetURL(), GURL("http://yellow-sneakers.com/")); 73 EXPECT_EQ(child->GetURL(), GURL("http://yellow-sneakers.com/"));
121 } 74 }
122 75
123 TEST_F(BookmarkEditorControllerTest, EditAndFixPrefix) { 76 TEST_F(BookmarkEditorControllerTest, EditAndFixPrefix) {
124 [default_controller_ setDisplayURL:@"x"]; 77 [controller_ setDisplayURL:@"x"];
125 [default_controller_ ok:nil]; 78 [controller_ ok:nil];
126 ASSERT_EQ(default_parent_->GetChildCount(), 1); 79 ASSERT_EQ(default_parent_->GetChildCount(), 1);
127 const BookmarkNode* child = default_parent_->GetChild(0); 80 const BookmarkNode* child = default_parent_->GetChild(0);
128 EXPECT_TRUE(child->GetURL().is_valid()); 81 EXPECT_TRUE(child->GetURL().is_valid());
129 } 82 }
130 83
131 TEST_F(BookmarkEditorControllerTest, EditAndConfirmOKButton) { 84 TEST_F(BookmarkEditorControllerTest, EditAndConfirmOKButton) {
132 // Confirm OK button enabled/disabled as appropriate: 85 // Confirm OK button enabled/disabled as appropriate:
133 // First test the URL. 86 // First test the URL.
134 EXPECT_TRUE([default_controller_ okButtonEnabled]); 87 EXPECT_TRUE([controller_ okButtonEnabled]);
135 [default_controller_ setDisplayURL:@""]; 88 [controller_ setDisplayURL:@""];
136 EXPECT_FALSE([default_controller_ okButtonEnabled]); 89 EXPECT_FALSE([controller_ okButtonEnabled]);
137 [default_controller_ setDisplayURL:@"http://www.cnn.com"]; 90 [controller_ setDisplayURL:@"http://www.cnn.com"];
138 EXPECT_TRUE([default_controller_ okButtonEnabled]); 91 EXPECT_TRUE([controller_ okButtonEnabled]);
139 // Then test the name. 92 // Then test the name.
140 [default_controller_ setDisplayName:@""]; 93 [controller_ setDisplayName:@""];
141 EXPECT_TRUE([default_controller_ okButtonEnabled]); 94 EXPECT_TRUE([controller_ okButtonEnabled]);
142 [default_controller_ setDisplayName:@" "]; 95 [controller_ setDisplayName:@" "];
143 EXPECT_TRUE([default_controller_ okButtonEnabled]); 96 EXPECT_TRUE([controller_ okButtonEnabled]);
144 // Then little mix of both. 97 // Then little mix of both.
145 [default_controller_ setDisplayName:@"name"]; 98 [controller_ setDisplayName:@"name"];
146 EXPECT_TRUE([default_controller_ okButtonEnabled]); 99 EXPECT_TRUE([controller_ okButtonEnabled]);
147 [default_controller_ setDisplayURL:@""]; 100 [controller_ setDisplayURL:@""];
148 EXPECT_FALSE([default_controller_ okButtonEnabled]); 101 EXPECT_FALSE([controller_ okButtonEnabled]);
102 [controller_ cancel:nil];
103 }
104
105 class BookmarkEditorControllerNoNodeTest : public CocoaTest {
106 public:
107 BrowserTestHelper browser_helper_;
108 BookmarkEditorController* controller_;
109
110 virtual void SetUp() {
111 CocoaTest::SetUp();
112 BookmarkModel* model = browser_helper_.profile()->GetBookmarkModel();
113 const BookmarkNode* parent = model->GetBookmarkBarNode();
114 controller_ = [[BookmarkEditorController alloc]
115 initWithParentWindow:test_window()
116 profile:browser_helper_.profile()
117 parent:parent
118 node:NULL
119 configuration:BookmarkEditor::NO_TREE
120 handler:nil];
121
122 [controller_ runAsModalSheet];
123 }
124
125 virtual void TearDown() {
126 controller_ = NULL;
127 CocoaTest::TearDown();
128 }
129 };
130
131 TEST_F(BookmarkEditorControllerNoNodeTest, NoNodeNoTree) {
132 EXPECT_EQ(@"", [controller_ displayName]);
133 EXPECT_EQ(@"", [controller_ displayURL]);
134 EXPECT_FALSE([controller_ okButtonEnabled]);
135 [controller_ cancel:nil];
136 }
137
138 class BookmarkEditorControllerYesNodeTest : public CocoaTest {
139 public:
140 BrowserTestHelper browser_helper_;
141 std::wstring default_title_;
142 const char* url_name_;
143 BookmarkEditorController* controller_;
144
145 virtual void SetUp() {
146 CocoaTest::SetUp();
147 BookmarkModel* model = browser_helper_.profile()->GetBookmarkModel();
148 const BookmarkNode* parent = model->GetBookmarkBarNode();
149 default_title_ = L"wooh title";
150 url_name_ = "http://www.zoom-baby-doo-da.com/";
151 const BookmarkNode* node = model->AddURL(parent, 0, default_title_,
152 GURL(url_name_));
153 controller_ = [[BookmarkEditorController alloc]
154 initWithParentWindow:test_window()
155 profile:browser_helper_.profile()
156 parent:parent
157 node:node
158 configuration:BookmarkEditor::NO_TREE
159 handler:nil];
160
161 [controller_ runAsModalSheet];
162 }
163
164 virtual void TearDown() {
165 controller_ = NULL;
166 CocoaTest::TearDown();
167 }
168 };
169
170 TEST_F(BookmarkEditorControllerYesNodeTest, YesNodeShowTree) {
171 EXPECT_TRUE([base::SysWideToNSString(default_title_)
172 isEqual:[controller_ displayName]]);
173 EXPECT_TRUE([[NSString stringWithCString:url_name_
174 encoding:NSUTF8StringEncoding]
175 isEqual:[controller_ displayURL]]);
176 [controller_ cancel:nil];
149 } 177 }
150 178
151 class BookmarkEditorControllerTreeTest : public CocoaTest { 179 class BookmarkEditorControllerTreeTest : public CocoaTest {
152 public: 180 public:
153 BrowserTestHelper helper_; 181 BrowserTestHelper browser_helper_;
154 BookmarkEditorController* default_controller_; 182 BookmarkEditorController* controller_;
155 const BookmarkNode* group_a_; 183 const BookmarkNode* group_a_;
156 const BookmarkNode* group_b_; 184 const BookmarkNode* group_b_;
157 const BookmarkNode* group_bb_; 185 const BookmarkNode* group_bb_;
158 const BookmarkNode* group_c_; 186 const BookmarkNode* group_c_;
159 const BookmarkNode* bookmark_bb_3_; 187 const BookmarkNode* bookmark_bb_3_;
160 188
161 BookmarkEditorControllerTreeTest() { 189 BookmarkEditorControllerTreeTest() {
162 // Set up a small bookmark hierarchy, which will look as follows: 190 // Set up a small bookmark hierarchy, which will look as follows:
163 // a b c d 191 // a b c d
164 // a-0 b-0 c-0 192 // a-0 b-0 c-0
165 // a-1 bb-0 c-1 193 // a-1 bb-0 c-1
166 // a-2 bb-1 c-2 194 // a-2 bb-1 c-2
167 // bb-2 195 // bb-2
168 // bb-3 196 // bb-3
169 // bb-4 197 // bb-4
170 // b-1 198 // b-1
171 // b-2 199 // b-2
172 BookmarkModel& model(*(helper_.profile()->GetBookmarkModel())); 200 BookmarkModel& model(*(browser_helper_.profile()->GetBookmarkModel()));
173 const BookmarkNode* root = model.GetBookmarkBarNode(); 201 const BookmarkNode* root = model.GetBookmarkBarNode();
174 group_a_ = model.AddGroup(root, 0, L"a"); 202 group_a_ = model.AddGroup(root, 0, L"a");
175 model.AddURL(group_a_, 0, L"a-0", GURL("http://a-0.com")); 203 model.AddURL(group_a_, 0, L"a-0", GURL("http://a-0.com"));
176 model.AddURL(group_a_, 1, L"a-1", GURL("http://a-1.com")); 204 model.AddURL(group_a_, 1, L"a-1", GURL("http://a-1.com"));
177 model.AddURL(group_a_, 2, L"a-2", GURL("http://a-2.com")); 205 model.AddURL(group_a_, 2, L"a-2", GURL("http://a-2.com"));
178 206
179 group_b_ = model.AddGroup(root, 1, L"b"); 207 group_b_ = model.AddGroup(root, 1, L"b");
180 model.AddURL(group_b_, 0, L"b-0", GURL("http://b-0.com")); 208 model.AddURL(group_b_, 0, L"b-0", GURL("http://b-0.com"));
181 group_bb_ = model.AddGroup(group_b_, 1, L"bb"); 209 group_bb_ = model.AddGroup(group_b_, 1, L"bb");
182 model.AddURL(group_bb_, 0, L"bb-0", GURL("http://bb-0.com")); 210 model.AddURL(group_bb_, 0, L"bb-0", GURL("http://bb-0.com"));
(...skipping 10 matching lines...) Expand all
193 model.AddURL(group_c_, 1, L"c-1", GURL("http://c-1.com")); 221 model.AddURL(group_c_, 1, L"c-1", GURL("http://c-1.com"));
194 model.AddURL(group_c_, 2, L"c-2", GURL("http://c-2.com")); 222 model.AddURL(group_c_, 2, L"c-2", GURL("http://c-2.com"));
195 model.AddURL(group_c_, 3, L"c-3", GURL("http://c-3.com")); 223 model.AddURL(group_c_, 3, L"c-3", GURL("http://c-3.com"));
196 224
197 model.AddURL(root, 3, L"d", GURL("http://d-0.com")); 225 model.AddURL(root, 3, L"d", GURL("http://d-0.com"));
198 } 226 }
199 227
200 virtual BookmarkEditorController* CreateController() { 228 virtual BookmarkEditorController* CreateController() {
201 return [[BookmarkEditorController alloc] 229 return [[BookmarkEditorController alloc]
202 initWithParentWindow:test_window() 230 initWithParentWindow:test_window()
203 profile:helper_.profile() 231 profile:browser_helper_.profile()
204 parent:group_bb_ 232 parent:group_bb_
205 node:bookmark_bb_3_ 233 node:bookmark_bb_3_
206 configuration:BookmarkEditor::SHOW_TREE 234 configuration:BookmarkEditor::SHOW_TREE
207 handler:nil]; 235 handler:nil];
208 } 236 }
209 237
210 virtual void SetUp() { 238 virtual void SetUp() {
211 CocoaTest::SetUp(); 239 controller_ = CreateController();
212 default_controller_ = CreateController(); 240 [controller_ runAsModalSheet];
213 EXPECT_TRUE([default_controller_ window]);
214 } 241 }
215 242
216 virtual void TearDown() { 243 virtual void TearDown() {
217 [default_controller_ close]; 244 controller_ = NULL;
218 CocoaTest::TearDown(); 245 CocoaTest::TearDown();
219 } 246 }
220 }; 247 };
221 248
222 TEST_F(BookmarkEditorControllerTreeTest, VerifyBookmarkTestModel) { 249 TEST_F(BookmarkEditorControllerTreeTest, VerifyBookmarkTestModel) {
223 BookmarkModel& model(*(helper_.profile()->GetBookmarkModel())); 250 BookmarkModel& model(*(browser_helper_.profile()->GetBookmarkModel()));
224 model.root_node(); 251 model.root_node();
225 const BookmarkNode& root(*model.GetBookmarkBarNode()); 252 const BookmarkNode& root(*model.GetBookmarkBarNode());
226 EXPECT_EQ(4, root.GetChildCount()); 253 EXPECT_EQ(4, root.GetChildCount());
227 const BookmarkNode* child = root.GetChild(0); 254 const BookmarkNode* child = root.GetChild(0);
228 EXPECT_EQ(3, child->GetChildCount()); 255 EXPECT_EQ(3, child->GetChildCount());
229 const BookmarkNode* subchild = child->GetChild(0); 256 const BookmarkNode* subchild = child->GetChild(0);
230 EXPECT_EQ(0, subchild->GetChildCount()); 257 EXPECT_EQ(0, subchild->GetChildCount());
231 subchild = child->GetChild(1); 258 subchild = child->GetChild(1);
232 EXPECT_EQ(0, subchild->GetChildCount()); 259 EXPECT_EQ(0, subchild->GetChildCount());
233 subchild = child->GetChild(2); 260 subchild = child->GetChild(2);
(...skipping 26 matching lines...) Expand all
260 EXPECT_EQ(0, subchild->GetChildCount()); 287 EXPECT_EQ(0, subchild->GetChildCount());
261 subchild = child->GetChild(1); 288 subchild = child->GetChild(1);
262 EXPECT_EQ(0, subchild->GetChildCount()); 289 EXPECT_EQ(0, subchild->GetChildCount());
263 subchild = child->GetChild(2); 290 subchild = child->GetChild(2);
264 EXPECT_EQ(0, subchild->GetChildCount()); 291 EXPECT_EQ(0, subchild->GetChildCount());
265 subchild = child->GetChild(3); 292 subchild = child->GetChild(3);
266 EXPECT_EQ(0, subchild->GetChildCount()); 293 EXPECT_EQ(0, subchild->GetChildCount());
267 294
268 child = root.GetChild(3); 295 child = root.GetChild(3);
269 EXPECT_EQ(0, child->GetChildCount()); 296 EXPECT_EQ(0, child->GetChildCount());
297 [controller_ cancel:nil];
270 } 298 }
271 299
272 TEST_F(BookmarkEditorControllerTreeTest, RenameBookmarkInPlace) { 300 TEST_F(BookmarkEditorControllerTreeTest, RenameBookmarkInPlace) {
273 const BookmarkNode* oldParent = bookmark_bb_3_->GetParent(); 301 const BookmarkNode* oldParent = bookmark_bb_3_->GetParent();
274 [default_controller_ setDisplayName:@"NEW NAME"]; 302 [controller_ setDisplayName:@"NEW NAME"];
275 [default_controller_ ok:nil]; 303 [controller_ ok:nil];
276 const BookmarkNode* newParent = bookmark_bb_3_->GetParent(); 304 const BookmarkNode* newParent = bookmark_bb_3_->GetParent();
277 ASSERT_EQ(newParent, oldParent); 305 ASSERT_EQ(newParent, oldParent);
278 int childIndex = newParent->IndexOfChild(bookmark_bb_3_); 306 int childIndex = newParent->IndexOfChild(bookmark_bb_3_);
279 ASSERT_EQ(3, childIndex); 307 ASSERT_EQ(3, childIndex);
280 } 308 }
281 309
282 TEST_F(BookmarkEditorControllerTreeTest, ChangeBookmarkURLInPlace) { 310 TEST_F(BookmarkEditorControllerTreeTest, ChangeBookmarkURLInPlace) {
283 const BookmarkNode* oldParent = bookmark_bb_3_->GetParent(); 311 const BookmarkNode* oldParent = bookmark_bb_3_->GetParent();
284 [default_controller_ setDisplayURL:@"http://NEWURL.com"]; 312 [controller_ setDisplayURL:@"http://NEWURL.com"];
285 [default_controller_ ok:nil]; 313 [controller_ ok:nil];
286 const BookmarkNode* newParent = bookmark_bb_3_->GetParent(); 314 const BookmarkNode* newParent = bookmark_bb_3_->GetParent();
287 ASSERT_EQ(newParent, oldParent); 315 ASSERT_EQ(newParent, oldParent);
288 int childIndex = newParent->IndexOfChild(bookmark_bb_3_); 316 int childIndex = newParent->IndexOfChild(bookmark_bb_3_);
289 ASSERT_EQ(3, childIndex); 317 ASSERT_EQ(3, childIndex);
290 } 318 }
291 319
292 TEST_F(BookmarkEditorControllerTreeTest, ChangeBookmarkGroup) { 320 TEST_F(BookmarkEditorControllerTreeTest, ChangeBookmarkGroup) {
293 [default_controller_ selectTestNodeInBrowser:group_c_]; 321 [controller_ selectTestNodeInBrowser:group_c_];
294 [default_controller_ ok:nil]; 322 [controller_ ok:nil];
295 const BookmarkNode* parent = bookmark_bb_3_->GetParent(); 323 const BookmarkNode* parent = bookmark_bb_3_->GetParent();
296 ASSERT_EQ(parent, group_c_); 324 ASSERT_EQ(parent, group_c_);
297 int childIndex = parent->IndexOfChild(bookmark_bb_3_); 325 int childIndex = parent->IndexOfChild(bookmark_bb_3_);
298 ASSERT_EQ(4, childIndex); 326 ASSERT_EQ(4, childIndex);
299 } 327 }
300 328
301 TEST_F(BookmarkEditorControllerTreeTest, ChangeNameAndBookmarkGroup) { 329 TEST_F(BookmarkEditorControllerTreeTest, ChangeNameAndBookmarkGroup) {
302 [default_controller_ setDisplayName:@"NEW NAME"]; 330 [controller_ setDisplayName:@"NEW NAME"];
303 [default_controller_ selectTestNodeInBrowser:group_c_]; 331 [controller_ selectTestNodeInBrowser:group_c_];
304 [default_controller_ ok:nil]; 332 [controller_ ok:nil];
305 const BookmarkNode* parent = bookmark_bb_3_->GetParent(); 333 const BookmarkNode* parent = bookmark_bb_3_->GetParent();
306 ASSERT_EQ(parent, group_c_); 334 ASSERT_EQ(parent, group_c_);
307 int childIndex = parent->IndexOfChild(bookmark_bb_3_); 335 int childIndex = parent->IndexOfChild(bookmark_bb_3_);
308 ASSERT_EQ(4, childIndex); 336 ASSERT_EQ(4, childIndex);
309 EXPECT_EQ(bookmark_bb_3_->GetTitle(), L"NEW NAME"); 337 EXPECT_EQ(bookmark_bb_3_->GetTitle(), L"NEW NAME");
310 } 338 }
311 339
312 TEST_F(BookmarkEditorControllerTreeTest, AddFolderWithGroupSelected) { 340 TEST_F(BookmarkEditorControllerTreeTest, AddFolderWithGroupSelected) {
313 [default_controller_ newFolder:nil]; 341 // Folders are NOT added unless the OK button is pressed.
314 [default_controller_ cancel:nil]; 342 [controller_ newFolder:nil];
315 EXPECT_EQ(6, group_bb_->GetChildCount()); 343 [controller_ cancel:nil];
316 const BookmarkNode* folderChild = group_bb_->GetChild(5); 344 EXPECT_EQ(5, group_bb_->GetChildCount());
317 EXPECT_EQ(folderChild->GetTitle(), L"New folder");
318 } 345 }
319 346
320 class BookmarkEditorControllerTreeNoNodeTest : 347 class BookmarkEditorControllerTreeNoNodeTest :
321 public BookmarkEditorControllerTreeTest { 348 public BookmarkEditorControllerTreeTest {
322 public: 349 public:
323 virtual BookmarkEditorController* CreateController() { 350 virtual BookmarkEditorController* CreateController() {
324 return [[BookmarkEditorController alloc] 351 return [[BookmarkEditorController alloc]
325 initWithParentWindow:test_window() 352 initWithParentWindow:test_window()
326 profile:helper_.profile() 353 profile:browser_helper_.profile()
327 parent:group_bb_ 354 parent:group_bb_
328 node:nil 355 node:nil
329 configuration:BookmarkEditor::SHOW_TREE 356 configuration:BookmarkEditor::SHOW_TREE
330 handler:nil]; 357 handler:nil];
331 } 358 }
332 359
333 }; 360 };
334 361
335 TEST_F(BookmarkEditorControllerTreeNoNodeTest, NewBookmarkNoNode) { 362 TEST_F(BookmarkEditorControllerTreeNoNodeTest, NewBookmarkNoNode) {
336 [default_controller_ setDisplayName:@"NEW BOOKMARK"]; 363 [controller_ setDisplayName:@"NEW BOOKMARK"];
337 [default_controller_ setDisplayURL:@"http://NEWURL.com"]; 364 [controller_ setDisplayURL:@"http://NEWURL.com"];
338 [default_controller_ ok:nil]; 365 [controller_ ok:nil];
339 const BookmarkNode* new_node = group_bb_->GetChild(5); 366 const BookmarkNode* new_node = group_bb_->GetChild(5);
340 ASSERT_EQ(0, new_node->GetChildCount()); 367 ASSERT_EQ(0, new_node->GetChildCount());
341 EXPECT_EQ(new_node->GetTitle(), L"NEW BOOKMARK"); 368 EXPECT_EQ(new_node->GetTitle(), L"NEW BOOKMARK");
342 EXPECT_EQ(new_node->GetURL(), GURL("http://NEWURL.com")); 369 EXPECT_EQ(new_node->GetURL(), GURL("http://NEWURL.com"));
343 } 370 }
344
345 class BookmarkEditorControllerTreeNoParentTest :
346 public BookmarkEditorControllerTreeTest {
347 public:
348 virtual BookmarkEditorController* CreateController() {
349 return [[BookmarkEditorController alloc]
350 initWithParentWindow:test_window()
351 profile:helper_.profile()
352 parent:nil
353 node:nil
354 configuration:BookmarkEditor::SHOW_TREE
355 handler:nil];
356 }
357 };
358
359 TEST_F(BookmarkEditorControllerTreeNoParentTest, AddFolderWithNoGroupSelected) {
360 [default_controller_ newFolder:nil];
361 [default_controller_ cancel:nil];
362 BookmarkModel* model = helper_.profile()->GetBookmarkModel();
363 const BookmarkNode* bookmarkBar = model->GetBookmarkBarNode();
364 EXPECT_EQ(5, bookmarkBar->GetChildCount());
365 const BookmarkNode* folderChild = bookmarkBar->GetChild(4);
366 EXPECT_EQ(folderChild->GetTitle(), L"New folder");
367 }
OLDNEW
« no previous file with comments | « chrome/browser/cocoa/bookmark_editor_controller.mm ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698