OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "base/base64.h" | 5 #include "base/base64.h" |
6 #include "base/strings/utf_string_conversions.h" | 6 #include "base/strings/utf_string_conversions.h" |
7 #include "components/bookmarks/browser/bookmark_model.h" | 7 #include "components/bookmarks/browser/bookmark_model.h" |
8 #include "components/bookmarks/test/test_bookmark_client.h" | 8 #include "components/bookmarks/test/test_bookmark_client.h" |
9 #include "components/enhanced_bookmarks/enhanced_bookmark_utils.h" | 9 #include "components/enhanced_bookmarks/enhanced_bookmark_utils.h" |
10 #include "testing/gtest/include/gtest/gtest.h" | 10 #include "testing/gtest/include/gtest/gtest.h" |
11 | 11 |
| 12 using bookmarks::TestBookmarkClient; |
| 13 |
12 namespace { | 14 namespace { |
13 | 15 |
14 const GURL bookmark_url("http://example.com/index.html"); | 16 const GURL bookmark_url("http://example.com/index.html"); |
15 | 17 |
16 class EnhancedBookmarkUtilsTest : public testing::Test { | 18 class EnhancedBookmarkUtilsTest : public testing::Test { |
17 public: | 19 public: |
18 EnhancedBookmarkUtilsTest() {} | 20 EnhancedBookmarkUtilsTest() {} |
19 virtual ~EnhancedBookmarkUtilsTest() {} | 21 virtual ~EnhancedBookmarkUtilsTest() {} |
20 | 22 |
21 protected: | 23 protected: |
22 DISALLOW_COPY_AND_ASSIGN(EnhancedBookmarkUtilsTest); | 24 DISALLOW_COPY_AND_ASSIGN(EnhancedBookmarkUtilsTest); |
23 | 25 |
24 // Adds a bookmark as the subnode at index 0 to other_node. | 26 // Adds a bookmark as the subnode at index 0 to other_node. |
25 // |name| should be ASCII encoded. | 27 // |name| should be ASCII encoded. |
26 // Returns the newly added bookmark. | 28 // Returns the newly added bookmark. |
27 const BookmarkNode* AddBookmark(BookmarkModel* model, std::string name) { | 29 const BookmarkNode* AddBookmark(BookmarkModel* model, std::string name) { |
28 return model->AddURL(model->other_node(), | 30 return model->AddURL(model->other_node(), |
29 0, // index. | 31 0, // index. |
30 base::ASCIIToUTF16(name), | 32 base::ASCIIToUTF16(name), |
31 bookmark_url); | 33 bookmark_url); |
32 } | 34 } |
33 }; | 35 }; |
34 | 36 |
35 TEST_F(EnhancedBookmarkUtilsTest, TestBookmarkSearch) { | 37 TEST_F(EnhancedBookmarkUtilsTest, TestBookmarkSearch) { |
36 test::TestBookmarkClient bookmark_client; | 38 TestBookmarkClient bookmark_client; |
37 scoped_ptr<BookmarkModel> bookmark_model(bookmark_client.CreateModel()); | 39 scoped_ptr<BookmarkModel> bookmark_model(bookmark_client.CreateModel()); |
38 const BookmarkNode* node1 = AddBookmark(bookmark_model.get(), "john hopkins"); | 40 const BookmarkNode* node1 = AddBookmark(bookmark_model.get(), "john hopkins"); |
39 const BookmarkNode* node2 = AddBookmark(bookmark_model.get(), "JohN hopkins"); | 41 const BookmarkNode* node2 = AddBookmark(bookmark_model.get(), "JohN hopkins"); |
40 const BookmarkNode* node3 = AddBookmark(bookmark_model.get(), "katy perry"); | 42 const BookmarkNode* node3 = AddBookmark(bookmark_model.get(), "katy perry"); |
41 const BookmarkNode* node4 = AddBookmark(bookmark_model.get(), "lil'john13"); | 43 const BookmarkNode* node4 = AddBookmark(bookmark_model.get(), "lil'john13"); |
42 const BookmarkNode* node5 = AddBookmark(bookmark_model.get(), "jo hn"); | 44 const BookmarkNode* node5 = AddBookmark(bookmark_model.get(), "jo hn"); |
43 | 45 |
44 std::vector<const BookmarkNode*> result = | 46 std::vector<const BookmarkNode*> result = |
45 enhanced_bookmarks::FindBookmarksWithQuery(bookmark_model.get(), "john"); | 47 enhanced_bookmarks::FindBookmarksWithQuery(bookmark_model.get(), "john"); |
46 ASSERT_EQ(result.size(), 3u); | 48 ASSERT_EQ(result.size(), 3u); |
47 | 49 |
48 CHECK(std::find(result.begin(), result.end(), node1) != result.end()); | 50 CHECK(std::find(result.begin(), result.end(), node1) != result.end()); |
49 CHECK(std::find(result.begin(), result.end(), node2) != result.end()); | 51 CHECK(std::find(result.begin(), result.end(), node2) != result.end()); |
50 CHECK(std::find(result.begin(), result.end(), node4) != result.end()); | 52 CHECK(std::find(result.begin(), result.end(), node4) != result.end()); |
51 | 53 |
52 CHECK(std::find(result.begin(), result.end(), node3) == result.end()); | 54 CHECK(std::find(result.begin(), result.end(), node3) == result.end()); |
53 CHECK(std::find(result.begin(), result.end(), node5) == result.end()); | 55 CHECK(std::find(result.begin(), result.end(), node5) == result.end()); |
54 }; | 56 }; |
55 | 57 |
56 } // namespace | 58 } // namespace |
OLD | NEW |