diff options
author | rtenneti@chromium.org <rtenneti@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-05-19 00:24:08 +0000 |
---|---|---|
committer | rtenneti@chromium.org <rtenneti@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-05-19 00:24:08 +0000 |
commit | 81a98cdd9ce1bb7d8e893d194e09abfd68024858 (patch) | |
tree | 986b726f3c9d016df340ae13ba0fa93a51a9b9ce /net/base/host_resolver_impl_unittest.cc | |
parent | bb5310b61786423453cf8580c4287b8f1bf7194f (diff) | |
download | chromium_src-81a98cdd9ce1bb7d8e893d194e09abfd68024858.zip chromium_src-81a98cdd9ce1bb7d8e893d194e09abfd68024858.tar.gz chromium_src-81a98cdd9ce1bb7d8e893d194e09abfd68024858.tar.bz2 |
Add a command line option ("host-resolver-retry-attempts")
to specify the number of retry attempts to resolve host.
BUG=82580
TEST=host resolver unit tests
R=eroman
Review URL: http://codereview.chromium.org/7011044
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85852 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/base/host_resolver_impl_unittest.cc')
-rw-r--r-- | net/base/host_resolver_impl_unittest.cc | 46 |
1 files changed, 28 insertions, 18 deletions
diff --git a/net/base/host_resolver_impl_unittest.cc b/net/base/host_resolver_impl_unittest.cc index 7b72d1d..52b7f89 100644 --- a/net/base/host_resolver_impl_unittest.cc +++ b/net/base/host_resolver_impl_unittest.cc @@ -41,10 +41,11 @@ HostCache* CreateDefaultCache() { } static const size_t kMaxJobs = 10u; +static const size_t kMaxRetryAttempts = 4u; HostResolverImpl* CreateHostResolverImpl(HostResolverProc* resolver_proc) { return new HostResolverImpl(resolver_proc, CreateDefaultCache(), kMaxJobs, - NULL); + kMaxRetryAttempts, NULL); } // Helper to create a HostResolver::RequestInfo. @@ -451,6 +452,7 @@ TEST_F(HostResolverImplTest, CanceledAsynchronousLookup) { new HostResolverImpl(resolver_proc, CreateDefaultCache(), kMaxJobs, + kMaxRetryAttempts, &net_log)); AddressList addrlist; const int kPortnum = 80; @@ -897,7 +899,8 @@ TEST_F(HostResolverImplTest, StartWithinCallback) { // Turn off caching for this host resolver. scoped_ptr<HostResolver> host_resolver( - new HostResolverImpl(resolver_proc, NULL, kMaxJobs, NULL)); + new HostResolverImpl(resolver_proc, NULL, kMaxJobs, kMaxRetryAttempts, + NULL)); // The class will receive callbacks for when each resolve completes. It // checks that the right things happened. @@ -1197,7 +1200,8 @@ TEST_F(HostResolverImplTest, CancellationObserver) { // Test that IP address changes flush the cache. TEST_F(HostResolverImplTest, FlushCacheOnIPAddressChange) { scoped_ptr<HostResolver> host_resolver( - new HostResolverImpl(NULL, CreateDefaultCache(), kMaxJobs, NULL)); + new HostResolverImpl(NULL, CreateDefaultCache(), kMaxJobs, + kMaxRetryAttempts, NULL)); AddressList addrlist; @@ -1231,7 +1235,8 @@ TEST_F(HostResolverImplTest, AbortOnIPAddressChanged) { new WaitingHostResolverProc(NULL)); HostCache* cache = CreateDefaultCache(); scoped_ptr<HostResolver> host_resolver( - new HostResolverImpl(resolver_proc, cache, kMaxJobs, NULL)); + new HostResolverImpl(resolver_proc, cache, kMaxJobs, kMaxRetryAttempts, + NULL)); // Resolve "host1". HostResolver::RequestInfo info(HostPortPair("host1", 70)); @@ -1354,9 +1359,10 @@ TEST_F(HostResolverImplTest, HigherPriorityRequestsStartedFirst) { // This HostResolverImpl will only allow 1 outstanding resolve at a time. size_t kMaxJobs = 1u; + const size_t kRetryAttempts = 0u; scoped_ptr<HostResolver> host_resolver( new HostResolverImpl(resolver_proc, CreateDefaultCache(), kMaxJobs, - NULL)); + kRetryAttempts, NULL)); CapturingObserver observer; host_resolver->AddObserver(&observer); @@ -1439,9 +1445,10 @@ TEST_F(HostResolverImplTest, CancelPendingRequest) { // This HostResolverImpl will only allow 1 outstanding resolve at a time. const size_t kMaxJobs = 1u; + const size_t kRetryAttempts = 0u; scoped_ptr<HostResolver> host_resolver( new HostResolverImpl(resolver_proc, CreateDefaultCache(), kMaxJobs, - NULL)); + kRetryAttempts, NULL)); // Note that at this point the CapturingHostResolverProc is blocked, so any // requests we make will not complete. @@ -1502,8 +1509,10 @@ TEST_F(HostResolverImplTest, QueueOverflow) { // This HostResolverImpl will only allow 1 outstanding resolve at a time. const size_t kMaxOutstandingJobs = 1u; + const size_t kRetryAttempts = 0u; scoped_ptr<HostResolverImpl> host_resolver(new HostResolverImpl( - resolver_proc, CreateDefaultCache(), kMaxOutstandingJobs, NULL)); + resolver_proc, CreateDefaultCache(), kMaxOutstandingJobs, kRetryAttempts, + NULL)); // Only allow up to 3 requests to be enqueued at a time. const size_t kMaxPendingRequests = 3u; @@ -1580,8 +1589,10 @@ TEST_F(HostResolverImplTest, SetDefaultAddressFamily_IPv4) { // This HostResolverImpl will only allow 1 outstanding resolve at a time. const size_t kMaxOutstandingJobs = 1u; + const size_t kRetryAttempts = 0u; scoped_ptr<HostResolverImpl> host_resolver(new HostResolverImpl( - resolver_proc, CreateDefaultCache(), kMaxOutstandingJobs, NULL)); + resolver_proc, CreateDefaultCache(), kMaxOutstandingJobs, kRetryAttempts, + NULL)); host_resolver->SetDefaultAddressFamily(ADDRESS_FAMILY_IPV4); @@ -1648,8 +1659,10 @@ TEST_F(HostResolverImplTest, SetDefaultAddressFamily_IPv6) { // This HostResolverImpl will only allow 1 outstanding resolve at a time. const size_t kMaxOutstandingJobs = 1u; + const size_t kRetryAttempts = 0u; scoped_ptr<HostResolverImpl> host_resolver(new HostResolverImpl( - resolver_proc, CreateDefaultCache(), kMaxOutstandingJobs, NULL)); + resolver_proc, CreateDefaultCache(), kMaxOutstandingJobs, kRetryAttempts, + NULL)); host_resolver->SetDefaultAddressFamily(ADDRESS_FAMILY_IPV6); @@ -1713,9 +1726,8 @@ TEST_F(HostResolverImplTest, SetDefaultAddressFamily_Synchronous) { scoped_refptr<CapturingHostResolverProc> resolver_proc( new CapturingHostResolverProc(new EchoingHostResolverProc)); - const size_t kMaxOutstandingJobs = 10u; scoped_ptr<HostResolverImpl> host_resolver(new HostResolverImpl( - resolver_proc, CreateDefaultCache(), kMaxOutstandingJobs, NULL)); + resolver_proc, CreateDefaultCache(), kMaxJobs, kMaxRetryAttempts, NULL)); host_resolver->SetDefaultAddressFamily(ADDRESS_FAMILY_IPV4); @@ -1814,16 +1826,14 @@ TEST_F(HostResolverImplTest, MultipleAttempts) { NULL, kAttemptNumberToResolve, kTotalAttempts)); HostCache* cache = CreateDefaultCache(); scoped_ptr<HostResolverImpl> host_resolver( - new HostResolverImpl(resolver_proc, cache, kMaxJobs, NULL)); + new HostResolverImpl(resolver_proc, cache, kMaxJobs, kMaxRetryAttempts, + NULL)); - // Specify smaller interval for unresponsive_delay_ and - // maximum_unresponsive_delay_ for HostResolverImpl so that unit test - // runs faster. For example, this test finishes in 1.5 secs (500ms * 3). + // Specify smaller interval for unresponsive_delay_ for HostResolverImpl so + // that unit test runs faster. For example, this test finishes in 1.5 secs + // (500ms * 3). TimeDelta kUnresponsiveTime = TimeDelta::FromMilliseconds(500); - TimeDelta kMaximumUnresponsiveTime = TimeDelta::FromMilliseconds(2500); - host_resolver->set_unresponsive_delay(kUnresponsiveTime); - host_resolver->set_maximum_unresponsive_delay(kMaximumUnresponsiveTime); // Resolve "host1". HostResolver::RequestInfo info(HostPortPair("host1", 70)); |