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 "components/bookmarks/browser/bookmark_index.h" | 5 #include "components/bookmarks/browser/bookmark_index.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include <string> | 9 #include <string> |
10 #include <vector> | 10 #include <vector> |
11 | 11 |
12 #include "base/macros.h" | 12 #include "base/macros.h" |
| 13 #include "base/memory/ptr_util.h" |
13 #include "base/strings/string_number_conversions.h" | 14 #include "base/strings/string_number_conversions.h" |
14 #include "base/strings/string_split.h" | 15 #include "base/strings/string_split.h" |
15 #include "base/strings/string_util.h" | 16 #include "base/strings/string_util.h" |
16 #include "base/strings/utf_string_conversions.h" | 17 #include "base/strings/utf_string_conversions.h" |
17 #include "components/bookmarks/browser/bookmark_match.h" | 18 #include "components/bookmarks/browser/bookmark_match.h" |
18 #include "components/bookmarks/browser/bookmark_model.h" | 19 #include "components/bookmarks/browser/bookmark_model.h" |
19 #include "components/bookmarks/test/bookmark_test_helpers.h" | 20 #include "components/bookmarks/test/bookmark_test_helpers.h" |
20 #include "components/bookmarks/test/test_bookmark_client.h" | 21 #include "components/bookmarks/test/test_bookmark_client.h" |
21 #include "testing/gtest/include/gtest/gtest.h" | 22 #include "testing/gtest/include/gtest/gtest.h" |
22 | 23 |
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
130 const BookmarkMatch::MatchPositions& actual_positions, | 131 const BookmarkMatch::MatchPositions& actual_positions, |
131 const BookmarkMatch::MatchPositions& expected_positions) { | 132 const BookmarkMatch::MatchPositions& expected_positions) { |
132 ASSERT_EQ(expected_positions.size(), actual_positions.size()); | 133 ASSERT_EQ(expected_positions.size(), actual_positions.size()); |
133 for (size_t i = 0; i < expected_positions.size(); ++i) { | 134 for (size_t i = 0; i < expected_positions.size(); ++i) { |
134 EXPECT_EQ(expected_positions[i].first, actual_positions[i].first); | 135 EXPECT_EQ(expected_positions[i].first, actual_positions[i].first); |
135 EXPECT_EQ(expected_positions[i].second, actual_positions[i].second); | 136 EXPECT_EQ(expected_positions[i].second, actual_positions[i].second); |
136 } | 137 } |
137 } | 138 } |
138 | 139 |
139 protected: | 140 protected: |
140 scoped_ptr<BookmarkModel> model_; | 141 std::unique_ptr<BookmarkModel> model_; |
141 | 142 |
142 private: | 143 private: |
143 DISALLOW_COPY_AND_ASSIGN(BookmarkIndexTest); | 144 DISALLOW_COPY_AND_ASSIGN(BookmarkIndexTest); |
144 }; | 145 }; |
145 | 146 |
146 // Various permutations with differing input, queries and output that exercises | 147 // Various permutations with differing input, queries and output that exercises |
147 // all query paths. | 148 // all query paths. |
148 TEST_F(BookmarkIndexTest, GetBookmarksMatching) { | 149 TEST_F(BookmarkIndexTest, GetBookmarksMatching) { |
149 struct TestData { | 150 struct TestData { |
150 const std::string titles; | 151 const std::string titles; |
(...skipping 368 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
519 { GURL("http://www.google.com/"), "Google", 100 }, | 520 { GURL("http://www.google.com/"), "Google", 100 }, |
520 { GURL("http://maps.google.com/"), "Google Maps", 40 }, | 521 { GURL("http://maps.google.com/"), "Google Maps", 40 }, |
521 { GURL("http://docs.google.com/"), "Google Docs", 50 }, | 522 { GURL("http://docs.google.com/"), "Google Docs", 50 }, |
522 { GURL("http://reader.google.com/"), "Google Reader", 80 }, | 523 { GURL("http://reader.google.com/"), "Google Reader", 80 }, |
523 }; | 524 }; |
524 | 525 |
525 std::map<GURL, int> typed_count_map; | 526 std::map<GURL, int> typed_count_map; |
526 for (size_t i = 0; i < arraysize(data); ++i) | 527 for (size_t i = 0; i < arraysize(data); ++i) |
527 typed_count_map.insert(std::make_pair(data[i].url, data[i].typed_count)); | 528 typed_count_map.insert(std::make_pair(data[i].url, data[i].typed_count)); |
528 | 529 |
529 scoped_ptr<BookmarkModel> model = TestBookmarkClient::CreateModelWithClient( | 530 std::unique_ptr<BookmarkModel> model = |
530 make_scoped_ptr(new BookmarkClientMock(typed_count_map))); | 531 TestBookmarkClient::CreateModelWithClient( |
| 532 base::WrapUnique(new BookmarkClientMock(typed_count_map))); |
531 | 533 |
532 for (size_t i = 0; i < arraysize(data); ++i) | 534 for (size_t i = 0; i < arraysize(data); ++i) |
533 // Populate the BookmarkIndex. | 535 // Populate the BookmarkIndex. |
534 model->AddURL( | 536 model->AddURL( |
535 model->other_node(), i, UTF8ToUTF16(data[i].title), data[i].url); | 537 model->other_node(), i, UTF8ToUTF16(data[i].title), data[i].url); |
536 | 538 |
537 // Populate match nodes. | 539 // Populate match nodes. |
538 std::vector<BookmarkMatch> matches; | 540 std::vector<BookmarkMatch> matches; |
539 model->GetBookmarksMatching(ASCIIToUTF16("google"), 4, &matches); | 541 model->GetBookmarksMatching(ASCIIToUTF16("google"), 4, &matches); |
540 | 542 |
(...skipping 12 matching lines...) Expand all Loading... |
553 // Select top two matches. | 555 // Select top two matches. |
554 model->GetBookmarksMatching(ASCIIToUTF16("google"), 2, &matches); | 556 model->GetBookmarksMatching(ASCIIToUTF16("google"), 2, &matches); |
555 | 557 |
556 ASSERT_EQ(2U, matches.size()); | 558 ASSERT_EQ(2U, matches.size()); |
557 EXPECT_EQ(data[0].url, matches[0].node->url()); | 559 EXPECT_EQ(data[0].url, matches[0].node->url()); |
558 EXPECT_EQ(data[3].url, matches[1].node->url()); | 560 EXPECT_EQ(data[3].url, matches[1].node->url()); |
559 } | 561 } |
560 | 562 |
561 } // namespace | 563 } // namespace |
562 } // namespace bookmarks | 564 } // namespace bookmarks |
OLD | NEW |