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

Side by Side Diff: components/undo/bookmark_undo_service_test.cc

Issue 1105413002: Avoid conversion of index to BookmarkNode pointer unnacessarily. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Changes as per review comments. Created 5 years, 7 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
« no previous file with comments | « components/undo/bookmark_undo_service.cc ('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 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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/undo/bookmark_undo_service.h" 5 #include "components/undo/bookmark_undo_service.h"
6 6
7 #include "base/strings/utf_string_conversions.h" 7 #include "base/strings/utf_string_conversions.h"
8 #include "components/bookmarks/browser/bookmark_model.h" 8 #include "components/bookmarks/browser/bookmark_model.h"
9 #include "components/bookmarks/test/bookmark_test_helpers.h" 9 #include "components/bookmarks/test/bookmark_test_helpers.h"
10 #include "components/bookmarks/test/test_bookmark_client.h" 10 #include "components/bookmarks/test/test_bookmark_client.h"
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
83 EXPECT_EQ(node->url(), GURL("http://www.bar.com")); 83 EXPECT_EQ(node->url(), GURL("http://www.bar.com"));
84 } 84 }
85 85
86 // Test that a bookmark removal action can be undone and redone. 86 // Test that a bookmark removal action can be undone and redone.
87 TEST_F(BookmarkUndoServiceTest, UndoBookmarkRemove) { 87 TEST_F(BookmarkUndoServiceTest, UndoBookmarkRemove) {
88 BookmarkModel* model = GetModel(); 88 BookmarkModel* model = GetModel();
89 BookmarkUndoService* undo_service = GetUndoService(); 89 BookmarkUndoService* undo_service = GetUndoService();
90 90
91 const BookmarkNode* parent = model->other_node(); 91 const BookmarkNode* parent = model->other_node();
92 model->AddURL(parent, 0, ASCIIToUTF16("foo"), GURL("http://www.bar.com")); 92 model->AddURL(parent, 0, ASCIIToUTF16("foo"), GURL("http://www.bar.com"));
93 model->Remove(parent, 0); 93 model->Remove(parent->GetChild(0));
94 94
95 EXPECT_EQ(2U, undo_service->undo_manager()->undo_count()); 95 EXPECT_EQ(2U, undo_service->undo_manager()->undo_count());
96 EXPECT_EQ(0U, undo_service->undo_manager()->redo_count()); 96 EXPECT_EQ(0U, undo_service->undo_manager()->redo_count());
97 97
98 // Undo the deletion of the only bookmark and check the bookmark values. 98 // Undo the deletion of the only bookmark and check the bookmark values.
99 undo_service->undo_manager()->Undo(); 99 undo_service->undo_manager()->Undo();
100 EXPECT_EQ(1, model->other_node()->child_count()); 100 EXPECT_EQ(1, model->other_node()->child_count());
101 const BookmarkNode* node = parent->GetChild(0); 101 const BookmarkNode* node = parent->GetChild(0);
102 EXPECT_EQ(node->GetTitle(), ASCIIToUTF16("foo")); 102 EXPECT_EQ(node->GetTitle(), ASCIIToUTF16("foo"));
103 EXPECT_EQ(node->url(), GURL("http://www.bar.com")); 103 EXPECT_EQ(node->url(), GURL("http://www.bar.com"));
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
225 // bookmark identifiers. 225 // bookmark identifiers.
226 TEST_F(BookmarkUndoServiceTest, UndoBookmarkRenameDelete) { 226 TEST_F(BookmarkUndoServiceTest, UndoBookmarkRenameDelete) {
227 BookmarkModel* model = GetModel(); 227 BookmarkModel* model = GetModel();
228 BookmarkUndoService* undo_service = GetUndoService(); 228 BookmarkUndoService* undo_service = GetUndoService();
229 229
230 const BookmarkNode* f1 = model->AddFolder(model->other_node(), 230 const BookmarkNode* f1 = model->AddFolder(model->other_node(),
231 0, 231 0,
232 ASCIIToUTF16("folder")); 232 ASCIIToUTF16("folder"));
233 model->AddURL(f1, 0, ASCIIToUTF16("foo"), GURL("http://www.foo.com")); 233 model->AddURL(f1, 0, ASCIIToUTF16("foo"), GURL("http://www.foo.com"));
234 model->SetTitle(f1, ASCIIToUTF16("Renamed")); 234 model->SetTitle(f1, ASCIIToUTF16("Renamed"));
235 model->Remove(model->other_node(), 0); 235 model->Remove(model->other_node()->GetChild(0));
236 236
237 // Undo the folder removal and ensure the folder and bookmark were restored. 237 // Undo the folder removal and ensure the folder and bookmark were restored.
238 undo_service->undo_manager()->Undo(); 238 undo_service->undo_manager()->Undo();
239 ASSERT_EQ(1, model->other_node()->child_count()); 239 ASSERT_EQ(1, model->other_node()->child_count());
240 ASSERT_EQ(1, model->other_node()->GetChild(0)->child_count()); 240 ASSERT_EQ(1, model->other_node()->GetChild(0)->child_count());
241 const BookmarkNode* node = model->other_node()->GetChild(0); 241 const BookmarkNode* node = model->other_node()->GetChild(0);
242 EXPECT_EQ(node->GetTitle(), ASCIIToUTF16("Renamed")); 242 EXPECT_EQ(node->GetTitle(), ASCIIToUTF16("Renamed"));
243 243
244 node = model->other_node()->GetChild(0)->GetChild(0); 244 node = model->other_node()->GetChild(0)->GetChild(0);
245 EXPECT_EQ(node->GetTitle(), ASCIIToUTF16("foo")); 245 EXPECT_EQ(node->GetTitle(), ASCIIToUTF16("foo"));
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after
359 TEST_F(BookmarkUndoServiceTest, UndoRemoveFolderWithBookmarks) { 359 TEST_F(BookmarkUndoServiceTest, UndoRemoveFolderWithBookmarks) {
360 BookmarkModel* model = GetModel(); 360 BookmarkModel* model = GetModel();
361 BookmarkUndoService* undo_service = GetUndoService(); 361 BookmarkUndoService* undo_service = GetUndoService();
362 362
363 // Setup bookmarks in the Other Bookmarks. 363 // Setup bookmarks in the Other Bookmarks.
364 const BookmarkNode* new_folder; 364 const BookmarkNode* new_folder;
365 const BookmarkNode* parent = model->other_node(); 365 const BookmarkNode* parent = model->other_node();
366 new_folder = model->AddFolder(parent, 0, ASCIIToUTF16("folder")); 366 new_folder = model->AddFolder(parent, 0, ASCIIToUTF16("folder"));
367 model->AddURL(new_folder, 0, ASCIIToUTF16("bar"), GURL("http://www.bar.com")); 367 model->AddURL(new_folder, 0, ASCIIToUTF16("bar"), GURL("http://www.bar.com"));
368 368
369 model->Remove(parent, 0); 369 model->Remove(parent->GetChild(0));
370 370
371 // Test that the undo restores the bookmark and folder. 371 // Test that the undo restores the bookmark and folder.
372 undo_service->undo_manager()->Undo(); 372 undo_service->undo_manager()->Undo();
373 373
374 ASSERT_EQ(1, model->other_node()->child_count()); 374 ASSERT_EQ(1, model->other_node()->child_count());
375 new_folder = model->other_node()->GetChild(0); 375 new_folder = model->other_node()->GetChild(0);
376 EXPECT_EQ(1, new_folder->child_count()); 376 EXPECT_EQ(1, new_folder->child_count());
377 const BookmarkNode* node = new_folder->GetChild(0); 377 const BookmarkNode* node = new_folder->GetChild(0);
378 EXPECT_EQ(node->GetTitle(), ASCIIToUTF16("bar")); 378 EXPECT_EQ(node->GetTitle(), ASCIIToUTF16("bar"));
379 EXPECT_EQ(node->url(), GURL("http://www.bar.com")); 379 EXPECT_EQ(node->url(), GURL("http://www.bar.com"));
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
412 while (undo_service->undo_manager()->undo_count()) 412 while (undo_service->undo_manager()->undo_count())
413 undo_service->undo_manager()->Undo(); 413 undo_service->undo_manager()->Undo();
414 414
415 EXPECT_EQ(1, parent->child_count()); 415 EXPECT_EQ(1, parent->child_count());
416 const BookmarkNode* node = model->other_node()->GetChild(0); 416 const BookmarkNode* node = model->other_node()->GetChild(0);
417 EXPECT_EQ(node->GetTitle(), ASCIIToUTF16("foo")); 417 EXPECT_EQ(node->GetTitle(), ASCIIToUTF16("foo"));
418 EXPECT_EQ(node->url(), GURL("http://www.foo.com")); 418 EXPECT_EQ(node->url(), GURL("http://www.foo.com"));
419 } 419 }
420 420
421 } // namespace 421 } // namespace
OLDNEW
« no previous file with comments | « components/undo/bookmark_undo_service.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698