# Copyright 2021 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/protobuf/proto_library.gni") static_library("report_queue_configuration") { sources = [ "report_queue_configuration.cc", "report_queue_configuration.h", ] deps = [ "//base", "//components/reporting/proto:record_constants", "//components/reporting/proto:record_proto", "//components/reporting/util:rate_limiter_interface", "//components/reporting/util:status", "//components/reporting/util:status_macros", "//components/reporting/util:wrapped_rate_limiter", ] } static_library("report_queue_factory") { sources = [ "report_queue_factory.cc", "report_queue_factory.h", ] deps = [ ":report_queue", ":report_queue_configuration", ":report_queue_provider", "//base", "//components/reporting/proto:record_constants", "//components/reporting/proto:record_proto", "//components/reporting/util:backoff_settings", "//components/reporting/util:rate_limiter_interface", "//components/reporting/util:status", "//components/reporting/util:wrapped_rate_limiter", "//net", ] } static_library("report_queue") { sources = [ "filtered_report_queue.h", "report_queue.cc", "report_queue.h", "report_queue_impl.cc", "report_queue_impl.h", ] deps = [ ":report_queue_configuration", "//base", "//components/reporting/proto:metric_data_proto", "//components/reporting/proto:record_constants", "//components/reporting/proto:record_proto", "//components/reporting/storage:storage_module_interface", "//components/reporting/storage:storage_uploader_interface", "//components/reporting/util:rate_limiter_interface", "//components/reporting/util:status", "//components/reporting/util:status_macros", "//components/reporting/util:wrapped_rate_limiter", ] if (!is_chromeos) { deps += [ "//components/reporting/storage:storage_module" ] } } static_library("report_queue_provider") { sources = [ "dm_token_retriever.h", "empty_dm_token_retriever.cc", "empty_dm_token_retriever.h", "report_queue_provider.cc", "report_queue_provider.h", ] deps = [ ":report_queue", ":report_queue_configuration", "//base", "//components/reporting/proto:record_constants", "//components/reporting/proto:record_proto", "//components/reporting/storage:storage_module_interface", "//components/reporting/util:status", "//components/reporting/util:status_macros", ] if (!is_chromeos) { deps += [ "//components/reporting/storage:storage_module" ] } } static_library("test_support") { testonly = true sources = [ "mock_dm_token_retriever.cc", "mock_dm_token_retriever.h", "mock_report_queue.cc", "mock_report_queue.h", ] deps = [ ":report_queue", ":report_queue_configuration", ":report_queue_provider", "//base", "//base/test:test_support", "//components/reporting/proto:record_constants", "//components/reporting/proto:record_proto", "//components/reporting/proto:test_proto", "//components/reporting/storage:test_support", "//components/reporting/util:rate_limiter_interface", "//components/reporting/util:status", "//components/reporting/util:status_macros", "//components/reporting/util:wrapped_rate_limiter", "//testing/gmock", "//testing/gtest", ] } static_library("mock_report_queue_provider") { testonly = true sources = [ "mock_report_queue_provider.cc", "mock_report_queue_provider.h", "report_queue_provider_test_helper.cc", "report_queue_provider_test_helper.h", ] deps = [ ":report_queue", ":report_queue_configuration", ":report_queue_provider", ":test_support", "//base", "//base/test:test_support", "//components/reporting/storage:test_support", "//testing/gmock", "//testing/gtest", ] } # All unit tests are built as part of the //components:components_unittests # target and must be one targets named "unit_tests". source_set("unit_tests") { testonly = true sources = [ "empty_dm_token_retriever_unittest.cc", "filtered_report_queue_unittest.cc", "report_queue_configuration_unittest.cc", "report_queue_factory_unittest.cc", "report_queue_impl_unittest.cc", "report_queue_provider_unittest.cc", "report_queue_unittest.cc", ] deps = [ ":mock_report_queue_provider", ":report_queue", ":report_queue_configuration", ":report_queue_factory", ":report_queue_provider", ":test_support", "//base", "//base/test:test_support", "//components/reporting/proto:record_constants", "//components/reporting/proto:record_proto", "//components/reporting/proto:test_proto", "//components/reporting/storage:storage_module_interface", "//components/reporting/storage:test_support", "//components/reporting/util:rate_limiter_interface", "//components/reporting/util:status", "//components/reporting/util:status_macros", "//components/reporting/util:test_callbacks_support", "//components/reporting/util:wrapped_rate_limiter", "//testing/gmock", "//testing/gtest", ] }