# Copyright 2019 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.

component("certificate_matching") {
  sources = [
    "certificate_principal_pattern.cc",
    "certificate_principal_pattern.h",
  ]

  defines = [ "IS_CERTIFICATE_MATCHING_IMPL" ]

  deps = [
    "//base",
    "//net",
  ]
}

source_set("unit_tests") {
  testonly = true
  sources = [
    "certificate_principal_pattern_unittest.cc",
  ]

  deps = [
    ":certificate_matching",
    "//base",
    "//net",
    "//testing/gmock",
    "//testing/gtest",
  ]
}
