| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 <algorithm> | 5 #include <algorithm> |
| 6 #include <fstream> | 6 #include <fstream> |
| 7 | 7 |
| 8 #include "base/auto_reset.h" | 8 #include "base/auto_reset.h" |
| 9 #include "base/files/file_path.h" | 9 #include "base/files/file_path.h" |
| 10 #include "base/files/file_util.h" | 10 #include "base/files/file_util.h" |
| (...skipping 531 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 542 // The results should have a very high score. | 542 // The results should have a very high score. |
| 543 EXPECT_GT(matches[0].raw_score, 900); | 543 EXPECT_GT(matches[0].raw_score, 900); |
| 544 EXPECT_EQ(32, matches[0].url_info.id()); | 544 EXPECT_EQ(32, matches[0].url_info.id()); |
| 545 EXPECT_EQ("https://nearlyperfectresult.com/", | 545 EXPECT_EQ("https://nearlyperfectresult.com/", |
| 546 matches[0].url_info.url().spec()); // Note: URL gets lowercased. | 546 matches[0].url_info.url().spec()); // Note: URL gets lowercased. |
| 547 EXPECT_EQ(ASCIIToUTF16("Practically Perfect Search Result"), | 547 EXPECT_EQ(ASCIIToUTF16("Practically Perfect Search Result"), |
| 548 matches[0].url_info.title()); | 548 matches[0].url_info.title()); |
| 549 EXPECT_FALSE(matches[0].can_inline); | 549 EXPECT_FALSE(matches[0].can_inline); |
| 550 | 550 |
| 551 // Search which should result in very poor result. | 551 // Search which should result in very poor result. |
| 552 // No results since it will be suppressed by default scoring. |
| 552 matches = url_index_->HistoryItemsForTerms(ASCIIToUTF16("qui c"), | 553 matches = url_index_->HistoryItemsForTerms(ASCIIToUTF16("qui c"), |
| 553 base::string16::npos, kMaxMatches); | 554 base::string16::npos, kMaxMatches); |
| 554 ASSERT_EQ(1U, matches.size()); | 555 ASSERT_EQ(0U, matches.size()); |
| 555 // The results should have a poor score. | |
| 556 EXPECT_LT(matches[0].raw_score, 500); | |
| 557 EXPECT_EQ(33, matches[0].url_info.id()); | |
| 558 EXPECT_EQ("http://quiteuselesssearchresultxyz.com/", | |
| 559 matches[0].url_info.url().spec()); // Note: URL gets lowercased. | |
| 560 EXPECT_EQ(ASCIIToUTF16("Practically Useless Search Result"), | |
| 561 matches[0].url_info.title()); | |
| 562 EXPECT_FALSE(matches[0].can_inline); | |
| 563 | 556 |
| 564 // Search which will match at the end of an URL with encoded characters. | 557 // Search which will match at the end of an URL with encoded characters. |
| 565 matches = url_index_->HistoryItemsForTerms(ASCIIToUTF16("Mice"), | 558 matches = url_index_->HistoryItemsForTerms(ASCIIToUTF16("Mice"), |
| 566 base::string16::npos, kMaxMatches); | 559 base::string16::npos, kMaxMatches); |
| 567 ASSERT_EQ(1U, matches.size()); | 560 ASSERT_EQ(1U, matches.size()); |
| 568 EXPECT_EQ(30, matches[0].url_info.id()); | 561 EXPECT_EQ(30, matches[0].url_info.id()); |
| 569 EXPECT_FALSE(matches[0].can_inline); | 562 EXPECT_FALSE(matches[0].can_inline); |
| 570 | 563 |
| 571 // Check that URLs are not escaped an escape time. | 564 // Check that URLs are not escaped an escape time. |
| 572 matches = url_index_->HistoryItemsForTerms(ASCIIToUTF16("1% wikipedia"), | 565 matches = url_index_->HistoryItemsForTerms(ASCIIToUTF16("1% wikipedia"), |
| (...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 672 ASSERT_EQ(2U, matches.size()); | 665 ASSERT_EQ(2U, matches.size()); |
| 673 // One match should be inline-able, the other not. | 666 // One match should be inline-able, the other not. |
| 674 EXPECT_TRUE(matches[0].can_inline != matches[1].can_inline); | 667 EXPECT_TRUE(matches[0].can_inline != matches[1].can_inline); |
| 675 | 668 |
| 676 // "www.cnn.com" - found, can inline | 669 // "www.cnn.com" - found, can inline |
| 677 matches = url_index_->HistoryItemsForTerms(ASCIIToUTF16("www.cnn.com"), | 670 matches = url_index_->HistoryItemsForTerms(ASCIIToUTF16("www.cnn.com"), |
| 678 base::string16::npos, kMaxMatches); | 671 base::string16::npos, kMaxMatches); |
| 679 ASSERT_EQ(1U, matches.size()); | 672 ASSERT_EQ(1U, matches.size()); |
| 680 EXPECT_TRUE(matches[0].can_inline); | 673 EXPECT_TRUE(matches[0].can_inline); |
| 681 | 674 |
| 682 // "ww.cnn.com" - found because we allow mid-term matches in hostnames | 675 // "ww.cnn.com" - found because we suppress mid-term matches. |
| 683 matches = url_index_->HistoryItemsForTerms(ASCIIToUTF16("ww.cnn.com"), | 676 matches = url_index_->HistoryItemsForTerms(ASCIIToUTF16("ww.cnn.com"), |
| 684 base::string16::npos, kMaxMatches); | 677 base::string16::npos, kMaxMatches); |
| 685 ASSERT_EQ(1U, matches.size()); | 678 ASSERT_EQ(0U, matches.size()); |
| 686 | 679 |
| 687 // "www.cnn.com" - found, can inline | 680 // "www.cnn.com" - found, can inline |
| 688 matches = url_index_->HistoryItemsForTerms(ASCIIToUTF16("www.cnn.com"), | 681 matches = url_index_->HistoryItemsForTerms(ASCIIToUTF16("www.cnn.com"), |
| 689 base::string16::npos, kMaxMatches); | 682 base::string16::npos, kMaxMatches); |
| 690 ASSERT_EQ(1U, matches.size()); | 683 ASSERT_EQ(1U, matches.size()); |
| 691 EXPECT_TRUE(matches[0].can_inline); | 684 EXPECT_TRUE(matches[0].can_inline); |
| 692 | 685 |
| 693 // "tp://www.cnn.com" - not found because we don't allow tp as a mid-term | 686 // "tp://www.cnn.com" - not found because we don't allow tp as a mid-term |
| 694 // match | 687 // match |
| 695 matches = url_index_->HistoryItemsForTerms(ASCIIToUTF16("tp://www.cnn.com"), | 688 matches = url_index_->HistoryItemsForTerms(ASCIIToUTF16("tp://www.cnn.com"), |
| (...skipping 660 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1356 ASSERT_TRUE(GetCacheFilePath(&full_file_path)); | 1349 ASSERT_TRUE(GetCacheFilePath(&full_file_path)); |
| 1357 std::vector<base::FilePath::StringType> actual_parts; | 1350 std::vector<base::FilePath::StringType> actual_parts; |
| 1358 full_file_path.GetComponents(&actual_parts); | 1351 full_file_path.GetComponents(&actual_parts); |
| 1359 ASSERT_EQ(expected_parts.size(), actual_parts.size()); | 1352 ASSERT_EQ(expected_parts.size(), actual_parts.size()); |
| 1360 size_t count = expected_parts.size(); | 1353 size_t count = expected_parts.size(); |
| 1361 for (size_t i = 0; i < count; ++i) | 1354 for (size_t i = 0; i < count; ++i) |
| 1362 EXPECT_EQ(expected_parts[i], actual_parts[i]); | 1355 EXPECT_EQ(expected_parts[i], actual_parts[i]); |
| 1363 // Must clear the history_dir_ to satisfy the dtor's DCHECK. | 1356 // Must clear the history_dir_ to satisfy the dtor's DCHECK. |
| 1364 set_history_dir(base::FilePath()); | 1357 set_history_dir(base::FilePath()); |
| 1365 } | 1358 } |
| OLD | NEW |