# Copyright 2014 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

static_library("renderer") {
  sources = [
    "dns_prefetch_queue.cc",
    "dns_prefetch_queue.h",
    "prescient_networking_dispatcher.cc",
    "prescient_networking_dispatcher.h",
    "renderer_dns_prefetch.cc",
    "renderer_dns_prefetch.h",
    "renderer_preconnect.cc",
    "renderer_preconnect.h",
  ]

  public_deps = [
    "//base",
    "//components/network_hints/common",
    "//content/public/renderer",
    "//third_party/blink/public:blink",
    "//url",
  ]
}

source_set("unit_tests") {
  testonly = true
  sources = [
    "dns_prefetch_queue_unittest.cc",
    "renderer_dns_prefetch_unittest.cc",
  ]
  deps = [
    ":renderer",
    "//testing/gtest",
  ]
}
