summaryrefslogtreecommitdiffstats
path: root/net/base/net_util_unittest.cc
diff options
context:
space:
mode:
authorjoi@chromium.org <joi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-03-25 22:30:21 +0000
committerjoi@chromium.org <joi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-03-25 22:30:21 +0000
commit2fd33ee9acea0037b010901af1601616c21cc37d (patch)
tree9109f46ae1e4efe4ec8d345853064113e6379915 /net/base/net_util_unittest.cc
parent49a9415f1fd04e05c2d75e884a0aced8e0d76063 (diff)
downloadchromium_src-2fd33ee9acea0037b010901af1601616c21cc37d.zip
chromium_src-2fd33ee9acea0037b010901af1601616c21cc37d.tar.gz
chromium_src-2fd33ee9acea0037b010901af1601616c21cc37d.tar.bz2
Add an opt-out header for HTTP throttling. Never throttle for localhost.
Added net::IsLocalhost() function to net/base/net_utils.h Unit tests for the above. Also fix flakiness in the ReceivedContentMalformed test that was caused by non-zero jitter. Modify back-off policy to ignore first 4 errors to help avoid back-off from erroneously kicking in on flaky connections. Make maximum back-off period 15 minutes instead of 60. Added documentation of results of analyzing behavior this new policy will give. Add a simple server for manual testing of the throttling feature. BUG=66062 TEST=net_unittests Review URL: http://codereview.chromium.org/6711046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79464 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/base/net_util_unittest.cc')
-rw-r--r--net/base/net_util_unittest.cc28
1 files changed, 28 insertions, 0 deletions
diff --git a/net/base/net_util_unittest.cc b/net/base/net_util_unittest.cc
index 9f15bc5..292d416 100644
--- a/net/base/net_util_unittest.cc
+++ b/net/base/net_util_unittest.cc
@@ -2166,6 +2166,34 @@ TEST(NetUtilTest, IPNumberMatchesPrefix) {
}
}
+TEST(NetUtilTest, IsLocalhost) {
+ EXPECT_TRUE(net::IsLocalhost("localhost"));
+ EXPECT_TRUE(net::IsLocalhost("localhost.localdomain"));
+ EXPECT_TRUE(net::IsLocalhost("localhost6"));
+ EXPECT_TRUE(net::IsLocalhost("localhost6.localdomain6"));
+ EXPECT_TRUE(net::IsLocalhost("127.0.0.1"));
+ EXPECT_TRUE(net::IsLocalhost("127.0.1.0"));
+ EXPECT_TRUE(net::IsLocalhost("127.1.0.0"));
+ EXPECT_TRUE(net::IsLocalhost("127.0.0.255"));
+ EXPECT_TRUE(net::IsLocalhost("127.0.255.0"));
+ EXPECT_TRUE(net::IsLocalhost("127.255.0.0"));
+ EXPECT_TRUE(net::IsLocalhost("::1"));
+ EXPECT_TRUE(net::IsLocalhost("0:0:0:0:0:0:0:1"));
+
+ EXPECT_FALSE(net::IsLocalhost("localhostx"));
+ EXPECT_FALSE(net::IsLocalhost("foo.localdomain"));
+ EXPECT_FALSE(net::IsLocalhost("localhost6x"));
+ EXPECT_FALSE(net::IsLocalhost("localhost.localdomain6"));
+ EXPECT_FALSE(net::IsLocalhost("localhost6.localdomain"));
+ EXPECT_FALSE(net::IsLocalhost("127.0.0.1.1"));
+ EXPECT_FALSE(net::IsLocalhost(".127.0.0.255"));
+ EXPECT_FALSE(net::IsLocalhost("::2"));
+ EXPECT_FALSE(net::IsLocalhost("::1:1"));
+ EXPECT_FALSE(net::IsLocalhost("0:0:0:0:1:0:0:1"));
+ EXPECT_FALSE(net::IsLocalhost("::1:1"));
+ EXPECT_FALSE(net::IsLocalhost("0:0:0:0:0:0:0:0:1"));
+}
+
// Verify GetNetworkList().
TEST(NetUtilTest, GetNetworkList) {
NetworkInterfaceList list;