Home | History | Annotate | Download | only in net
      1 // Copyright 2013 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #include "chrome/browser/net/dns_probe_test_util.h"
      6 
      7 #include "chrome/browser/net/dns_probe_runner.h"
      8 #include "net/dns/dns_config_service.h"
      9 #include "net/dns/dns_protocol.h"
     10 
     11 using net::DnsClient;
     12 using net::DnsConfig;
     13 using net::IPAddressNumber;
     14 using net::IPEndPoint;
     15 using net::MockDnsClientRule;
     16 using net::MockDnsClientRuleList;
     17 using net::ParseIPLiteralToNumber;
     18 
     19 namespace chrome_browser_net {
     20 
     21 scoped_ptr<DnsClient> CreateMockDnsClientForProbes(
     22     MockDnsClientRule::Result result) {
     23   DnsConfig config;
     24   IPAddressNumber dns_ip;
     25   ParseIPLiteralToNumber("192.168.1.1", &dns_ip);
     26   const uint16 kDnsPort = net::dns_protocol::kDefaultPort;
     27   config.nameservers.push_back(IPEndPoint(dns_ip, kDnsPort));
     28 
     29   const uint16 kTypeA = net::dns_protocol::kTypeA;
     30   MockDnsClientRuleList rules;
     31   rules.push_back(
     32       MockDnsClientRule(DnsProbeRunner::kKnownGoodHostname, kTypeA, result));
     33 
     34   return CreateMockDnsClient(config, rules).Pass();
     35 }
     36 
     37 }  // namespace chrome_browser_net
     38