Upstream version 7.36.149.0
[platform/framework/web/crosswalk.git] / src / chrome / browser / ui / bookmarks / bookmark_editor_unittest.cc
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/core/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   test::TestBookmarkClient client;
17   scoped_ptr<BookmarkModel> model(client.CreateModel(false));
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