Home | History | Annotate | Download | only in bookmarks
      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
      3 // found in the LICENSE file.
      4 
      5 #include "chrome/browser/ui/bookmarks/bookmark_editor.h"
      6 
      7 #include "base/strings/utf_string_conversions.h"
      8 #include "components/bookmarks/test/test_bookmark_client.h"
      9 #include "testing/gtest/include/gtest/gtest.h"
     10 
     11 using base::ASCIIToUTF16;
     12 
     13 namespace {
     14 
     15 TEST(BookmarkEditorTest, ApplyEditsWithNoFolderChange) {
     16   bookmarks::TestBookmarkClient client;
     17   scoped_ptr<BookmarkModel> model(client.CreateModel());
     18   const BookmarkNode* bookmarkbar = model->bookmark_bar_node();
     19   model->AddURL(bookmarkbar, 0, ASCIIToUTF16("url0"), GURL("chrome://newtab"));
     20   model->AddURL(bookmarkbar, 1, ASCIIToUTF16("url1"), GURL("chrome://newtab"));
     21 
     22   {
     23     BookmarkEditor::EditDetails detail(
     24         BookmarkEditor::EditDetails::AddFolder(bookmarkbar, 1));
     25     BookmarkEditor::ApplyEditsWithNoFolderChange(model.get(),
     26                                                  bookmarkbar,
     27                                                  detail,
     28                                                  ASCIIToUTF16("folder0"),
     29                                                  GURL(std::string()));
     30     EXPECT_EQ(ASCIIToUTF16("folder0"), bookmarkbar->GetChild(1)->GetTitle());
     31   }
     32   {
     33     BookmarkEditor::EditDetails detail(
     34         BookmarkEditor::EditDetails::AddFolder(bookmarkbar, -1));
     35     BookmarkEditor::ApplyEditsWithNoFolderChange(model.get(),
     36                                                  bookmarkbar,
     37                                                  detail,
     38                                                  ASCIIToUTF16("folder1"),
     39                                                  GURL(std::string()));
     40     EXPECT_EQ(ASCIIToUTF16("folder1"), bookmarkbar->GetChild(3)->GetTitle());
     41   }
     42   {
     43     BookmarkEditor::EditDetails detail(
     44         BookmarkEditor::EditDetails::AddFolder(bookmarkbar, 10));
     45     BookmarkEditor::ApplyEditsWithNoFolderChange(model.get(),
     46                                                  bookmarkbar,
     47                                                  detail,
     48                                                  ASCIIToUTF16("folder2"),
     49                                                  GURL(std::string()));
     50     EXPECT_EQ(ASCIIToUTF16("folder2"), bookmarkbar->GetChild(4)->GetTitle());
     51   }
     52 }
     53 
     54 }  // namespace
     55