diff options
author | paulg@google.com <paulg@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-01-08 01:22:30 +0000 |
---|---|---|
committer | paulg@google.com <paulg@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-01-08 01:22:30 +0000 |
commit | 3b0f5f6fb61bd3a896670d91e8aa42c4e2c772b9 (patch) | |
tree | a15d63db3fda923116a959397c0da2023c37f2ee /chrome/browser/safe_browsing/protocol_parser_unittest.cc | |
parent | 9162a11c97dd8f1a8a701f5ce04905b0cf41991e (diff) | |
download | chromium_src-3b0f5f6fb61bd3a896670d91e8aa42c4e2c772b9.zip chromium_src-3b0f5f6fb61bd3a896670d91e8aa42c4e2c772b9.tar.gz chromium_src-3b0f5f6fb61bd3a896670d91e8aa42c4e2c772b9.tar.bz2 |
Ignore GetHash results for lists that we don't support.
BUG=5597 (http://crbug.com/5597)
Review URL: http://codereview.chromium.org/16595
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7710 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/safe_browsing/protocol_parser_unittest.cc')
-rw-r--r-- | chrome/browser/safe_browsing/protocol_parser_unittest.cc | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/chrome/browser/safe_browsing/protocol_parser_unittest.cc b/chrome/browser/safe_browsing/protocol_parser_unittest.cc index b5799cd..e651c14 100644 --- a/chrome/browser/safe_browsing/protocol_parser_unittest.cc +++ b/chrome/browser/safe_browsing/protocol_parser_unittest.cc @@ -491,6 +491,47 @@ TEST(SafeBrowsingProtocolParsingTest, TestGetHashWithMac) { EXPECT_EQ(memcmp(hash_result, &full_hashes[0].hash, sizeof(SBFullHash)), 0); } +TEST(SafeBrowsingProtocolParsingTest, TestGetHashWithUnknownList) { + std::string hash_response = "goog-phish-shavar:1:32\n" + "12345678901234567890123456789012" + "googpub-phish-shavar:19:32\n" + "09876543210987654321098765432109"; + bool re_key = false; + std::string key = ""; + std::vector<SBFullHashResult> full_hashes; + SafeBrowsingProtocolParser parser; + EXPECT_TRUE(parser.ParseGetHash(hash_response.data(), + hash_response.size(), + key, + &re_key, + &full_hashes)); + + EXPECT_EQ(full_hashes.size(), 1); + EXPECT_EQ(memcmp("12345678901234567890123456789012", + &full_hashes[0].hash, sizeof(SBFullHash)), 0); + EXPECT_EQ(full_hashes[0].list_name, "goog-phish-shavar"); + EXPECT_EQ(full_hashes[0].add_chunk_id, 1); + + hash_response += "goog-malware-shavar:7:32\n" + "abcdefghijklmnopqrstuvwxyz123457"; + full_hashes.clear(); + EXPECT_TRUE(parser.ParseGetHash(hash_response.data(), + hash_response.size(), + key, + &re_key, + &full_hashes)); + + EXPECT_EQ(full_hashes.size(), 2); + EXPECT_EQ(memcmp("12345678901234567890123456789012", + &full_hashes[0].hash, sizeof(SBFullHash)), 0); + EXPECT_EQ(full_hashes[0].list_name, "goog-phish-shavar"); + EXPECT_EQ(full_hashes[0].add_chunk_id, 1); + EXPECT_EQ(memcmp("abcdefghijklmnopqrstuvwxyz123457", + &full_hashes[1].hash, sizeof(SBFullHash)), 0); + EXPECT_EQ(full_hashes[1].list_name, "goog-malware-shavar"); + EXPECT_EQ(full_hashes[1].add_chunk_id, 7); +} + TEST(SafeBrowsingProtocolParsingTest, TestFormatHash) { SafeBrowsingProtocolParser parser; std::vector<SBPrefix> prefixes; |