Index: net/dns/host_resolver_impl_unittest.cc |
diff --git a/net/dns/host_resolver_impl_unittest.cc b/net/dns/host_resolver_impl_unittest.cc |
index 24a00a9d69e59ffe9aa5481076dbc4337e2da0fc..c314f80c24d0e7dcb0af2f2c9616b055036e664d 100644 |
--- a/net/dns/host_resolver_impl_unittest.cc |
+++ b/net/dns/host_resolver_impl_unittest.cc |
@@ -1563,6 +1563,24 @@ TEST_F(HostResolverImplDnsTest, BypassDnsTask) { |
EXPECT_EQ(OK, requests_[i]->WaitForResult()) << i; |
} |
+TEST_F(HostResolverImplDnsTest, SystemOnlyBypassesDnsTask) { |
+ ChangeDnsConfig(CreateValidDnsConfig()); |
+ |
+ proc_->AddRuleForAllFamilies(std::string(), std::string()); |
+ |
+ HostResolver::RequestInfo info_bypass(HostPortPair("ok", 80)); |
+ info_bypass.set_host_resolver_flags(HOST_RESOLVER_SYSTEM_ONLY); |
+ EXPECT_EQ(ERR_IO_PENDING, CreateRequest(info_bypass, MEDIUM)->Resolve()); |
+ |
+ HostResolver::RequestInfo info(HostPortPair("ok", 80)); |
+ EXPECT_EQ(ERR_IO_PENDING, CreateRequest(info, MEDIUM)->Resolve()); |
+ |
+ proc_->SignalMultiple(requests_.size()); |
+ |
+ EXPECT_EQ(ERR_NAME_NOT_RESOLVED, requests_[0]->WaitForResult()); |
+ EXPECT_EQ(OK, requests_[1]->WaitForResult()); |
+} |
+ |
TEST_F(HostResolverImplDnsTest, DisableDnsClientOnPersistentFailure) { |
ChangeDnsConfig(CreateValidDnsConfig()); |