# Copyright 2018 The Chromium Authors # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. import("//third_party/abseil-cpp/absl.gni") absl_source_set("time") { sources = [ "civil_time.cc", "clock.cc", "duration.cc", "format.cc", "internal/get_current_time_chrono.inc", "internal/get_current_time_posix.inc", "time.cc", ] public = [ "civil_time.h", "clock.h", "time.h", ] deps = [ "//third_party/abseil-cpp/absl/base", "//third_party/abseil-cpp/absl/base:config", "//third_party/abseil-cpp/absl/base:core_headers", "//third_party/abseil-cpp/absl/base:raw_logging_internal", "//third_party/abseil-cpp/absl/numeric:int128", "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/strings:string_view", "//third_party/abseil-cpp/absl/time/internal/cctz:civil_time", "//third_party/abseil-cpp/absl/time/internal/cctz:time_zone", "//third_party/abseil-cpp/absl/types:optional", ] } absl_source_set("clock_interface") { sources = [ "clock_interface.cc" ] public = [ "clock_interface.h" ] deps = [ ":time", "//third_party/abseil-cpp/absl/base:config", "//third_party/abseil-cpp/absl/base:core_headers", "//third_party/abseil-cpp/absl/base:no_destructor", "//third_party/abseil-cpp/absl/base:nullability", "//third_party/abseil-cpp/absl/base:raw_logging_internal", "//third_party/abseil-cpp/absl/synchronization", ] } absl_source_set("simulated_clock") { testonly = true sources = [ "simulated_clock.cc" ] public = [ "simulated_clock.h" ] deps = [ ":clock_interface", ":time", "//third_party/abseil-cpp/absl/base:config", "//third_party/abseil-cpp/absl/base:core_headers", "//third_party/abseil-cpp/absl/base:nullability", "//third_party/abseil-cpp/absl/synchronization", ] } absl_source_set("test_util") { testonly = true sources = [ "internal/test_util.cc" ] public = [ "internal/test_util.h" ] deps = [ ":time", "//third_party/abseil-cpp/absl/base:config", "//third_party/abseil-cpp/absl/base:raw_logging_internal", ] visibility = [ ":*" ] } absl_test("time_test") { sources = [ "civil_time_test.cc", "clock_test.cc", "duration_test.cc", "format_test.cc", "time_test.cc", "time_zone_test.cc", ] deps = [ ":test_util", ":time", "//third_party/abseil-cpp/absl/base:config", "//third_party/abseil-cpp/absl/base:core_headers", "//third_party/abseil-cpp/absl/hash:hash_testing", "//third_party/abseil-cpp/absl/numeric:int128", "//third_party/abseil-cpp/absl/random", "//third_party/abseil-cpp/absl/strings:str_format", "//third_party/abseil-cpp/absl/time/internal/cctz:time_zone", ] } absl_test("clock_interface_test") { sources = [ "clock_interface_test.cc" ] deps = [ ":clock_interface", ":time", "//third_party/abseil-cpp/absl/functional:bind_front", "//third_party/abseil-cpp/absl/synchronization", ] } absl_test("simulated_clock_test") { sources = [ "simulated_clock_test.cc" ] deps = [ ":clock_interface", ":simulated_clock", ":time", "//third_party/abseil-cpp/absl/base:core_headers", "//third_party/abseil-cpp/absl/base:raw_logging_internal", "//third_party/abseil-cpp/absl/functional:bind_front", "//third_party/abseil-cpp/absl/random", "//third_party/abseil-cpp/absl/synchronization", ] }