# Copyright 2016 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. source_set("chrome_browser_state_client") { configs += [ "//build/config/compiler:enable_arc" ] sources = [ "chrome_browser_state_client.h", "chrome_browser_state_client.mm", ] deps = [ "//base", "//components/metrics:demographic_metrics_provider", "//components/network_time", "//ios/chrome/browser", "//ios/chrome/browser/browser_state", "//ios/chrome/browser/sync", ] } source_set("metrics") { configs += [ "//build/config/compiler:enable_arc" ] sources = [ "incognito_web_state_observer.h", "incognito_web_state_observer.mm", "ios_chrome_metrics_service_accessor.cc", "ios_chrome_metrics_service_accessor.h", "ios_chrome_metrics_service_client.h", "ios_chrome_metrics_service_client.mm", "ios_chrome_metrics_services_manager_client.h", "ios_chrome_metrics_services_manager_client.mm", "ios_chrome_stability_metrics_provider.h", "ios_chrome_stability_metrics_provider.mm", "ios_profile_session_durations_service.h", "ios_profile_session_durations_service.mm", "ios_profile_session_durations_service_factory.h", "ios_profile_session_durations_service_factory.mm", "mobile_session_shutdown_metrics_provider.h", "mobile_session_shutdown_metrics_provider.mm", "pageload_foreground_duration_tab_helper.h", "pageload_foreground_duration_tab_helper.mm", "previous_session_info.h", "previous_session_info.mm", "previous_session_info_private.h", ] public_deps = [ "//components/ukm/ios:ukm_url_recorder" ] deps = [ ":chrome_browser_state_client", "//base", "//components/browser_sync", "//components/crash/core/common", "//components/keyed_service/core", "//components/keyed_service/ios", "//components/metrics", "//components/metrics:demographic_metrics_provider", "//components/metrics:net", "//components/metrics:ui", "//components/metrics_services_manager", "//components/navigation_metrics", "//components/omnibox/browser", "//components/prefs", "//components/rappor", "//components/signin/core/browser", "//components/sync", "//components/sync_device_info", "//components/ukm", "//components/ukm:observers", "//components/variations", "//components/variations/service", "//components/version_info", "//ios/chrome/browser", "//ios/chrome/browser/browser_state", "//ios/chrome/browser/crash_report", "//ios/chrome/browser/google", "//ios/chrome/browser/history", "//ios/chrome/browser/main:public", "//ios/chrome/browser/signin", "//ios/chrome/browser/sync", "//ios/chrome/browser/tabs", "//ios/chrome/browser/translate", "//ios/chrome/browser/variations", "//ios/chrome/browser/variations:ios_chrome_ui_string_overrider_factory", "//ios/chrome/browser/web_state_list", "//ios/chrome/common", "//ios/components/webui:url_constants", "//ios/public/provider/chrome/browser", "//ios/web/common", "//ios/web/public/deprecated", "//url", ] } source_set("unit_tests") { configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ "chrome_browser_state_client_unittest.mm", "ios_chrome_metrics_service_accessor_unittest.cc", "ios_chrome_metrics_service_client_unittest.mm", "ios_chrome_stability_metrics_provider_unittest.mm", "mobile_session_shutdown_metrics_provider_unittest.mm", "pageload_foreground_duration_tab_helper_unittest.mm", "previous_session_info_unittest.mm", ] deps = [ ":chrome_browser_state_client", ":metrics", "//base", "//base/test:test_support", "//build:branding_buildflags", "//components/metrics", "//components/metrics:test_support", "//components/network_time:network_time", "//components/prefs", "//components/prefs:test_support", "//components/ukm", "//components/ukm:test_support", "//components/version_info", "//ios/chrome/browser", "//ios/chrome/browser/browser_state:test_support", "//ios/chrome/browser/web:test_support", "//ios/chrome/test:test_support", "//ios/web/common", "//ios/web/public", "//ios/web/public/test", "//ios/web/public/test/fakes", "//net:test_support", "//testing/gtest", ] } source_set("metrics_browser_agent") { configs += [ "//build/config/compiler:enable_arc" ] sources = [ "tab_usage_recorder_browser_agent.h", "tab_usage_recorder_browser_agent.mm", ] deps = [ ":metrics", ":metrics_internal", ":tab_usage_recorder_metrics", "//base", "//components/google/core/common", "//components/ukm/ios:ukm_url_recorder", "//ios/chrome/browser:chrome_url_constants", "//ios/chrome/browser/browser_state", "//ios/chrome/browser/main:public", "//ios/chrome/browser/prerender", "//ios/chrome/browser/sessions:restoration_agent", "//ios/chrome/browser/sessions:restoration_observer", "//ios/chrome/browser/web_state_list", "//ios/components/webui:url_constants", "//ios/web", "//services/metrics/public/cpp:ukm_builders", "//ui/base", "//url", ] libs = [ "UIKit.framework" ] } source_set("metrics_internal") { configs += [ "//build/config/compiler:enable_arc" ] sources = [ "drag_and_drop_recorder.h", "drag_and_drop_recorder.mm", "first_user_action_recorder.cc", "first_user_action_recorder.h", "new_tab_page_uma.h", "new_tab_page_uma.mm", "size_class_recorder.h", "size_class_recorder.mm", "size_class_recorder_private.h", "user_interface_style_recorder.h", "user_interface_style_recorder.mm", ] deps = [ ":metrics", ":tab_usage_recorder_metrics", "//base", "//components/google/core/common", "//ios/chrome/browser", "//ios/chrome/browser/browser_state", "//ios/chrome/browser/ui/util", "//ios/chrome/browser/web_state_list", "//ios/web", "//services/metrics/public/cpp:ukm_builders", "//ui/base", "//url", ] libs = [ "UIKit.framework" ] } source_set("tab_usage_recorder_metrics") { configs += [ "//build/config/compiler:enable_arc" ] sources = [ "tab_usage_recorder_metrics.h", "tab_usage_recorder_metrics.mm", ] deps = [ "//base" ] } source_set("unit_tests_internal") { configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ "first_user_action_recorder_unittest.cc", "size_class_recorder_unittest.mm", "tab_usage_recorder_browser_agent_unittest.mm", ] deps = [ ":metrics", ":metrics_browser_agent", ":metrics_internal", "//base", "//base/test:test_support", "//ios/chrome/browser/main:test_support", "//ios/chrome/browser/ui/util", "//ios/chrome/browser/web_state_list", "//ios/testing:ocmock_support", "//ios/web", "//ios/web/public/test", "//ios/web/public/test/fakes", "//testing/gtest", ] } source_set("eg_tests") { defines = [ "CHROME_EARL_GREY_1" ] configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ "demographics_egtest.mm", "tab_usage_recorder_egtest.mm", "ukm_egtest.mm", ] deps = [ ":metrics_internal", ":tab_usage_recorder_metrics", ":test_support", "//base", "//base/test:test_support", "//components/browser_sync", "//components/metrics", "//components/metrics:demographic_metrics_provider", "//components/metrics_services_manager", "//components/strings", "//components/sync/base", "//components/ukm", "//components/ukm:test_support", "//components/unified_consent:unified_consent", "//ios/chrome/app/strings:ios_strings_grit", "//ios/chrome/browser", "//ios/chrome/browser/metrics", "//ios/chrome/browser/signin", "//ios/chrome/browser/sync", "//ios/chrome/browser/ui/authentication", "//ios/chrome/browser/ui/authentication:eg_test_support", "//ios/chrome/browser/ui/authentication/cells", "//ios/chrome/browser/ui/popup_menu:constants", "//ios/chrome/browser/ui/settings", "//ios/chrome/browser/ui/settings/google_services", "//ios/chrome/browser/ui/toolbar/buttons", "//ios/chrome/browser/ui/toolbar/public", "//ios/chrome/browser/ui/util", "//ios/chrome/test:eg_test_support", "//ios/chrome/test/app:test_support", "//ios/chrome/test/earl_grey:test_support", "//ios/public/provider/chrome/browser/signin:fake_chrome_identity", "//ios/public/provider/chrome/browser/signin:test_support", "//ios/testing/earl_grey:earl_grey_support", "//ios/web:earl_grey_test_support", "//ios/web/public/test", "//ios/web/public/test:element_selector", "//ios/web/public/test/http_server", "//net:test_support", "//third_party/metrics_proto", "//ui/base", "//url", ] libs = [ "XCTest.framework" ] } source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ "//build/config/compiler:enable_arc", "//build/config/ios:xctest_config", ] testonly = true sources = [ "demographics_egtest.mm", "tab_usage_recorder_egtest.mm", "ukm_egtest.mm", ] deps = [ ":eg_test_support+eg2", ":tab_usage_recorder_metrics", "//base/test:test_support", "//components/metrics:demographic_metrics_provider", "//components/strings:components_strings_grit", "//components/ukm", "//ios/chrome/app/strings:ios_strings_grit", "//ios/chrome/browser/ui/authentication:eg_test_support+eg2", "//ios/chrome/test:eg_test_support+eg2", "//ios/chrome/test/earl_grey:eg_test_support+eg2", "//ios/public/provider/chrome/browser/signin:fake_chrome_identity", "//ios/testing/earl_grey:eg_test_support+eg2", "//ios/third_party/earl_grey2:test_lib", "//ios/web/public/test:element_selector", "//ios/web/public/test/http_server", "//ui/base:base", ] libs = [ "UIKit.framework" ] } source_set("test_support") { defines = [ "CHROME_EARL_GREY_1" ] testonly = true sources = [ "metrics_app_interface.h", "metrics_app_interface.mm", ] deps = [ ":metrics", "//base", "//base/test:test_support", "//components/metrics", "//components/metrics:demographics_test_support", "//components/metrics_services_manager", "//components/network_time", "//components/prefs", "//components/ukm", "//components/ukm:ukm_test_helper", "//ios/chrome/app:app_internal", "//ios/chrome/app/strings", "//ios/chrome/browser", "//ios/chrome/browser/browser_state", "//ios/chrome/browser/metrics:metrics_internal", "//ios/chrome/browser/tabs", "//ios/chrome/browser/ui/main", "//ios/chrome/browser/ui/popup_menu:constants", "//ios/chrome/browser/ui/util", "//ios/chrome/browser/web_state_list", "//ios/chrome/test:eg_test_support", "//ios/chrome/test/app:test_support", "//ios/chrome/test/earl_grey:test_support", "//ios/testing/earl_grey:earl_grey_support", "//net:test_support", "//third_party/metrics_proto", "//ui/base", ] configs += [ "//build/config/compiler:enable_arc" ] } import("//components/metrics/generate_expired_histograms_array.gni") generate_expired_histograms_array("expired_histograms_array") { inputs = [ "//tools/metrics/histograms/histograms.xml", "//tools/metrics/histograms/enums.xml", ] namespace = "" header_filename = "ios_expired_histograms_array.h" major_branch_date_filepath = "//chrome/MAJOR_BRANCH_DATE" milestone_filepath = "//chrome/VERSION" } source_set("eg_app_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ "//build/config/compiler:enable_arc", "//build/config/ios:xctest_config", ] testonly = true sources = [ "metrics_app_interface.h", "metrics_app_interface.mm", ] deps = [ "//base", "//base/test:test_support", "//components/metrics", "//components/metrics:demographics_test_support", "//components/metrics_services_manager", "//components/network_time", "//components/prefs", "//components/ukm", "//components/ukm:ukm_test_helper", "//ios/chrome/browser", "//ios/chrome/browser/browser_state", "//ios/chrome/browser/metrics", "//ios/chrome/browser/metrics:metrics_internal", "//ios/chrome/test/app:test_support", "//ios/testing:nserror_support", "//third_party/metrics_proto", ] } source_set("eg_test_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ "//build/config/compiler:enable_arc", "//build/config/ios:xctest_config", ] testonly = true sources = [ "metrics_app_interface.h", "metrics_app_interface_stub.mm", ] deps = [ "//base", "//base/test:test_support", "//ios/chrome/test:eg_test_support+eg2", "//ios/chrome/test/earl_grey:eg_test_support+eg2", "//ios/testing/earl_grey:eg_test_support+eg2", "//ios/third_party/earl_grey2:test_lib", "//third_party/metrics_proto", ] }