summaryrefslogtreecommitdiffstats
path: root/chrome/browser/safe_browsing
diff options
context:
space:
mode:
authorshess@chromium.org <shess@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-14 05:28:52 +0000
committershess@chromium.org <shess@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-14 05:28:52 +0000
commit9d349ce7913ab3a2cb79e9277a86d6e529bcf20f (patch)
tree18408e540b6bcdf05aac337377b13936a3a715cb /chrome/browser/safe_browsing
parent4016ebc557bc508d273366d706bd4ffd98692579 (diff)
downloadchromium_src-9d349ce7913ab3a2cb79e9277a86d6e529bcf20f.zip
chromium_src-9d349ce7913ab3a2cb79e9277a86d6e529bcf20f.tar.gz
chromium_src-9d349ce7913ab3a2cb79e9277a86d6e529bcf20f.tar.bz2
[safe-browsing] Mechanical cleanups to tests and naming.
Pull out and extend a bunch of mechanical changes from: https://codereview.chromium.org/220493003/ in hopes that the actual functional changes will be cleaner. This includes: - cached_hits -> cache_hits - cached_hashes -> cache_hits - ASSERT_TRUE(UpdateStarted()) in db tests. - *_EQ() has expected value on the left in db tests. - ASSERT to check container sizes before dereferencing in db tests. - Compare list names as strings in db tests. - Consistently use prefix_hits for prefix hits in db tests. - Check prefix_hits before cache_hits in db tests. - Remove unused cache-related code from browser test. BUG=357763 Review URL: https://codereview.chromium.org/283873002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@270335 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/safe_browsing')
-rw-r--r--chrome/browser/safe_browsing/database_manager.cc10
-rw-r--r--chrome/browser/safe_browsing/database_manager.h2
-rw-r--r--chrome/browser/safe_browsing/safe_browsing_database.cc7
-rw-r--r--chrome/browser/safe_browsing/safe_browsing_database.h6
-rw-r--r--chrome/browser/safe_browsing/safe_browsing_database_unittest.cc531
-rw-r--r--chrome/browser/safe_browsing/safe_browsing_service_browsertest.cc43
6 files changed, 303 insertions, 296 deletions
diff --git a/chrome/browser/safe_browsing/database_manager.cc b/chrome/browser/safe_browsing/database_manager.cc
index 28c0916..ca5ecba 100644
--- a/chrome/browser/safe_browsing/database_manager.cc
+++ b/chrome/browser/safe_browsing/database_manager.cc
@@ -367,10 +367,10 @@ bool SafeBrowsingDatabaseManager::CheckBrowseUrl(const GURL& url,
}
std::vector<SBPrefix> prefix_hits;
- std::vector<SBFullHashResult> cached_hits;
+ std::vector<SBFullHashResult> cache_hits;
bool prefix_match =
- database_->ContainsBrowseUrl(url, &prefix_hits, &cached_hits);
+ database_->ContainsBrowseUrl(url, &prefix_hits, &cache_hits);
UMA_HISTOGRAM_TIMES("SB2.FilterCheck", base::TimeTicks::Now() - start);
@@ -384,9 +384,9 @@ bool SafeBrowsingDatabaseManager::CheckBrowseUrl(const GURL& url,
client,
safe_browsing_util::MALWARE,
expected_threats);
- check->need_get_hash = cached_hits.empty();
+ check->need_get_hash = cache_hits.empty();
check->prefix_hits.swap(prefix_hits);
- check->full_hits.swap(cached_hits);
+ check->cache_hits.swap(cache_hits);
checks_.insert(check);
BrowserThread::PostTask(
@@ -714,7 +714,7 @@ void SafeBrowsingDatabaseManager::OnCheckDone(SafeBrowsingCheck* check) {
} else {
// We may have cached results for previous GetHash queries. Since
// this data comes from cache, don't histogram hits.
- HandleOneCheck(check, check->full_hits);
+ HandleOneCheck(check, check->cache_hits);
}
}
diff --git a/chrome/browser/safe_browsing/database_manager.h b/chrome/browser/safe_browsing/database_manager.h
index 02105f6..6221693 100644
--- a/chrome/browser/safe_browsing/database_manager.h
+++ b/chrome/browser/safe_browsing/database_manager.h
@@ -76,7 +76,7 @@ class SafeBrowsingDatabaseManager
safe_browsing_util::ListType check_type; // See comment in constructor.
std::vector<SBThreatType> expected_threats;
std::vector<SBPrefix> prefix_hits;
- std::vector<SBFullHashResult> full_hits;
+ std::vector<SBFullHashResult> cache_hits;
// Vends weak pointers for TimeoutCallback(). If the response is
// received before the timeout fires, factory is destructed and
diff --git a/chrome/browser/safe_browsing/safe_browsing_database.cc b/chrome/browser/safe_browsing/safe_browsing_database.cc
index 268d970..a4a85e3 100644
--- a/chrome/browser/safe_browsing/safe_browsing_database.cc
+++ b/chrome/browser/safe_browsing/safe_browsing_database.cc
@@ -651,10 +651,10 @@ bool SafeBrowsingDatabaseNew::ResetDatabase() {
bool SafeBrowsingDatabaseNew::ContainsBrowseUrl(
const GURL& url,
std::vector<SBPrefix>* prefix_hits,
- std::vector<SBFullHashResult>* cached_hits) {
+ std::vector<SBFullHashResult>* cache_hits) {
// Clear the results first.
prefix_hits->clear();
- cached_hits->clear();
+ cache_hits->clear();
std::vector<SBFullHash> full_hashes;
BrowseFullHashesToCheck(url, false, &full_hashes);
@@ -687,8 +687,7 @@ bool SafeBrowsingDatabaseNew::ContainsBrowseUrl(
// Find matching cached gethash responses.
std::sort(prefix_hits->begin(), prefix_hits->end());
- GetCachedFullHashesForBrowse(*prefix_hits, cached_browse_hashes_,
- cached_hits);
+ GetCachedFullHashesForBrowse(*prefix_hits, cached_browse_hashes_, cache_hits);
return true;
}
diff --git a/chrome/browser/safe_browsing/safe_browsing_database.h b/chrome/browser/safe_browsing/safe_browsing_database.h
index 73b6564..f0d23e3 100644
--- a/chrome/browser/safe_browsing/safe_browsing_database.h
+++ b/chrome/browser/safe_browsing/safe_browsing_database.h
@@ -104,13 +104,13 @@ class SafeBrowsingDatabase {
virtual bool ResetDatabase() = 0;
// Returns false if |url| is not in the browse database. If it returns true,
- // then |prefix_hits| contains the list of prefix matches, and |cached_hits|
+ // then |prefix_hits| contains the list of prefix matches, and |cache_hits|
// contains the cached gethash results for those prefixes (if any). This
// function is safe to call from threads other than the creation thread.
virtual bool ContainsBrowseUrl(
const GURL& url,
std::vector<SBPrefix>* prefix_hits,
- std::vector<SBFullHashResult>* cached_hits) = 0;
+ std::vector<SBFullHashResult>* cache_hits) = 0;
// Returns false if none of |urls| are in Download database. If it returns
// true, |prefix_hits| should contain the prefixes for the URLs that were in
@@ -306,7 +306,7 @@ class SafeBrowsingDatabaseNew : public SafeBrowsingDatabase {
virtual bool ContainsBrowseUrl(
const GURL& url,
std::vector<SBPrefix>* prefix_hits,
- std::vector<SBFullHashResult>* cached_hits) OVERRIDE;
+ std::vector<SBFullHashResult>* cache_hits) OVERRIDE;
virtual bool ContainsDownloadUrl(const std::vector<GURL>& urls,
std::vector<SBPrefix>* prefix_hits) OVERRIDE;
virtual bool ContainsCsdWhitelistedUrl(const GURL& url) OVERRIDE;
diff --git a/chrome/browser/safe_browsing/safe_browsing_database_unittest.cc b/chrome/browser/safe_browsing/safe_browsing_database_unittest.cc
index 6656f2c..8e165c8 100644
--- a/chrome/browser/safe_browsing/safe_browsing_database_unittest.cc
+++ b/chrome/browser/safe_browsing/safe_browsing_database_unittest.cc
@@ -278,7 +278,7 @@ class SafeBrowsingDatabaseTest : public PlatformTest {
void GetListsInfo(std::vector<SBListChunkRanges>* lists) {
lists->clear();
- EXPECT_TRUE(database_->UpdateStarted(lists));
+ ASSERT_TRUE(database_->UpdateStarted(lists));
database_->UpdateFinished(true);
}
@@ -321,7 +321,7 @@ TEST_F(SafeBrowsingDatabaseTest, ListNameForBrowse) {
chunks.clear();
chunks.push_back(chunk);
std::vector<SBListChunkRanges> lists;
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kMalwareList, chunks);
chunk.hosts.clear();
@@ -340,8 +340,9 @@ TEST_F(SafeBrowsingDatabaseTest, ListNameForBrowse) {
database_->UpdateFinished(true);
GetListsInfo(&lists);
- EXPECT_TRUE(lists[0].name == safe_browsing_util::kMalwareList);
- EXPECT_EQ(lists[0].adds, "1-3");
+ ASSERT_LE(1U, lists.size());
+ EXPECT_EQ(safe_browsing_util::kMalwareList, lists[0].name);
+ EXPECT_EQ("1-3", lists[0].adds);
EXPECT_TRUE(lists[0].subs.empty());
// Insert a malware sub chunk.
@@ -351,19 +352,20 @@ TEST_F(SafeBrowsingDatabaseTest, ListNameForBrowse) {
chunks.clear();
chunks.push_back(chunk);
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kMalwareList, chunks);
database_->UpdateFinished(true);
GetListsInfo(&lists);
- EXPECT_TRUE(lists[0].name == safe_browsing_util::kMalwareList);
- EXPECT_EQ(lists[0].adds, "1-3");
- EXPECT_EQ(lists[0].subs, "7");
+ ASSERT_LE(1U, lists.size());
+ EXPECT_EQ(safe_browsing_util::kMalwareList, lists[0].name);
+ EXPECT_EQ("1-3", lists[0].adds);
+ EXPECT_EQ("7", lists[0].subs);
if (lists.size() == 2) {
// Old style database won't have the second entry since it creates the lists
// when it receives an update containing that list. The filter-based
// database has these values hard coded.
- EXPECT_TRUE(lists[1].name == safe_browsing_util::kPhishingList);
+ EXPECT_EQ(safe_browsing_util::kPhishingList, lists[1].name);
EXPECT_TRUE(lists[1].adds.empty());
EXPECT_TRUE(lists[1].subs.empty());
}
@@ -374,7 +376,7 @@ TEST_F(SafeBrowsingDatabaseTest, ListNameForBrowse) {
"www.evil.com/phishing.html");
chunks.clear();
chunks.push_back(chunk);
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kPhishingList, chunks);
// Insert some phishing sub chunks.
@@ -394,12 +396,13 @@ TEST_F(SafeBrowsingDatabaseTest, ListNameForBrowse) {
database_->UpdateFinished(true);
GetListsInfo(&lists);
- EXPECT_TRUE(lists[0].name == safe_browsing_util::kMalwareList);
- EXPECT_EQ(lists[0].adds, "1-3");
- EXPECT_EQ(lists[0].subs, "7");
- EXPECT_TRUE(lists[1].name == safe_browsing_util::kPhishingList);
- EXPECT_EQ(lists[1].adds, "47");
- EXPECT_EQ(lists[1].subs, "200-201");
+ ASSERT_EQ(2U, lists.size());
+ EXPECT_EQ(safe_browsing_util::kMalwareList, lists[0].name);
+ EXPECT_EQ("1-3", lists[0].adds);
+ EXPECT_EQ("7", lists[0].subs);
+ EXPECT_EQ(safe_browsing_util::kPhishingList, lists[1].name);
+ EXPECT_EQ("47", lists[1].adds);
+ EXPECT_EQ("200-201", lists[1].subs);
}
TEST_F(SafeBrowsingDatabaseTest, ListNameForBrowseAndDownload) {
@@ -429,7 +432,7 @@ TEST_F(SafeBrowsingDatabaseTest, ListNameForBrowseAndDownload) {
"www.evil.com/malware.html");
chunks.push_back(chunk);
std::vector<SBListChunkRanges> lists;
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kMalwareList, chunks);
chunk.hosts.clear();
@@ -481,26 +484,26 @@ TEST_F(SafeBrowsingDatabaseTest, ListNameForBrowseAndDownload) {
GetListsInfo(&lists);
ASSERT_EQ(7U, lists.size());
- EXPECT_TRUE(lists[0].name == safe_browsing_util::kMalwareList);
- EXPECT_EQ(lists[0].adds, "1");
+ EXPECT_EQ(safe_browsing_util::kMalwareList, lists[0].name);
+ EXPECT_EQ("1", lists[0].adds);
EXPECT_TRUE(lists[0].subs.empty());
- EXPECT_TRUE(lists[1].name == safe_browsing_util::kPhishingList);
- EXPECT_EQ(lists[1].adds, "2");
+ EXPECT_EQ(safe_browsing_util::kPhishingList, lists[1].name);
+ EXPECT_EQ("2", lists[1].adds);
EXPECT_TRUE(lists[1].subs.empty());
- EXPECT_TRUE(lists[2].name == safe_browsing_util::kBinUrlList);
- EXPECT_EQ(lists[2].adds, "3");
+ EXPECT_EQ(safe_browsing_util::kBinUrlList, lists[2].name);
+ EXPECT_EQ("3", lists[2].adds);
EXPECT_TRUE(lists[2].subs.empty());
- EXPECT_TRUE(lists[3].name == safe_browsing_util::kCsdWhiteList);
- EXPECT_EQ(lists[3].adds, "5");
+ EXPECT_EQ(safe_browsing_util::kCsdWhiteList, lists[3].name);
+ EXPECT_EQ("5", lists[3].adds);
EXPECT_TRUE(lists[3].subs.empty());
- EXPECT_TRUE(lists[4].name == safe_browsing_util::kDownloadWhiteList);
- EXPECT_EQ(lists[4].adds, "6");
+ EXPECT_EQ(safe_browsing_util::kDownloadWhiteList, lists[4].name);
+ EXPECT_EQ("6", lists[4].adds);
EXPECT_TRUE(lists[4].subs.empty());
- EXPECT_TRUE(lists[5].name == safe_browsing_util::kExtensionBlacklist);
- EXPECT_EQ(lists[5].adds, "8");
+ EXPECT_EQ(safe_browsing_util::kExtensionBlacklist, lists[5].name);
+ EXPECT_EQ("8", lists[5].adds);
EXPECT_TRUE(lists[5].subs.empty());
- EXPECT_TRUE(lists[6].name == safe_browsing_util::kIPBlacklist);
- EXPECT_EQ(lists[6].adds, "9");
+ EXPECT_EQ(safe_browsing_util::kIPBlacklist, lists[6].name);
+ EXPECT_EQ("9", lists[6].adds);
EXPECT_TRUE(lists[6].subs.empty());
database_.reset();
@@ -517,7 +520,7 @@ TEST_F(SafeBrowsingDatabaseTest, BrowseDatabase) {
"www.evil.com/malware.html");
chunks.push_back(chunk);
std::vector<SBListChunkRanges> lists;
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kMalwareList, chunks);
chunk.hosts.clear();
@@ -551,46 +554,49 @@ TEST_F(SafeBrowsingDatabaseTest, BrowseDatabase) {
// Make sure they were added correctly.
GetListsInfo(&lists);
- EXPECT_TRUE(lists[0].name == safe_browsing_util::kMalwareList);
- EXPECT_EQ(lists[0].adds, "1-3,7");
+ ASSERT_LE(1U, lists.size());
+ EXPECT_EQ(safe_browsing_util::kMalwareList, lists[0].name);
+ EXPECT_EQ("1-3,7", lists[0].adds);
EXPECT_TRUE(lists[0].subs.empty());
- std::vector<SBFullHashResult> cached_hashes;
std::vector<SBPrefix> prefix_hits;
+ std::vector<SBFullHashResult> cache_hits;
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/phishing.html"), &prefix_hits, &cached_hashes));
- EXPECT_EQ(prefix_hits[0], SBPrefixForString("www.evil.com/phishing.html"));
- EXPECT_EQ(prefix_hits.size(), 1U);
+ GURL("http://www.evil.com/phishing.html"), &prefix_hits, &cache_hits));
+ ASSERT_EQ(1U, prefix_hits.size());
+ EXPECT_EQ(SBPrefixForString("www.evil.com/phishing.html"), prefix_hits[0]);
+ EXPECT_TRUE(cache_hits.empty());
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/malware.html"), &prefix_hits, &cached_hashes));
+ GURL("http://www.evil.com/malware.html"), &prefix_hits, &cache_hits));
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/notevil1.html"), &prefix_hits, &cached_hashes));
+ GURL("http://www.evil.com/notevil1.html"), &prefix_hits, &cache_hits));
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/notevil2.html"), &prefix_hits, &cached_hashes));
+ GURL("http://www.evil.com/notevil2.html"), &prefix_hits, &cache_hits));
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.good.com/good1.html"), &prefix_hits, &cached_hashes));
+ GURL("http://www.good.com/good1.html"), &prefix_hits, &cache_hits));
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.good.com/good2.html"), &prefix_hits, &cached_hashes));
+ GURL("http://www.good.com/good2.html"), &prefix_hits, &cache_hits));
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://192.168.0.1/malware.html"), &prefix_hits, &cached_hashes));
+ GURL("http://192.168.0.1/malware.html"), &prefix_hits, &cache_hits));
EXPECT_FALSE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/"), &prefix_hits, &cached_hashes));
+ GURL("http://www.evil.com/"), &prefix_hits, &cache_hits));
EXPECT_TRUE(prefix_hits.empty());
+ EXPECT_TRUE(cache_hits.empty());
EXPECT_FALSE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/robots.txt"), &prefix_hits, &cached_hashes));
+ GURL("http://www.evil.com/robots.txt"), &prefix_hits, &cache_hits));
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/evil.html"), &prefix_hits, &cached_hashes));
+ GURL("http://www.evil.com/evil.html"), &prefix_hits, &cache_hits));
ASSERT_EQ(1U, prefix_hits.size());
- EXPECT_EQ(prefix_hits[0], SBPrefixForString("www.evil.com/evil.html"));
+ EXPECT_EQ(SBPrefixForString("www.evil.com/evil.html"), prefix_hits[0]);
// Attempt to re-add the first chunk (should be a no-op).
// see bug: http://code.google.com/p/chromium/issues/detail?id=4522
@@ -600,13 +606,14 @@ TEST_F(SafeBrowsingDatabaseTest, BrowseDatabase) {
"www.evil.com/malware.html");
chunks.clear();
chunks.push_back(chunk);
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kMalwareList, chunks);
database_->UpdateFinished(true);
GetListsInfo(&lists);
- EXPECT_TRUE(lists[0].name == safe_browsing_util::kMalwareList);
- EXPECT_EQ(lists[0].adds, "1-3,7");
+ ASSERT_LE(1U, lists.size());
+ EXPECT_EQ(safe_browsing_util::kMalwareList, lists[0].name);
+ EXPECT_EQ("1-3,7", lists[0].adds);
EXPECT_TRUE(lists[0].subs.empty());
// Test removing a single prefix from the add chunk.
@@ -615,32 +622,36 @@ TEST_F(SafeBrowsingDatabaseTest, BrowseDatabase) {
"www.evil.com/notevil1.html");
chunks.clear();
chunks.push_back(chunk);
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kMalwareList, chunks);
database_->UpdateFinished(true);
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/phishing.html"), &prefix_hits, &cached_hashes));
- EXPECT_EQ(prefix_hits[0], SBPrefixForString("www.evil.com/phishing.html"));
- EXPECT_EQ(prefix_hits.size(), 1U);
+ GURL("http://www.evil.com/phishing.html"), &prefix_hits, &cache_hits));
+ ASSERT_EQ(1U, prefix_hits.size());
+ EXPECT_EQ(SBPrefixForString("www.evil.com/phishing.html"), prefix_hits[0]);
+ EXPECT_TRUE(cache_hits.empty());
EXPECT_FALSE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/notevil1.html"), &prefix_hits, &cached_hashes));
+ GURL("http://www.evil.com/notevil1.html"), &prefix_hits, &cache_hits));
EXPECT_TRUE(prefix_hits.empty());
+ EXPECT_TRUE(cache_hits.empty());
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/notevil2.html"), &prefix_hits, &cached_hashes));
+ GURL("http://www.evil.com/notevil2.html"), &prefix_hits, &cache_hits));
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.good.com/good1.html"), &prefix_hits, &cached_hashes));
+ GURL("http://www.good.com/good1.html"), &prefix_hits, &cache_hits));
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.good.com/good2.html"), &prefix_hits, &cached_hashes));
+ GURL("http://www.good.com/good2.html"), &prefix_hits, &cache_hits));
GetListsInfo(&lists);
- EXPECT_TRUE(lists[0].name == safe_browsing_util::kMalwareList);
- EXPECT_EQ(lists[0].subs, "4");
+ ASSERT_LE(1U, lists.size());
+ EXPECT_EQ(safe_browsing_util::kMalwareList, lists[0].name);
+ EXPECT_EQ("1-3,7", lists[0].adds);
+ EXPECT_EQ("4", lists[0].subs);
// Test the same sub chunk again. This should be a no-op.
// see bug: http://code.google.com/p/chromium/issues/detail?id=4522
@@ -650,32 +661,35 @@ TEST_F(SafeBrowsingDatabaseTest, BrowseDatabase) {
chunks.clear();
chunks.push_back(chunk);
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kMalwareList, chunks);
database_->UpdateFinished(true);
GetListsInfo(&lists);
- EXPECT_TRUE(lists[0].name == safe_browsing_util::kMalwareList);
- EXPECT_EQ(lists[0].subs, "4");
+ ASSERT_LE(1U, lists.size());
+ EXPECT_EQ(safe_browsing_util::kMalwareList, lists[0].name);
+ EXPECT_EQ("1-3,7", lists[0].adds);
+ EXPECT_EQ("4", lists[0].subs);
// Test removing all the prefixes from an add chunk.
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
AddDelChunk(safe_browsing_util::kMalwareList, 2);
database_->UpdateFinished(true);
EXPECT_FALSE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/notevil2.html"), &prefix_hits, &cached_hashes));
+ GURL("http://www.evil.com/notevil2.html"), &prefix_hits, &cache_hits));
EXPECT_FALSE(database_->ContainsBrowseUrl(
- GURL("http://www.good.com/good1.html"), &prefix_hits, &cached_hashes));
+ GURL("http://www.good.com/good1.html"), &prefix_hits, &cache_hits));
EXPECT_FALSE(database_->ContainsBrowseUrl(
- GURL("http://www.good.com/good2.html"), &prefix_hits, &cached_hashes));
+ GURL("http://www.good.com/good2.html"), &prefix_hits, &cache_hits));
GetListsInfo(&lists);
- EXPECT_TRUE(lists[0].name == safe_browsing_util::kMalwareList);
- EXPECT_EQ(lists[0].adds, "1,3,7");
- EXPECT_EQ(lists[0].subs, "4");
+ ASSERT_LE(1U, lists.size());
+ EXPECT_EQ(safe_browsing_util::kMalwareList, lists[0].name);
+ EXPECT_EQ("1,3,7", lists[0].adds);
+ EXPECT_EQ("4", lists[0].subs);
// The adddel command exposed a bug in the transaction code where any
// transaction after it would fail. Add a dummy entry and remove it to
@@ -685,7 +699,7 @@ TEST_F(SafeBrowsingDatabaseTest, BrowseDatabase) {
"www.redherring.com/index.html");
chunks.clear();
chunks.push_back(chunk);
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kMalwareList, chunks);
// Now remove the dummy entry. If there are any problems with the
@@ -697,9 +711,10 @@ TEST_F(SafeBrowsingDatabaseTest, BrowseDatabase) {
database_->UpdateFinished(true);
GetListsInfo(&lists);
- EXPECT_TRUE(lists[0].name == safe_browsing_util::kMalwareList);
- EXPECT_EQ(lists[0].adds, "1,3,7");
- EXPECT_EQ(lists[0].subs, "");
+ ASSERT_LE(1U, lists.size());
+ EXPECT_EQ(safe_browsing_util::kMalwareList, lists[0].name);
+ EXPECT_EQ("1,3,7", lists[0].adds);
+ EXPECT_TRUE(lists[0].subs.empty());
// Test a sub command coming in before the add.
chunk.hosts.clear();
@@ -709,13 +724,14 @@ TEST_F(SafeBrowsingDatabaseTest, BrowseDatabase) {
"www.notevilanymore.com/good.html");
chunks.clear();
chunks.push_back(chunk);
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kMalwareList, chunks);
database_->UpdateFinished(true);
EXPECT_FALSE(database_->ContainsBrowseUrl(
GURL("http://www.notevilanymore.com/index.html"),
- &prefix_hits, &cached_hashes));
+ &prefix_hits,
+ &cache_hits));
// Now insert the tardy add chunk and we don't expect them to appear
// in database because of the previous sub chunk.
@@ -725,17 +741,19 @@ TEST_F(SafeBrowsingDatabaseTest, BrowseDatabase) {
"www.notevilanymore.com/good.html");
chunks.clear();
chunks.push_back(chunk);
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kMalwareList, chunks);
database_->UpdateFinished(true);
EXPECT_FALSE(database_->ContainsBrowseUrl(
GURL("http://www.notevilanymore.com/index.html"),
- &prefix_hits, &cached_hashes));
+ &prefix_hits,
+ &cache_hits));
EXPECT_FALSE(database_->ContainsBrowseUrl(
GURL("http://www.notevilanymore.com/good.html"),
- &prefix_hits, &cached_hashes));
+ &prefix_hits,
+ &cache_hits));
// Reset and reload the database. The database will rely on the prefix set.
database_.reset(new SafeBrowsingDatabaseNew);
@@ -743,19 +761,19 @@ TEST_F(SafeBrowsingDatabaseTest, BrowseDatabase) {
// Check that a prefix still hits.
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/phishing.html"), &prefix_hits, &cached_hashes));
- EXPECT_EQ(prefix_hits[0], SBPrefixForString("www.evil.com/phishing.html"));
- EXPECT_EQ(prefix_hits.size(), 1U);
+ GURL("http://www.evil.com/phishing.html"), &prefix_hits, &cache_hits));
+ ASSERT_EQ(1U, prefix_hits.size());
+ EXPECT_EQ(SBPrefixForString("www.evil.com/phishing.html"), prefix_hits[0]);
// Also check that it's not just always returning true in this case.
EXPECT_FALSE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/"), &prefix_hits, &cached_hashes));
+ GURL("http://www.evil.com/"), &prefix_hits, &cache_hits));
// Check that the full hash is still present.
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/evil.html"), &prefix_hits, &cached_hashes));
+ GURL("http://www.evil.com/evil.html"), &prefix_hits, &cache_hits));
ASSERT_EQ(1U, prefix_hits.size());
- EXPECT_EQ(prefix_hits[0], SBPrefixForString("www.evil.com/evil.html"));
+ EXPECT_EQ(SBPrefixForString("www.evil.com/evil.html"), prefix_hits[0]);
}
@@ -778,20 +796,23 @@ TEST_F(SafeBrowsingDatabaseTest, ZeroSizeChunk) {
chunks.push_back(chunk);
std::vector<SBListChunkRanges> lists;
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kMalwareList, chunks);
database_->UpdateFinished(true);
// Add an empty ADD and SUB chunk.
GetListsInfo(&lists);
- EXPECT_EQ(lists[0].adds, "1,10");
+ ASSERT_LE(1U, lists.size());
+ EXPECT_EQ(safe_browsing_util::kMalwareList, lists[0].name);
+ EXPECT_EQ("1,10", lists[0].adds);
+ EXPECT_TRUE(lists[0].subs.empty());
SBChunk empty_chunk;
empty_chunk.chunk_number = 19;
empty_chunk.is_add = true;
chunks.clear();
chunks.push_back(empty_chunk);
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kMalwareList, chunks);
chunks.clear();
empty_chunk.chunk_number = 7;
@@ -801,8 +822,10 @@ TEST_F(SafeBrowsingDatabaseTest, ZeroSizeChunk) {
database_->UpdateFinished(true);
GetListsInfo(&lists);
- EXPECT_EQ(lists[0].adds, "1,10,19");
- EXPECT_EQ(lists[0].subs, "7");
+ ASSERT_LE(1U, lists.size());
+ EXPECT_EQ(safe_browsing_util::kMalwareList, lists[0].name);
+ EXPECT_EQ("1,10,19", lists[0].adds);
+ EXPECT_EQ("7", lists[0].subs);
// Add an empty chunk along with a couple that contain data. This should
// result in the chunk range being reduced in size.
@@ -822,39 +845,43 @@ TEST_F(SafeBrowsingDatabaseTest, ZeroSizeChunk) {
"www.notempty.com/full2.html");
chunks.push_back(empty_chunk);
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kMalwareList, chunks);
database_->UpdateFinished(true);
- std::vector<SBFullHashResult> cached_hashes;
std::vector<SBPrefix> prefix_hits;
+ std::vector<SBFullHashResult> cache_hits;
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.notempty.com/full1.html"),
- &prefix_hits, &cached_hashes));
+ GURL("http://www.notempty.com/full1.html"), &prefix_hits, &cache_hits));
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.notempty.com/full2.html"),
- &prefix_hits, &cached_hashes));
+ GURL("http://www.notempty.com/full2.html"), &prefix_hits, &cache_hits));
GetListsInfo(&lists);
- EXPECT_EQ(lists[0].adds, "1,10,19-22");
- EXPECT_EQ(lists[0].subs, "7");
+ ASSERT_LE(1U, lists.size());
+ EXPECT_EQ(safe_browsing_util::kMalwareList, lists[0].name);
+ EXPECT_EQ("1,10,19-22", lists[0].adds);
+ EXPECT_EQ("7", lists[0].subs);
// Handle AddDel and SubDel commands for empty chunks.
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
AddDelChunk(safe_browsing_util::kMalwareList, 21);
database_->UpdateFinished(true);
GetListsInfo(&lists);
- EXPECT_EQ(lists[0].adds, "1,10,19-20,22");
- EXPECT_EQ(lists[0].subs, "7");
+ ASSERT_LE(1U, lists.size());
+ EXPECT_EQ(safe_browsing_util::kMalwareList, lists[0].name);
+ EXPECT_EQ("1,10,19-20,22", lists[0].adds);
+ EXPECT_EQ("7", lists[0].subs);
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
SubDelChunk(safe_browsing_util::kMalwareList, 7);
database_->UpdateFinished(true);
GetListsInfo(&lists);
- EXPECT_EQ(lists[0].adds, "1,10,19-20,22");
- EXPECT_EQ(lists[0].subs, "");
+ ASSERT_LE(1U, lists.size());
+ EXPECT_EQ(safe_browsing_util::kMalwareList, lists[0].name);
+ EXPECT_EQ("1,10,19-20,22", lists[0].adds);
+ EXPECT_TRUE(lists[0].subs.empty());
}
// Utility function for setting up the database for the caching test.
@@ -868,7 +895,7 @@ void SafeBrowsingDatabaseTest::PopulateDatabaseForCacheTest() {
chunks.push_back(chunk);
std::vector<SBListChunkRanges> lists;
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kMalwareList, chunks);
database_->UpdateFinished(true);
@@ -894,28 +921,26 @@ TEST_F(SafeBrowsingDatabaseTest, HashCaching) {
EXPECT_EQ(2U, database_->cached_browse_hashes_.size());
// Test the cache lookup for the first prefix.
- std::vector<SBPrefix> prefixes;
- std::vector<SBFullHashResult> cached_hashes;
+ std::vector<SBPrefix> prefix_hits;
+ std::vector<SBFullHashResult> cache_hits;
database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/phishing.html"), &prefixes, &cached_hashes);
- ASSERT_EQ(1U, cached_hashes.size());
- EXPECT_TRUE(
- SBFullHashEqual(cached_hashes[0].hash,
- SBFullHashForString("www.evil.com/phishing.html")));
+ GURL("http://www.evil.com/phishing.html"), &prefix_hits, &cache_hits);
+ ASSERT_EQ(1U, cache_hits.size());
+ EXPECT_TRUE(SBFullHashEqual(
+ cache_hits[0].hash, SBFullHashForString("www.evil.com/phishing.html")));
- prefixes.clear();
- cached_hashes.clear();
+ prefix_hits.clear();
+ cache_hits.clear();
// Test the cache lookup for the second prefix.
database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/malware.html"), &prefixes, &cached_hashes);
- ASSERT_EQ(1U, cached_hashes.size());
- EXPECT_TRUE(
- SBFullHashEqual(cached_hashes[0].hash,
- SBFullHashForString("www.evil.com/malware.html")));
+ GURL("http://www.evil.com/malware.html"), &prefix_hits, &cache_hits);
+ ASSERT_EQ(1U, cache_hits.size());
+ EXPECT_TRUE(SBFullHashEqual(
+ cache_hits[0].hash, SBFullHashForString("www.evil.com/malware.html")));
- prefixes.clear();
- cached_hashes.clear();
+ prefix_hits.clear();
+ cache_hits.clear();
// Test removing a prefix via a sub chunk.
SBChunk chunk;
@@ -925,38 +950,39 @@ TEST_F(SafeBrowsingDatabaseTest, HashCaching) {
chunks.push_back(chunk);
std::vector<SBListChunkRanges> lists;
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kMalwareList, chunks);
database_->UpdateFinished(true);
- // This prefix should still be there, but the fullhash is gone.
+ // This prefix should still be there, but cached fullhash should be gone.
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/malware.html"), &prefixes, &cached_hashes));
- ASSERT_EQ(1U, prefixes.size());
- EXPECT_EQ(SBPrefixForString("www.evil.com/malware.html"), prefixes[0]);
- EXPECT_TRUE(cached_hashes.empty());
- prefixes.clear();
- cached_hashes.clear();
+ GURL("http://www.evil.com/malware.html"), &prefix_hits, &cache_hits));
+ ASSERT_EQ(1U, prefix_hits.size());
+ EXPECT_EQ(SBPrefixForString("www.evil.com/malware.html"), prefix_hits[0]);
+ EXPECT_TRUE(cache_hits.empty());
+ prefix_hits.clear();
+ cache_hits.clear();
// This prefix should be gone.
database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/phishing.html"), &prefixes, &cached_hashes);
- EXPECT_TRUE(cached_hashes.empty());
+ GURL("http://www.evil.com/phishing.html"), &prefix_hits, &cache_hits);
+ EXPECT_TRUE(prefix_hits.empty());
+ EXPECT_TRUE(cache_hits.empty());
- prefixes.clear();
- cached_hashes.clear();
+ prefix_hits.clear();
+ cache_hits.clear();
// Test that an AddDel for the original chunk removes the last cached entry.
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
AddDelChunk(safe_browsing_util::kMalwareList, 1);
database_->UpdateFinished(true);
database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/malware.html"), &prefixes, &cached_hashes);
- EXPECT_TRUE(cached_hashes.empty());
+ GURL("http://www.evil.com/malware.html"), &prefix_hits, &cache_hits);
+ EXPECT_TRUE(cache_hits.empty());
EXPECT_TRUE(database_->cached_browse_hashes_.empty());
- prefixes.clear();
- cached_hashes.clear();
+ prefix_hits.clear();
+ cache_hits.clear();
// Test that the cache won't return expired values. First we have to adjust
// the cached entries' received time to make them older, since the database
@@ -979,18 +1005,18 @@ TEST_F(SafeBrowsingDatabaseTest, HashCaching) {
EXPECT_TRUE(iter != hash_cache->end());
database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/malware.html"), &prefixes, &cached_hashes);
- EXPECT_TRUE(cached_hashes.empty());
+ GURL("http://www.evil.com/malware.html"), &prefix_hits, &cache_hits);
+ EXPECT_TRUE(cache_hits.empty());
// This entry should still exist.
database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/phishing.html"), &prefixes, &cached_hashes);
- EXPECT_EQ(1U, cached_hashes.size());
+ GURL("http://www.evil.com/phishing.html"), &prefix_hits, &cache_hits);
+ EXPECT_EQ(1U, cache_hits.size());
// Testing prefix miss caching. First, we clear out the existing database,
// Since PopulateDatabaseForCacheTest() doesn't handle adding duplicate
// chunks.
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
AddDelChunk(safe_browsing_util::kMalwareList, 1);
database_->UpdateFinished(true);
@@ -1013,17 +1039,17 @@ TEST_F(SafeBrowsingDatabaseTest, HashCaching) {
// Cache a GetHash miss for a particular prefix, and even though the prefix is
// in the database, it is flagged as a miss so looking up the associated URL
// will not succeed.
- prefixes.clear();
- cached_hashes.clear();
+ prefix_hits.clear();
+ cache_hits.clear();
prefix_misses.clear();
empty_full_hash.clear();
prefix_misses.push_back(SBPrefixForString("www.evil.com/phishing.html"));
database_->CacheHashResults(prefix_misses, empty_full_hash, kCacheLifetime);
EXPECT_FALSE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/phishing.html"), &prefixes, &cached_hashes));
+ GURL("http://www.evil.com/phishing.html"), &prefix_hits, &cache_hits));
- prefixes.clear();
- cached_hashes.clear();
+ prefix_hits.clear();
+ cache_hits.clear();
// Test receiving a full add chunk.
chunk.hosts.clear();
@@ -1032,25 +1058,25 @@ TEST_F(SafeBrowsingDatabaseTest, HashCaching) {
"www.fullevil.com/bad2.html");
chunks.clear();
chunks.push_back(chunk);
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kMalwareList, chunks);
database_->UpdateFinished(true);
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.fullevil.com/bad1.html"), &prefixes, &cached_hashes));
- EXPECT_TRUE(cached_hashes.empty());
- ASSERT_EQ(1U, prefixes.size());
- EXPECT_EQ(SBPrefixForString("www.fullevil.com/bad1.html"), prefixes[0]);
- prefixes.clear();
- cached_hashes.clear();
+ GURL("http://www.fullevil.com/bad1.html"), &prefix_hits, &cache_hits));
+ ASSERT_EQ(1U, prefix_hits.size());
+ EXPECT_EQ(SBPrefixForString("www.fullevil.com/bad1.html"), prefix_hits[0]);
+ EXPECT_TRUE(cache_hits.empty());
+ prefix_hits.clear();
+ cache_hits.clear();
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.fullevil.com/bad2.html"), &prefixes, &cached_hashes));
- EXPECT_TRUE(cached_hashes.empty());
- ASSERT_EQ(1U, prefixes.size());
- EXPECT_EQ(SBPrefixForString("www.fullevil.com/bad2.html"), prefixes[0]);
- prefixes.clear();
- cached_hashes.clear();
+ GURL("http://www.fullevil.com/bad2.html"), &prefix_hits, &cache_hits));
+ ASSERT_EQ(1U, prefix_hits.size());
+ EXPECT_EQ(SBPrefixForString("www.fullevil.com/bad2.html"), prefix_hits[0]);
+ EXPECT_TRUE(cache_hits.empty());
+ prefix_hits.clear();
+ cache_hits.clear();
// Test receiving a full sub chunk, which will remove one of the full adds.
chunk.hosts.clear();
@@ -1059,32 +1085,33 @@ TEST_F(SafeBrowsingDatabaseTest, HashCaching) {
"www.fullevil.com/bad1.html");
chunks.clear();
chunks.push_back(chunk);
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kMalwareList, chunks);
database_->UpdateFinished(true);
EXPECT_FALSE(database_->ContainsBrowseUrl(
- GURL("http://www.fullevil.com/bad1.html"), &prefixes, &cached_hashes));
- EXPECT_TRUE(cached_hashes.empty());
+ GURL("http://www.fullevil.com/bad1.html"), &prefix_hits, &cache_hits));
+ EXPECT_TRUE(prefix_hits.empty());
+ EXPECT_TRUE(cache_hits.empty());
// There should be one remaining full add.
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.fullevil.com/bad2.html"), &prefixes, &cached_hashes));
- EXPECT_TRUE(cached_hashes.empty());
- ASSERT_EQ(1U, prefixes.size());
- EXPECT_EQ(SBPrefixForString("www.fullevil.com/bad2.html"), prefixes[0]);
- prefixes.clear();
- cached_hashes.clear();
+ GURL("http://www.fullevil.com/bad2.html"), &prefix_hits, &cache_hits));
+ ASSERT_EQ(1U, prefix_hits.size());
+ EXPECT_EQ(SBPrefixForString("www.fullevil.com/bad2.html"), prefix_hits[0]);
+ EXPECT_TRUE(cache_hits.empty());
+ prefix_hits.clear();
+ cache_hits.clear();
// Now test an AddDel for the remaining full add.
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
AddDelChunk(safe_browsing_util::kMalwareList, 20);
database_->UpdateFinished(true);
EXPECT_FALSE(database_->ContainsBrowseUrl(
- GURL("http://www.fullevil.com/bad1.html"), &prefixes, &cached_hashes));
+ GURL("http://www.fullevil.com/bad1.html"), &prefix_hits, &cache_hits));
EXPECT_FALSE(database_->ContainsBrowseUrl(
- GURL("http://www.fullevil.com/bad2.html"), &prefixes, &cached_hashes));
+ GURL("http://www.fullevil.com/bad2.html"), &prefix_hits, &cache_hits));
// Add a fullhash which has a prefix collision for a known url.
static const char kExampleFine[] = "www.example.com/fine.html";
@@ -1092,7 +1119,7 @@ TEST_F(SafeBrowsingDatabaseTest, HashCaching) {
"www.example.com/3123364814/malware.htm";
ASSERT_EQ(SBPrefixForString(kExampleFine),
SBPrefixForString(kExampleCollision));
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
{
SBChunkList chunks;
SBChunk chunk;
@@ -1116,11 +1143,11 @@ TEST_F(SafeBrowsingDatabaseTest, HashCaching) {
// Expect a prefix hit due to the collision between |kExampleFine| and
// |kExampleCollision|, with the gethash showing only |kExampleCollision|.
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL(std::string("http://") + kExampleFine), &prefixes, &cached_hashes));
- ASSERT_EQ(1U, prefixes.size());
- EXPECT_EQ(SBPrefixForString(kExampleFine), prefixes[0]);
- ASSERT_EQ(1U, cached_hashes.size());
- EXPECT_TRUE(SBFullHashEqual(cached_hashes[0].hash,
+ GURL(std::string("http://") + kExampleFine), &prefix_hits, &cache_hits));
+ ASSERT_EQ(1U, prefix_hits.size());
+ EXPECT_EQ(SBPrefixForString(kExampleFine), prefix_hits[0]);
+ ASSERT_EQ(1U, cache_hits.size());
+ EXPECT_TRUE(SBFullHashEqual(cache_hits[0].hash,
SBFullHashForString(kExampleCollision)));
}
@@ -1141,7 +1168,7 @@ TEST_F(SafeBrowsingDatabaseTest, DISABLED_FileCorruptionHandling) {
// This will cause an empty database to be created.
std::vector<SBListChunkRanges> lists;
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->UpdateFinished(true);
// Create a sub chunk to insert.
@@ -1175,7 +1202,7 @@ TEST_F(SafeBrowsingDatabaseTest, DISABLED_FileCorruptionHandling) {
ScopedLogMessageIgnorer ignorer;
// Start an update. The insert will fail due to corruption.
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kMalwareList, chunks);
database_->UpdateFinished(true);
@@ -1191,7 +1218,7 @@ TEST_F(SafeBrowsingDatabaseTest, DISABLED_FileCorruptionHandling) {
EXPECT_FALSE(base::PathExists(database_filename_));
// Run the update again successfully.
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kMalwareList, chunks);
database_->UpdateFinished(true);
EXPECT_TRUE(base::PathExists(database_filename_));
@@ -1226,7 +1253,7 @@ TEST_F(SafeBrowsingDatabaseTest, ContainsDownloadUrl) {
kEvil1Url1, kEvil1Url2);
chunks.push_back(chunk);
std::vector<SBListChunkRanges> lists;
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kBinUrlList, chunks);
database_->UpdateFinished(true);
@@ -1235,23 +1262,23 @@ TEST_F(SafeBrowsingDatabaseTest, ContainsDownloadUrl) {
urls[0] = GURL(std::string("http://") + kEvil1Url1);
EXPECT_TRUE(database_->ContainsDownloadUrl(urls, &prefix_hits));
- ASSERT_EQ(prefix_hits.size(), 1U);
- EXPECT_EQ(prefix_hits[0], SBPrefixForString(kEvil1Url1));
+ ASSERT_EQ(1U, prefix_hits.size());
+ EXPECT_EQ(SBPrefixForString(kEvil1Url1), prefix_hits[0]);
urls[0] = GURL(std::string("http://") + kEvil1Url2);
EXPECT_TRUE(database_->ContainsDownloadUrl(urls, &prefix_hits));
- ASSERT_EQ(prefix_hits.size(), 1U);
- EXPECT_EQ(prefix_hits[0], SBPrefixForString(kEvil1Url2));
+ ASSERT_EQ(1U, prefix_hits.size());
+ EXPECT_EQ(SBPrefixForString(kEvil1Url2), prefix_hits[0]);
urls[0] = GURL(std::string("https://") + kEvil1Url2);
EXPECT_TRUE(database_->ContainsDownloadUrl(urls, &prefix_hits));
- ASSERT_EQ(prefix_hits.size(), 1U);
- EXPECT_EQ(prefix_hits[0], SBPrefixForString(kEvil1Url2));
+ ASSERT_EQ(1U, prefix_hits.size());
+ EXPECT_EQ(SBPrefixForString(kEvil1Url2), prefix_hits[0]);
urls[0] = GURL(std::string("ftp://") + kEvil1Url2);
EXPECT_TRUE(database_->ContainsDownloadUrl(urls, &prefix_hits));
- ASSERT_EQ(prefix_hits.size(), 1U);
- EXPECT_EQ(prefix_hits[0], SBPrefixForString(kEvil1Url2));
+ ASSERT_EQ(1U, prefix_hits.size());
+ EXPECT_EQ(SBPrefixForString(kEvil1Url2), prefix_hits[0]);
urls[0] = GURL("http://www.randomevil.com");
EXPECT_FALSE(database_->ContainsDownloadUrl(urls, &prefix_hits));
@@ -1259,22 +1286,22 @@ TEST_F(SafeBrowsingDatabaseTest, ContainsDownloadUrl) {
// Should match with query args stripped.
urls[0] = GURL(std::string("http://") + kEvil1Url2 + "?blah");
EXPECT_TRUE(database_->ContainsDownloadUrl(urls, &prefix_hits));
- ASSERT_EQ(prefix_hits.size(), 1U);
- EXPECT_EQ(prefix_hits[0], SBPrefixForString(kEvil1Url2));
+ ASSERT_EQ(1U, prefix_hits.size());
+ EXPECT_EQ(SBPrefixForString(kEvil1Url2), prefix_hits[0]);
// Should match with extra path stuff and query args stripped.
urls[0] = GURL(std::string("http://") + kEvil1Url1 + "foo/bar?blah");
EXPECT_TRUE(database_->ContainsDownloadUrl(urls, &prefix_hits));
- ASSERT_EQ(prefix_hits.size(), 1U);
- EXPECT_EQ(prefix_hits[0], SBPrefixForString(kEvil1Url1));
+ ASSERT_EQ(1U, prefix_hits.size());
+ EXPECT_EQ(SBPrefixForString(kEvil1Url1), prefix_hits[0]);
// First hit in redirect chain is malware.
urls.clear();
urls.push_back(GURL(std::string("http://") + kEvil1Url1));
urls.push_back(GURL("http://www.randomevil.com"));
EXPECT_TRUE(database_->ContainsDownloadUrl(urls, &prefix_hits));
- ASSERT_EQ(prefix_hits.size(), 1U);
- EXPECT_EQ(prefix_hits[0], SBPrefixForString(kEvil1Url1));
+ ASSERT_EQ(1U, prefix_hits.size());
+ EXPECT_EQ(SBPrefixForString(kEvil1Url1), prefix_hits[0]);
// Middle hit in redirect chain is malware.
urls.clear();
@@ -1282,25 +1309,25 @@ TEST_F(SafeBrowsingDatabaseTest, ContainsDownloadUrl) {
urls.push_back(GURL(std::string("http://") + kEvil1Url1));
urls.push_back(GURL("http://www.randomevil2.com"));
EXPECT_TRUE(database_->ContainsDownloadUrl(urls, &prefix_hits));
- ASSERT_EQ(prefix_hits.size(), 1U);
- EXPECT_EQ(prefix_hits[0], SBPrefixForString(kEvil1Url1));
+ ASSERT_EQ(1U, prefix_hits.size());
+ EXPECT_EQ(SBPrefixForString(kEvil1Url1), prefix_hits[0]);
// Final hit in redirect chain is malware.
urls.clear();
urls.push_back(GURL("http://www.randomevil.com"));
urls.push_back(GURL(std::string("http://") + kEvil1Url1));
EXPECT_TRUE(database_->ContainsDownloadUrl(urls, &prefix_hits));
- ASSERT_EQ(prefix_hits.size(), 1U);
- EXPECT_EQ(prefix_hits[0], SBPrefixForString(kEvil1Url1));
+ ASSERT_EQ(1U, prefix_hits.size());
+ EXPECT_EQ(SBPrefixForString(kEvil1Url1), prefix_hits[0]);
// Multiple hits in redirect chain are in malware list.
urls.clear();
urls.push_back(GURL(std::string("http://") + kEvil1Url1));
urls.push_back(GURL(std::string("https://") + kEvil1Url2));
EXPECT_TRUE(database_->ContainsDownloadUrl(urls, &prefix_hits));
- ASSERT_EQ(prefix_hits.size(), 2U);
- EXPECT_EQ(prefix_hits[0], SBPrefixForString(kEvil1Url1));
- EXPECT_EQ(prefix_hits[1], SBPrefixForString(kEvil1Url2));
+ ASSERT_EQ(2U, prefix_hits.size());
+ EXPECT_EQ(SBPrefixForString(kEvil1Url1), prefix_hits[0]);
+ EXPECT_EQ(SBPrefixForString(kEvil1Url2), prefix_hits[1]);
database_.reset();
}
@@ -1371,7 +1398,7 @@ TEST_F(SafeBrowsingDatabaseTest, Whitelists) {
download_chunks.push_back(chunk);
std::vector<SBListChunkRanges> lists;
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kCsdWhiteList,
csd_chunks);
database_->InsertChunks(safe_browsing_util::kDownloadWhiteList,
@@ -1432,7 +1459,7 @@ TEST_F(SafeBrowsingDatabaseTest, Whitelists) {
&chunk, 15, "sb-ssl.google.com/",
"sb-ssl.google.com/safebrowsing/csd/killswitch_malware");
csd_chunks.push_back(chunk);
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kCsdWhiteList, csd_chunks);
database_->UpdateFinished(true);
@@ -1453,7 +1480,7 @@ TEST_F(SafeBrowsingDatabaseTest, Whitelists) {
"sb-ssl.google.com/safebrowsing/csd/killswitch");
download_chunks.push_back(chunk);
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kCsdWhiteList, csd_chunks);
database_->InsertChunks(safe_browsing_util::kDownloadWhiteList,
download_chunks);
@@ -1501,7 +1528,7 @@ TEST_F(SafeBrowsingDatabaseTest, Whitelists) {
"sb-ssl.google.com/safebrowsing/csd/killswitch");
download_chunks.push_back(sub_chunk);
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kCsdWhiteList, csd_chunks);
database_->InsertChunks(safe_browsing_util::kDownloadWhiteList,
download_chunks);
@@ -1547,12 +1574,13 @@ TEST_F(SafeBrowsingDatabaseTest, SameHostEntriesOkay) {
// Insert the testing chunks into database.
std::vector<SBListChunkRanges> lists;
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kMalwareList, chunks);
database_->UpdateFinished(true);
GetListsInfo(&lists);
- EXPECT_EQ(std::string(safe_browsing_util::kMalwareList), lists[0].name);
+ ASSERT_LE(1U, lists.size());
+ EXPECT_EQ(safe_browsing_util::kMalwareList, lists[0].name);
EXPECT_EQ("1", lists[0].adds);
EXPECT_TRUE(lists[0].subs.empty());
@@ -1565,28 +1593,30 @@ TEST_F(SafeBrowsingDatabaseTest, SameHostEntriesOkay) {
chunks.clear();
chunks.push_back(chunk);
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kPhishingList, chunks);
database_->UpdateFinished(true);
GetListsInfo(&lists);
- EXPECT_EQ(std::string(safe_browsing_util::kMalwareList), lists[0].name);
+ ASSERT_EQ(2U, lists.size());
+ EXPECT_EQ(safe_browsing_util::kMalwareList, lists[0].name);
EXPECT_EQ("1", lists[0].adds);
- EXPECT_EQ(std::string(safe_browsing_util::kPhishingList), lists[1].name);
+ EXPECT_TRUE(lists[0].subs.empty());
+ EXPECT_EQ(safe_browsing_util::kPhishingList, lists[1].name);
EXPECT_EQ("47", lists[1].adds);
+ EXPECT_TRUE(lists[1].subs.empty());
- std::vector<SBPrefix> prefixes;
- std::vector<SBFullHashResult> cached_hashes;
std::vector<SBPrefix> prefix_hits;
+ std::vector<SBFullHashResult> cache_hits;
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/malware1.html"), &prefixes, &cached_hashes));
+ GURL("http://www.evil.com/malware1.html"), &prefix_hits, &cache_hits));
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/malware2.html"), &prefixes, &cached_hashes));
+ GURL("http://www.evil.com/malware2.html"), &prefix_hits, &cache_hits));
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/phishing1.html"), &prefixes, &cached_hashes));
+ GURL("http://www.evil.com/phishing1.html"), &prefix_hits, &cache_hits));
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/phishing2.html"), &prefixes, &cached_hashes));
+ GURL("http://www.evil.com/phishing2.html"), &prefix_hits, &cache_hits));
// Test removing a single prefix from the add chunk.
// Remove the prefix that added first.
@@ -1595,7 +1625,7 @@ TEST_F(SafeBrowsingDatabaseTest, SameHostEntriesOkay) {
"www.evil.com/malware1.html");
chunks.clear();
chunks.push_back(chunk);
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kMalwareList, chunks);
database_->UpdateFinished(true);
@@ -1605,19 +1635,19 @@ TEST_F(SafeBrowsingDatabaseTest, SameHostEntriesOkay) {
"www.evil.com/phishing2.html");
chunks.clear();
chunks.push_back(chunk);
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->InsertChunks(safe_browsing_util::kPhishingList, chunks);
database_->UpdateFinished(true);
// Verify that the database contains urls expected.
EXPECT_FALSE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/malware1.html"), &prefixes, &cached_hashes));
+ GURL("http://www.evil.com/malware1.html"), &prefix_hits, &cache_hits));
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/malware2.html"), &prefixes, &cached_hashes));
+ GURL("http://www.evil.com/malware2.html"), &prefix_hits, &cache_hits));
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/phishing1.html"), &prefixes, &cached_hashes));
+ GURL("http://www.evil.com/phishing1.html"), &prefix_hits, &cache_hits));
EXPECT_FALSE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/phishing2.html"), &prefixes, &cached_hashes));
+ GURL("http://www.evil.com/phishing2.html"), &prefix_hits, &cache_hits));
}
// Test that an empty update doesn't actually update the database.
@@ -1631,7 +1661,7 @@ TEST_F(SafeBrowsingDatabaseTest, EmptyUpdate) {
// Prime the database.
std::vector<SBListChunkRanges> lists;
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
InsertAddChunkHostPrefixUrl(&chunk, 1, "www.evil.com/",
"www.evil.com/malware.html");
@@ -1652,7 +1682,7 @@ TEST_F(SafeBrowsingDatabaseTest, EmptyUpdate) {
// resolution of the lastmod time.
ASSERT_TRUE(base::TouchFile(filename, old_last_modified, old_last_modified));
ASSERT_TRUE(base::GetFileInfo(filename, &before_info));
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
chunk.hosts.clear();
InsertAddChunkHostPrefixUrl(&chunk, 2, "www.foo.com/",
"www.foo.com/malware.html");
@@ -1666,7 +1696,7 @@ TEST_F(SafeBrowsingDatabaseTest, EmptyUpdate) {
// Deleting a chunk updates the database file.
ASSERT_TRUE(base::TouchFile(filename, old_last_modified, old_last_modified));
ASSERT_TRUE(base::GetFileInfo(filename, &before_info));
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
AddDelChunk(safe_browsing_util::kMalwareList, chunk.chunk_number);
database_->UpdateFinished(true);
ASSERT_TRUE(base::GetFileInfo(filename, &after_info));
@@ -1676,7 +1706,7 @@ TEST_F(SafeBrowsingDatabaseTest, EmptyUpdate) {
// update the database file.
ASSERT_TRUE(base::TouchFile(filename, old_last_modified, old_last_modified));
ASSERT_TRUE(base::GetFileInfo(filename, &before_info));
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
database_->UpdateFinished(true);
ASSERT_TRUE(base::GetFileInfo(filename, &after_info));
EXPECT_EQ(before_info.last_modified, after_info.last_modified);
@@ -1692,7 +1722,7 @@ TEST_F(SafeBrowsingDatabaseTest, FilterFile) {
// Prime the database.
std::vector<SBListChunkRanges> lists;
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
InsertAddChunkHostPrefixUrl(&chunk, 1, "www.evil.com/",
"www.evil.com/malware.html");
@@ -1703,12 +1733,12 @@ TEST_F(SafeBrowsingDatabaseTest, FilterFile) {
}
// Find the malware url in the database, don't find a good url.
- std::vector<SBFullHashResult> cached_hashes;
std::vector<SBPrefix> prefix_hits;
+ std::vector<SBFullHashResult> cache_hits;
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/malware.html"), &prefix_hits, &cached_hashes));
+ GURL("http://www.evil.com/malware.html"), &prefix_hits, &cache_hits));
EXPECT_FALSE(database_->ContainsBrowseUrl(
- GURL("http://www.good.com/goodware.html"), &prefix_hits, &cached_hashes));
+ GURL("http://www.good.com/goodware.html"), &prefix_hits, &cache_hits));
base::FilePath filter_file = database_->PrefixSetForFilename(
database_->BrowseDBFilename(database_filename_));
@@ -1719,9 +1749,9 @@ TEST_F(SafeBrowsingDatabaseTest, FilterFile) {
database_.reset(new SafeBrowsingDatabaseNew);
database_->Init(database_filename_);
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/malware.html"), &prefix_hits, &cached_hashes));
+ GURL("http://www.evil.com/malware.html"), &prefix_hits, &cache_hits));
EXPECT_FALSE(database_->ContainsBrowseUrl(
- GURL("http://www.good.com/goodware.html"), &prefix_hits, &cached_hashes));
+ GURL("http://www.good.com/goodware.html"), &prefix_hits, &cache_hits));
// If there is no filter file, the database cannot find malware urls.
base::DeleteFile(filter_file, false);
@@ -1729,9 +1759,9 @@ TEST_F(SafeBrowsingDatabaseTest, FilterFile) {
database_.reset(new SafeBrowsingDatabaseNew);
database_->Init(database_filename_);
EXPECT_FALSE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/malware.html"), &prefix_hits, &cached_hashes));
+ GURL("http://www.evil.com/malware.html"), &prefix_hits, &cache_hits));
EXPECT_FALSE(database_->ContainsBrowseUrl(
- GURL("http://www.good.com/goodware.html"), &prefix_hits, &cached_hashes));
+ GURL("http://www.good.com/goodware.html"), &prefix_hits, &cache_hits));
}
TEST_F(SafeBrowsingDatabaseTest, MalwareIpBlacklist) {
@@ -1747,7 +1777,7 @@ TEST_F(SafeBrowsingDatabaseTest, MalwareIpBlacklist) {
ip_blacklist_store));
database_->Init(database_filename_);
std::vector<SBListChunkRanges> lists;
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
// IPv4 prefix match for ::ffff:192.168.1.0/120.
SBChunkList chunks;
@@ -1834,7 +1864,7 @@ TEST_F(SafeBrowsingDatabaseTest, MalwareIpBlacklist) {
TEST_F(SafeBrowsingDatabaseTest, ContainsBrowseURL) {
std::vector<SBListChunkRanges> lists;
- EXPECT_TRUE(database_->UpdateStarted(&lists));
+ ASSERT_TRUE(database_->UpdateStarted(&lists));
// Add a host-level hit.
{
@@ -1873,40 +1903,39 @@ TEST_F(SafeBrowsingDatabaseTest, ContainsBrowseURL) {
database_->UpdateFinished(true);
- std::vector<SBFullHashResult> cached_hashes;
std::vector<SBPrefix> prefix_hits;
+ std::vector<SBFullHashResult> cache_hits;
// Anything will hit the host prefix.
EXPECT_TRUE(database_->ContainsBrowseUrl(
- GURL("http://www.evil.com/malware.html"), &prefix_hits, &cached_hashes));
+ GURL("http://www.evil.com/malware.html"), &prefix_hits, &cache_hits));
ASSERT_EQ(1U, prefix_hits.size());
EXPECT_EQ(SBPrefixForString("www.evil.com/"), prefix_hits[0]);
- EXPECT_TRUE(cached_hashes.empty());
+ EXPECT_TRUE(cache_hits.empty());
// Hit the specific URL prefix.
EXPECT_TRUE(database_->ContainsBrowseUrl(
GURL(std::string("http://") + kWhateverMalware),
- &prefix_hits, &cached_hashes));
+ &prefix_hits, &cache_hits));
ASSERT_EQ(1U, prefix_hits.size());
EXPECT_EQ(SBPrefixForString(kWhateverMalware), prefix_hits[0]);
- EXPECT_TRUE(cached_hashes.empty());
+ EXPECT_TRUE(cache_hits.empty());
// Other URLs at that host are fine.
EXPECT_FALSE(database_->ContainsBrowseUrl(
- GURL("http://www.whatever.com/fine.html"), &prefix_hits, &cached_hashes));
+ GURL("http://www.whatever.com/fine.html"), &prefix_hits, &cache_hits));
EXPECT_TRUE(prefix_hits.empty());
- EXPECT_TRUE(cached_hashes.empty());
+ EXPECT_TRUE(cache_hits.empty());
// Hit the specific URL full hash.
EXPECT_TRUE(database_->ContainsBrowseUrl(
GURL(std::string("http://") + kExampleCollision),
- &prefix_hits, &cached_hashes));
+ &prefix_hits, &cache_hits));
ASSERT_EQ(1U, prefix_hits.size());
EXPECT_EQ(SBPrefixForString(kExampleCollision), prefix_hits[0]);
- EXPECT_TRUE(cached_hashes.empty());
+ EXPECT_TRUE(cache_hits.empty());
// This prefix collides, but no full hash match.
EXPECT_FALSE(database_->ContainsBrowseUrl(
- GURL(std::string("http://") + kExampleFine),
- &prefix_hits, &cached_hashes));
+ GURL(std::string("http://") + kExampleFine), &prefix_hits, &cache_hits));
}
diff --git a/chrome/browser/safe_browsing/safe_browsing_service_browsertest.cc b/chrome/browser/safe_browsing/safe_browsing_service_browsertest.cc
index 61c672e..5ba5da9 100644
--- a/chrome/browser/safe_browsing/safe_browsing_service_browsertest.cc
+++ b/chrome/browser/safe_browsing/safe_browsing_service_browsertest.cc
@@ -118,19 +118,20 @@ class TestSafeBrowsingDatabase : public SafeBrowsingDatabase {
virtual bool ContainsBrowseUrl(
const GURL& url,
std::vector<SBPrefix>* prefix_hits,
- std::vector<SBFullHashResult>* cached_hits) OVERRIDE {
- std::vector<GURL> urls(1, url);
+ std::vector<SBFullHashResult>* cache_hits) OVERRIDE {
+ cache_hits->clear();
return ContainsUrl(safe_browsing_util::MALWARE,
safe_browsing_util::PHISH,
- urls, prefix_hits, cached_hits);
+ std::vector<GURL>(1, url),
+ prefix_hits);
}
virtual bool ContainsDownloadUrl(
const std::vector<GURL>& urls,
std::vector<SBPrefix>* prefix_hits) OVERRIDE {
- std::vector<SBFullHashResult> full_hits;
bool found = ContainsUrl(safe_browsing_util::BINURL,
safe_browsing_util::BINURL,
- urls, prefix_hits, &full_hits);
+ urls,
+ prefix_hits);
if (!found)
return false;
DCHECK_LE(1U, prefix_hits->size());
@@ -174,7 +175,7 @@ class TestSafeBrowsingDatabase : public SafeBrowsingDatabase {
}
virtual void CacheHashResults(
const std::vector<SBPrefix>& prefixes,
- const std::vector<SBFullHashResult>& full_hits,
+ const std::vector<SBFullHashResult>& cache_hits,
const base::TimeDelta& cache_lifetime) OVERRIDE {
// Do nothing for the cache.
}
@@ -188,11 +189,9 @@ class TestSafeBrowsingDatabase : public SafeBrowsingDatabase {
// Fill up the database with test URL.
void AddUrl(const GURL& url,
int list_id,
- const std::vector<SBPrefix>& prefix_hits,
- const std::vector<SBFullHashResult>& full_hits) {
+ const std::vector<SBPrefix>& prefix_hits) {
badurls_[url.spec()].list_id = list_id;
badurls_[url.spec()].prefix_hits = prefix_hits;
- badurls_[url.spec()].full_hits = full_hits;
}
// Fill up the database with test hash digest.
@@ -204,14 +203,12 @@ class TestSafeBrowsingDatabase : public SafeBrowsingDatabase {
struct Hits {
int list_id;
std::vector<SBPrefix> prefix_hits;
- std::vector<SBFullHashResult> full_hits;
};
bool ContainsUrl(int list_id0,
int list_id1,
const std::vector<GURL>& urls,
- std::vector<SBPrefix>* prefix_hits,
- std::vector<SBFullHashResult>* full_hits) {
+ std::vector<SBPrefix>* prefix_hits) {
bool hit = false;
for (size_t i = 0; i < urls.size(); ++i) {
const GURL& url = urls[i];
@@ -226,12 +223,8 @@ class TestSafeBrowsingDatabase : public SafeBrowsingDatabase {
prefix_hits->insert(prefix_hits->end(),
badurls_it->second.prefix_hits.begin(),
badurls_it->second.prefix_hits.end());
- full_hits->insert(full_hits->end(),
- badurls_it->second.full_hits.begin(),
- badurls_it->second.full_hits.end());
hit = true;
}
-
}
return hit;
}
@@ -413,26 +406,13 @@ class SafeBrowsingServiceTest : public InProcessBrowserTest {
// Make sure the full hits is empty unless we need to test the
// full hash is hit in database's local cache.
- std::vector<SBFullHashResult> empty_full_hits;
TestSafeBrowsingDatabase* db = db_factory_.GetDb();
- db->AddUrl(url, full_hash.list_id, prefix_hits, empty_full_hits);
+ db->AddUrl(url, full_hash.list_id, prefix_hits);
TestProtocolManager* pm = pm_factory_.GetProtocolManager();
pm->SetGetFullHashResponse(full_hash);
}
- // This will setup the binary digest prefix in database and prepare protocol
- // manager to respond with the result hash.
- void SetupResponseForDigest(const std::string& digest,
- const SBFullHashResult& hash_result) {
- TestSafeBrowsingDatabase* db = db_factory_.GetDb();
- db->AddDownloadPrefix(
- safe_browsing_util::StringToSBFullHash(digest).prefix);
-
- TestProtocolManager* pm = pm_factory_.GetProtocolManager();
- pm->SetGetFullHashResponse(hash_result);
- }
-
bool ShowingInterstitialPage() {
WebContents* contents =
browser()->tab_strip_model()->GetActiveWebContents();
@@ -732,8 +712,7 @@ IN_PROC_BROWSER_TEST_F(SafeBrowsingServiceTest, CheckDownloadUrlTimedOut) {
// Now introducing delays and we should hit timeout.
//
SafeBrowsingService* sb_service = g_browser_process->safe_browsing_service();
- base::TimeDelta default_urlcheck_timeout =
- GetCheckTimeout(sb_service);
+ base::TimeDelta default_urlcheck_timeout = GetCheckTimeout(sb_service);
IntroduceGetHashDelay(base::TimeDelta::FromSeconds(1));
SetCheckTimeout(sb_service, base::TimeDelta::FromMilliseconds(1));
client->CheckDownloadUrl(badbin_urls);