Index: net/base/sdch_manager_unittest.cc |
diff --git a/net/base/sdch_manager_unittest.cc b/net/base/sdch_manager_unittest.cc |
index 83418adde7dc782bef8702fb9744fcbeb6bd2abd..964b1d67650dfde7318bde9c801955d3e268aca7 100644 |
--- a/net/base/sdch_manager_unittest.cc |
+++ b/net/base/sdch_manager_unittest.cc |
@@ -8,6 +8,7 @@ |
#include "base/logging.h" |
#include "base/memory/scoped_ptr.h" |
+#include "net/base/net_log.h" |
#include "net/base/sdch_manager.h" |
#include "testing/gtest/include/gtest/gtest.h" |
@@ -41,7 +42,7 @@ class SdchManagerTest : public testing::Test { |
const GURL& gurl) { |
std::string list; |
sdch_manager_->GetAvailDictionaryList(gurl, &list); |
- sdch_manager_->AddSdchDictionary(dictionary_text, gurl); |
+ sdch_manager_->AddSdchDictionary(dictionary_text, gurl, BoundNetLog()); |
std::string list2; |
sdch_manager_->GetAvailDictionaryList(gurl, &list2); |
@@ -70,31 +71,39 @@ TEST_F(SdchManagerTest, DomainSupported) { |
GURL google_url("http://www.google.com"); |
SdchManager::EnableSdchSupport(false); |
- EXPECT_FALSE(sdch_manager()->IsInSupportedDomain(google_url)); |
+ EXPECT_EQ(SdchManager::SDCH_DISABLED, |
+ sdch_manager()->IsInSupportedDomain(google_url)); |
SdchManager::EnableSdchSupport(true); |
- EXPECT_TRUE(sdch_manager()->IsInSupportedDomain(google_url)); |
+ EXPECT_EQ(SdchManager::PROBLEM_CODE_OK, |
+ sdch_manager()->IsInSupportedDomain(google_url)); |
} |
TEST_F(SdchManagerTest, DomainBlacklisting) { |
GURL test_url("http://www.test.com"); |
GURL google_url("http://www.google.com"); |
- sdch_manager()->BlacklistDomain(test_url, SdchManager::MIN_PROBLEM_CODE); |
- EXPECT_FALSE(sdch_manager()->IsInSupportedDomain(test_url)); |
- EXPECT_TRUE(sdch_manager()->IsInSupportedDomain(google_url)); |
+ sdch_manager()->BlacklistDomain(test_url, SdchManager::PROBLEM_CODE_OK); |
+ EXPECT_EQ(SdchManager::DOMAIN_BLACKLIST_INCLUDES_TARGET, |
+ sdch_manager()->IsInSupportedDomain(test_url)); |
+ EXPECT_EQ(SdchManager::PROBLEM_CODE_OK, |
+ sdch_manager()->IsInSupportedDomain(google_url)); |
- sdch_manager()->BlacklistDomain(google_url, SdchManager::MIN_PROBLEM_CODE); |
- EXPECT_FALSE(sdch_manager()->IsInSupportedDomain(google_url)); |
+ sdch_manager()->BlacklistDomain(google_url, SdchManager::PROBLEM_CODE_OK); |
+ EXPECT_EQ(SdchManager::DOMAIN_BLACKLIST_INCLUDES_TARGET, |
+ sdch_manager()->IsInSupportedDomain(google_url)); |
} |
TEST_F(SdchManagerTest, DomainBlacklistingCaseSensitivity) { |
GURL test_url("http://www.TesT.com"); |
GURL test2_url("http://www.tEst.com"); |
- EXPECT_TRUE(sdch_manager()->IsInSupportedDomain(test_url)); |
- EXPECT_TRUE(sdch_manager()->IsInSupportedDomain(test2_url)); |
- sdch_manager()->BlacklistDomain(test_url, SdchManager::MIN_PROBLEM_CODE); |
- EXPECT_FALSE(sdch_manager()->IsInSupportedDomain(test2_url)); |
+ EXPECT_EQ(SdchManager::PROBLEM_CODE_OK, |
+ sdch_manager()->IsInSupportedDomain(test_url)); |
+ EXPECT_EQ(SdchManager::PROBLEM_CODE_OK, |
+ sdch_manager()->IsInSupportedDomain(test2_url)); |
+ sdch_manager()->BlacklistDomain(test_url, SdchManager::PROBLEM_CODE_OK); |
+ EXPECT_EQ(SdchManager::DOMAIN_BLACKLIST_INCLUDES_TARGET, |
+ sdch_manager()->IsInSupportedDomain(test2_url)); |
} |
TEST_F(SdchManagerTest, BlacklistingReset) { |
@@ -104,7 +113,8 @@ TEST_F(SdchManagerTest, BlacklistingReset) { |
sdch_manager()->ClearBlacklistings(); |
EXPECT_EQ(sdch_manager()->BlackListDomainCount(domain), 0); |
EXPECT_EQ(sdch_manager()->BlacklistDomainExponential(domain), 0); |
- EXPECT_TRUE(sdch_manager()->IsInSupportedDomain(gurl)); |
+ EXPECT_EQ(SdchManager::PROBLEM_CODE_OK, |
+ sdch_manager()->IsInSupportedDomain(gurl)); |
} |
TEST_F(SdchManagerTest, BlacklistingSingleBlacklist) { |
@@ -112,14 +122,16 @@ TEST_F(SdchManagerTest, BlacklistingSingleBlacklist) { |
std::string domain(gurl.host()); |
sdch_manager()->ClearBlacklistings(); |
- sdch_manager()->BlacklistDomain(gurl, SdchManager::MIN_PROBLEM_CODE); |
+ sdch_manager()->BlacklistDomain(gurl, SdchManager::PROBLEM_CODE_OK); |
EXPECT_EQ(sdch_manager()->BlackListDomainCount(domain), 1); |
EXPECT_EQ(sdch_manager()->BlacklistDomainExponential(domain), 1); |
// Check that any domain lookup reduces the blacklist counter. |
- EXPECT_FALSE(sdch_manager()->IsInSupportedDomain(gurl)); |
+ EXPECT_EQ(SdchManager::DOMAIN_BLACKLIST_INCLUDES_TARGET, |
+ sdch_manager()->IsInSupportedDomain(gurl)); |
EXPECT_EQ(sdch_manager()->BlackListDomainCount(domain), 0); |
- EXPECT_TRUE(sdch_manager()->IsInSupportedDomain(gurl)); |
+ EXPECT_EQ(SdchManager::PROBLEM_CODE_OK, |
+ sdch_manager()->IsInSupportedDomain(gurl)); |
} |
TEST_F(SdchManagerTest, BlacklistingExponential) { |
@@ -129,18 +141,20 @@ TEST_F(SdchManagerTest, BlacklistingExponential) { |
int exponential = 1; |
for (int i = 1; i < 100; ++i) { |
- sdch_manager()->BlacklistDomain(gurl, SdchManager::MIN_PROBLEM_CODE); |
+ sdch_manager()->BlacklistDomain(gurl, SdchManager::PROBLEM_CODE_OK); |
EXPECT_EQ(sdch_manager()->BlacklistDomainExponential(domain), exponential); |
EXPECT_EQ(sdch_manager()->BlackListDomainCount(domain), exponential); |
- EXPECT_FALSE(sdch_manager()->IsInSupportedDomain(gurl)); |
+ EXPECT_EQ(SdchManager::DOMAIN_BLACKLIST_INCLUDES_TARGET, |
+ sdch_manager()->IsInSupportedDomain(gurl)); |
EXPECT_EQ(sdch_manager()->BlackListDomainCount(domain), exponential - 1); |
// Simulate a large number of domain checks (which eventually remove the |
// blacklisting). |
sdch_manager()->ClearDomainBlacklisting(domain); |
EXPECT_EQ(sdch_manager()->BlackListDomainCount(domain), 0); |
- EXPECT_TRUE(sdch_manager()->IsInSupportedDomain(gurl)); |
+ EXPECT_EQ(SdchManager::PROBLEM_CODE_OK, |
+ sdch_manager()->IsInSupportedDomain(gurl)); |
// Predict what exponential backoff will be. |
exponential = 1 + 2 * exponential; |
@@ -210,7 +224,9 @@ TEST_F(SdchManagerTest, CanUseHTTPSDictionaryOverHTTPSIfEnabled) { |
std::string client_hash; |
std::string server_hash; |
sdch_manager()->GenerateHash(dictionary_text, &client_hash, &server_hash); |
- sdch_manager()->GetVcdiffDictionary(server_hash, target_url, &dictionary); |
+ EXPECT_EQ(SdchManager::PROBLEM_CODE_OK, |
+ sdch_manager()->GetVcdiffDictionary( |
+ server_hash, target_url, &dictionary)); |
EXPECT_TRUE(dictionary.get() != NULL); |
} |
@@ -233,7 +249,9 @@ TEST_F(SdchManagerTest, CanNotUseHTTPDictionaryOverHTTPS) { |
std::string client_hash; |
std::string server_hash; |
sdch_manager()->GenerateHash(dictionary_text, &client_hash, &server_hash); |
- sdch_manager()->GetVcdiffDictionary(server_hash, target_url, &dictionary); |
+ EXPECT_EQ(SdchManager::DICTIONARY_FOUND_HAS_WRONG_SCHEME, |
+ sdch_manager()->GetVcdiffDictionary( |
+ server_hash, target_url, &dictionary)); |
EXPECT_TRUE(dictionary.get() == NULL); |
} |
@@ -256,7 +274,9 @@ TEST_F(SdchManagerTest, CanNotUseHTTPSDictionaryOverHTTP) { |
std::string client_hash; |
std::string server_hash; |
sdch_manager()->GenerateHash(dictionary_text, &client_hash, &server_hash); |
- sdch_manager()->GetVcdiffDictionary(server_hash, target_url, &dictionary); |
+ EXPECT_EQ(SdchManager::DICTIONARY_FOUND_HAS_WRONG_SCHEME, |
+ sdch_manager()->GetVcdiffDictionary( |
+ server_hash, target_url, &dictionary)); |
EXPECT_TRUE(dictionary.get() == NULL); |
} |
@@ -435,30 +455,33 @@ TEST_F(SdchManagerTest, CanUseMultipleManagers) { |
EXPECT_TRUE(AddSdchDictionary(dictionary_text_1, |
GURL("http://" + dictionary_domain_1))); |
scoped_refptr<SdchManager::Dictionary> dictionary; |
- sdch_manager()->GetVcdiffDictionary( |
- server_hash_1, |
- GURL("http://" + dictionary_domain_1 + "/random_url"), |
- &dictionary); |
+ EXPECT_EQ(SdchManager::PROBLEM_CODE_OK, |
+ sdch_manager()->GetVcdiffDictionary( |
+ server_hash_1, |
+ GURL("http://" + dictionary_domain_1 + "/random_url"), |
+ &dictionary)); |
EXPECT_TRUE(dictionary.get()); |
second_manager.AddSdchDictionary( |
- dictionary_text_2, GURL("http://" + dictionary_domain_2)); |
+ dictionary_text_2, GURL("http://" + dictionary_domain_2), BoundNetLog()); |
second_manager.GetVcdiffDictionary( |
server_hash_2, |
GURL("http://" + dictionary_domain_2 + "/random_url"), |
&dictionary); |
EXPECT_TRUE(dictionary.get()); |
- sdch_manager()->GetVcdiffDictionary( |
- server_hash_2, |
- GURL("http://" + dictionary_domain_2 + "/random_url"), |
- &dictionary); |
+ EXPECT_EQ(SdchManager::PROBLEM_CODE_OK, |
+ sdch_manager()->GetVcdiffDictionary( |
+ server_hash_2, |
+ GURL("http://" + dictionary_domain_2 + "/random_url"), |
+ &dictionary)); |
EXPECT_FALSE(dictionary.get()); |
- second_manager.GetVcdiffDictionary( |
- server_hash_1, |
- GURL("http://" + dictionary_domain_1 + "/random_url"), |
- &dictionary); |
+ EXPECT_EQ(SdchManager::PROBLEM_CODE_OK, |
+ second_manager.GetVcdiffDictionary( |
+ server_hash_1, |
+ GURL("http://" + dictionary_domain_1 + "/random_url"), |
+ &dictionary)); |
EXPECT_FALSE(dictionary.get()); |
} |
@@ -466,12 +489,16 @@ TEST_F(SdchManagerTest, HttpsCorrectlySupported) { |
GURL url("http://www.google.com"); |
GURL secure_url("https://www.google.com"); |
- EXPECT_TRUE(sdch_manager()->IsInSupportedDomain(url)); |
- EXPECT_FALSE(sdch_manager()->IsInSupportedDomain(secure_url)); |
+ EXPECT_EQ(SdchManager::PROBLEM_CODE_OK, |
+ sdch_manager()->IsInSupportedDomain(url)); |
+ EXPECT_EQ(SdchManager::SECURE_SCHEME_NOT_SUPPORTED, |
+ sdch_manager()->IsInSupportedDomain(secure_url)); |
SdchManager::EnableSecureSchemeSupport(true); |
- EXPECT_TRUE(sdch_manager()->IsInSupportedDomain(url)); |
- EXPECT_TRUE(sdch_manager()->IsInSupportedDomain(secure_url)); |
+ EXPECT_EQ(SdchManager::PROBLEM_CODE_OK, |
+ sdch_manager()->IsInSupportedDomain(url)); |
+ EXPECT_EQ(SdchManager::PROBLEM_CODE_OK, |
+ sdch_manager()->IsInSupportedDomain(secure_url)); |
} |
TEST_F(SdchManagerTest, ClearDictionaryData) { |
@@ -487,25 +514,29 @@ TEST_F(SdchManagerTest, ClearDictionaryData) { |
EXPECT_TRUE(AddSdchDictionary(dictionary_text, |
GURL("http://" + dictionary_domain))); |
scoped_refptr<SdchManager::Dictionary> dictionary; |
- sdch_manager()->GetVcdiffDictionary( |
- server_hash, |
- GURL("http://" + dictionary_domain + "/random_url"), |
- &dictionary); |
+ EXPECT_EQ(SdchManager::PROBLEM_CODE_OK, |
+ sdch_manager()->GetVcdiffDictionary( |
+ server_hash, |
+ GURL("http://" + dictionary_domain + "/random_url"), |
+ &dictionary)); |
EXPECT_TRUE(dictionary.get()); |
sdch_manager()->BlacklistDomain(GURL(blacklist_url), |
- SdchManager::MIN_PROBLEM_CODE); |
- EXPECT_FALSE(sdch_manager()->IsInSupportedDomain(blacklist_url)); |
+ SdchManager::PROBLEM_CODE_OK); |
+ EXPECT_EQ(SdchManager::DOMAIN_BLACKLIST_INCLUDES_TARGET, |
+ sdch_manager()->IsInSupportedDomain(blacklist_url)); |
sdch_manager()->ClearData(); |
dictionary = NULL; |
- sdch_manager()->GetVcdiffDictionary( |
- server_hash, |
- GURL("http://" + dictionary_domain + "/random_url"), |
- &dictionary); |
+ EXPECT_EQ(SdchManager::PROBLEM_CODE_OK, |
+ sdch_manager()->GetVcdiffDictionary( |
+ server_hash, |
+ GURL("http://" + dictionary_domain + "/random_url"), |
+ &dictionary)); |
EXPECT_FALSE(dictionary.get()); |
- EXPECT_TRUE(sdch_manager()->IsInSupportedDomain(blacklist_url)); |
+ EXPECT_EQ(SdchManager::PROBLEM_CODE_OK, |
+ sdch_manager()->IsInSupportedDomain(blacklist_url)); |
} |
} // namespace net |