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

import("//testing/test.gni")

assert(is_chromeos, "Non-Chrome-OS builds must not depend on //chromeos")

component("geolocation") {
  defines = [ "IS_CHROMEOS_GEOLOCATION_IMPL" ]
  deps = [
    "//base",
    "//chromeos/network",
    "//google_apis",
    "//net",
    "//services/network/public/cpp",
  ]
  sources = [
    "geoposition.cc",
    "geoposition.h",
    "simple_geolocation_provider.cc",
    "simple_geolocation_provider.h",
    "simple_geolocation_request.cc",
    "simple_geolocation_request.h",
    "simple_geolocation_request_test_monitor.cc",
    "simple_geolocation_request_test_monitor.h",
  ]
}

source_set("unit_tests") {
  testonly = true
  deps = [
    ":geolocation",
    "//base",
    "//chromeos/dbus",
    "//chromeos/network:test_support",
    "//net",
    "//services/network:test_support",
    "//services/network/public/cpp",
    "//testing/gtest",
  ]
  sources = [
    "simple_geolocation_unittest.cc",
  ]
}
