# 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. if (is_android) { import("//build/config/android/rules.gni") } static_library("feature_list") { sources = [ "invalidation_switches.cc", "invalidation_switches.h", ] deps = [ "//base" ] } static_library("impl") { sources = [ "channels_states.cc", "channels_states.h", "fcm_invalidation_listener.cc", "fcm_invalidation_listener.h", "fcm_invalidation_service.cc", "fcm_invalidation_service.h", "fcm_invalidation_service_base.cc", "fcm_invalidation_service_base.h", "fcm_network_handler.cc", "fcm_network_handler.h", "fcm_sync_network_channel.cc", "fcm_sync_network_channel.h", "invalidation_logger.cc", "invalidation_logger.h", "invalidation_logger_observer.h", "invalidation_prefs.cc", "invalidation_prefs.h", "invalidation_service_util.cc", "invalidation_service_util.h", "invalidator_registrar_with_memory.cc", "invalidator_registrar_with_memory.h", "mock_ack_handler.cc", "mock_ack_handler.h", "per_user_topic_subscription_manager.cc", "per_user_topic_subscription_manager.h", "per_user_topic_subscription_request.cc", "per_user_topic_subscription_request.h", "profile_identity_provider.cc", "profile_identity_provider.h", "profile_invalidation_provider.cc", "profile_invalidation_provider.h", "status.cc", "status.h", "unacked_invalidation_set.cc", "unacked_invalidation_set.h", ] public_deps = [ ":feature_list", "//components/invalidation/public", "//services/data_decoder/public/cpp", ] deps = [ "//base", "//base:i18n", "//components/gcm_driver", "//components/gcm_driver/common", "//components/keyed_service/core", "//components/pref_registry", "//components/prefs", "//components/signin/public/identity_manager", # TODO(crbug.com/1029698): Depending on sync is a layering violation, # currently necessary for metrics recording. Eventually the "whitelisted for # metrics" bit should be part of a Topic. "//components/sync/base", "//google_apis", "//net:net", "//services/network/public/cpp", "//services/network/public/mojom", ] } source_set("unit_tests") { testonly = true sources = [ "fcm_invalidation_listener_unittest.cc", "fcm_invalidation_service_unittest.cc", "fcm_network_handler_unittests.cc", "invalidation_logger_unittest.cc", "invalidator_registrar_with_memory_unittest.cc", "per_user_topic_subscription_manager_unittest.cc", "per_user_topic_subscription_request_unittest.cc", ] deps = [ ":impl", ":test_support", "//base", "//base/test:test_support", "//components/gcm_driver:test_support", "//components/gcm_driver/instance_id:test_support", "//components/prefs", "//components/prefs:test_support", "//components/signin/public/identity_manager:test_support", "//components/sync_preferences:test_support", "//google_apis:test_support", "//google_apis/gcm:gcm", "//net", "//net:test_support", "//services/data_decoder/public/cpp:test_support", "//services/network:test_support", "//testing/gmock", "//testing/gtest", ] if (!is_android) { # Non-Android tests. sources += [ "single_object_invalidation_set_unittest.cc", "topic_invalidation_map_unittest.cc", "unacked_invalidation_set_unittest.cc", ] } } static_library("test_support") { testonly = true sources = [ "fake_invalidation_handler.cc", "fake_invalidation_handler.h", "fake_invalidation_service.cc", "fake_invalidation_service.h", "invalidation_service_test_template.cc", "invalidation_service_test_template.h", "invalidation_test_util.cc", "invalidation_test_util.h", "topic_invalidation_map_test_util.cc", "topic_invalidation_map_test_util.h", ] public_deps = [ ":impl" ] deps = [ "//base", "//components/gcm_driver:test_support", "//components/keyed_service/core", "//components/prefs:test_support", "//net", "//testing/gmock", "//testing/gtest", ] }