blob: 70223b1e86e4a074f0c4275877c37ac43fd010c4 [file] [log] [blame]
sdefresne87704da22016-10-26 17:01:191# Copyright 2016 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
Steven Holte5c275a502018-10-04 18:29:555source_set("ukm_url_recorder") {
6 configs += [ "//build/config/compiler:enable_arc" ]
7 sources = [
8 "ukm_url_recorder.h",
9 "ukm_url_recorder.mm",
10 ]
11 public_deps = [
12 "//services/metrics/public/cpp:metrics_cpp",
13 ]
14 deps = [
15 "//base",
16 "//ios/web",
17 "//url",
18 ]
19}
20
sdefresne87704da22016-10-26 17:01:1921source_set("metrics") {
stkhapuginf05af572016-12-05 14:34:4922 configs += [ "//build/config/compiler:enable_arc" ]
sdefresne87704da22016-10-26 17:01:1923 sources = [
Mohamad Ahmadib1eb9392017-11-18 23:34:4024 "incognito_web_state_observer.h",
25 "incognito_web_state_observer.mm",
sdefresne87704da22016-10-26 17:01:1926 "ios_chrome_metrics_service_accessor.cc",
27 "ios_chrome_metrics_service_accessor.h",
sdefresne87704da22016-10-26 17:01:1928 "ios_chrome_metrics_service_client.h",
sdefresne4f378a72017-01-04 14:51:1529 "ios_chrome_metrics_service_client.mm",
sdefresne87704da22016-10-26 17:01:1930 "ios_chrome_metrics_services_manager_client.h",
31 "ios_chrome_metrics_services_manager_client.mm",
sdefresne87704da22016-10-26 17:01:1932 "ios_chrome_stability_metrics_provider.h",
pklc425b642017-04-14 23:09:5133 "ios_chrome_stability_metrics_provider.mm",
Mihai Sardarescu190d7da2018-12-21 21:17:1734 "ios_profile_session_durations_service.h",
35 "ios_profile_session_durations_service.mm",
36 "ios_profile_session_durations_service_factory.h",
37 "ios_profile_session_durations_service_factory.mm",
Mingyun Li78c631f2019-04-10 02:42:4938 "ios_user_type_metrics_provider.h",
39 "ios_user_type_metrics_provider.mm",
sdefresne87704da22016-10-26 17:01:1940 "mobile_session_shutdown_metrics_provider.h",
41 "mobile_session_shutdown_metrics_provider.mm",
42 "previous_session_info.h",
43 "previous_session_info.mm",
44 "previous_session_info_private.h",
Steven Holte5c275a502018-10-04 18:29:5545 ]
46 public_deps = [
47 ":ukm_url_recorder",
sdefresne87704da22016-10-26 17:01:1948 ]
49 deps = [
50 "//base",
holte1334c0aa2017-02-09 22:52:4151 "//components/browser_sync",
sdefresne87704da22016-10-26 17:01:1952 "//components/crash/core/common",
holte7b74c622017-01-23 23:13:0753 "//components/keyed_service/core",
sdefresne87704da22016-10-26 17:01:1954 "//components/keyed_service/ios",
55 "//components/metrics",
56 "//components/metrics:net",
sdefresne87704da22016-10-26 17:01:1957 "//components/metrics:ui",
58 "//components/metrics_services_manager",
59 "//components/navigation_metrics",
60 "//components/omnibox/browser",
61 "//components/prefs",
62 "//components/rappor",
63 "//components/signin/core/browser",
64 "//components/sync",
holte7b74c622017-01-23 23:13:0765 "//components/ukm",
66 "//components/ukm:observers",
sdefresne87704da22016-10-26 17:01:1967 "//components/variations",
68 "//components/variations/service",
69 "//components/version_info",
sdefresnecd5a0de2016-10-28 12:32:3670 "//ios/chrome/browser",
sdefresne87704da22016-10-26 17:01:1971 "//ios/chrome/browser/browser_state",
72 "//ios/chrome/browser/crash_report",
73 "//ios/chrome/browser/google",
holte7b74c622017-01-23 23:13:0774 "//ios/chrome/browser/history:history",
sdefresne87704da22016-10-26 17:01:1975 "//ios/chrome/browser/signin",
76 "//ios/chrome/browser/sync",
sdefresne6165c8742017-01-16 15:42:0277 "//ios/chrome/browser/tabs",
rogerm95c554122017-04-05 12:11:5278 "//ios/chrome/browser/translate",
sdefresne87704da22016-10-26 17:01:1979 "//ios/chrome/browser/variations",
80 "//ios/chrome/browser/variations:ios_chrome_ui_string_overrider_factory",
Mohamad Ahmadib1eb9392017-11-18 23:34:4081 "//ios/chrome/browser/web_state_list",
sdefresne87704da22016-10-26 17:01:1982 "//ios/chrome/common",
Mingyun Li78c631f2019-04-10 02:42:4983 "//ios/public/provider/chrome/browser",
84 "//ios/public/provider/chrome/browser/user",
sdefresne87704da22016-10-26 17:01:1985 "//ios/web",
juanmihdec332312019-02-04 17:30:5886 "//url",
sdefresne87704da22016-10-26 17:01:1987 ]
88}
89
90source_set("unit_tests") {
stkhapugin48471ab2016-12-05 14:31:1991 configs += [ "//build/config/compiler:enable_arc" ]
sdefresne87704da22016-10-26 17:01:1992 testonly = true
93 sources = [
94 "ios_chrome_metrics_service_accessor_unittest.cc",
Danyao Wang70e34e32017-11-21 21:21:3195 "ios_chrome_stability_metrics_provider_unittest.mm",
sdefresne87704da22016-10-26 17:01:1996 "mobile_session_shutdown_metrics_provider_unittest.mm",
97 "previous_session_info_unittest.mm",
Steven Holte9ee27ab2018-02-26 22:07:0598 "ukm_url_recorder_unittest.mm",
sdefresne87704da22016-10-26 17:01:1999 ]
100 deps = [
101 ":metrics",
102 "//base",
103 "//base/test:test_support",
104 "//components/metrics",
105 "//components/metrics:test_support",
106 "//components/prefs",
107 "//components/prefs:test_support",
Steven Holte9ee27ab2018-02-26 22:07:05108 "//components/ukm:test_support",
sdefresne87704da22016-10-26 17:01:19109 "//components/version_info",
Steven Holte9ee27ab2018-02-26 22:07:05110 "//ios/chrome/browser/web:test_support",
sdefresne87704da22016-10-26 17:01:19111 "//ios/chrome/test:test_support",
Steven Holte9ee27ab2018-02-26 22:07:05112 "//ios/web/public:public",
Danyao Wang70e34e32017-11-21 21:21:31113 "//ios/web/public/test/fakes",
Steven Holte9ee27ab2018-02-26 22:07:05114 "//net:test_support",
sdefresne87704da22016-10-26 17:01:19115 "//testing/gtest",
116 ]
117}
sdefresne69edf1b2016-12-19 22:53:32118
119source_set("metrics_internal") {
stkhapugin7ad61a72017-05-03 16:41:17120 configs += [ "//build/config/compiler:enable_arc" ]
sdefresne69edf1b2016-12-19 22:53:32121 sources = [
Jean-François Geyelin9586755e2017-08-17 11:37:27122 "drag_and_drop_recorder.h",
123 "drag_and_drop_recorder.mm",
sdefresne69edf1b2016-12-19 22:53:32124 "first_user_action_recorder.cc",
125 "first_user_action_recorder.h",
126 "new_tab_page_uma.h",
127 "new_tab_page_uma.mm",
128 "size_class_recorder.h",
129 "size_class_recorder.mm",
130 "size_class_recorder_private.h",
Sylvain Defresne890975f52017-08-24 17:42:26131 "tab_usage_recorder.h",
132 "tab_usage_recorder.mm",
sdefresne69edf1b2016-12-19 22:53:32133 ]
134 deps = [
sdefresne037962f2017-01-05 08:51:39135 ":metrics",
sdefresne69edf1b2016-12-19 22:53:32136 "//base",
137 "//components/google/core/browser",
138 "//ios/chrome/browser",
139 "//ios/chrome/browser/browser_state",
Sylvain Defresne890975f52017-08-24 17:42:26140 "//ios/chrome/browser/prerender",
sdefresne69edf1b2016-12-19 22:53:32141 "//ios/chrome/browser/tabs",
142 "//ios/chrome/browser/ui",
Sylvain Defresne890975f52017-08-24 17:42:26143 "//ios/chrome/browser/web_state_list",
sdefresne69edf1b2016-12-19 22:53:32144 "//ios/web",
sdefresne037962f2017-01-05 08:51:39145 "//ui/base",
sdefresne69edf1b2016-12-19 22:53:32146 "//url",
147 ]
148 libs = [ "UIKit.framework" ]
149}
150
151source_set("unit_tests_internal") {
lindsayw515ce762017-05-29 10:45:10152 configs += [ "//build/config/compiler:enable_arc" ]
sdefresne69edf1b2016-12-19 22:53:32153 testonly = true
154 sources = [
155 "first_user_action_recorder_unittest.cc",
156 "size_class_recorder_unittest.mm",
157 "tab_usage_recorder_unittest.mm",
158 ]
159 deps = [
sdefresne037962f2017-01-05 08:51:39160 ":metrics",
sdefresne69edf1b2016-12-19 22:53:32161 ":metrics_internal",
162 "//base",
163 "//base/test:test_support",
sdefresne69edf1b2016-12-19 22:53:32164 "//ios/chrome/browser/ui",
Sylvain Defresne890975f52017-08-24 17:42:26165 "//ios/chrome/browser/web_state_list",
166 "//ios/chrome/browser/web_state_list:test_support",
sdefresne69edf1b2016-12-19 22:53:32167 "//ios/testing:ocmock_support",
168 "//ios/web",
baxley66cc96f02017-05-31 18:13:32169 "//ios/web/public/test",
kkhorimoto8dd141c2017-06-02 02:36:35170 "//ios/web/public/test/fakes",
sdefresne69edf1b2016-12-19 22:53:32171 "//testing/gtest",
sdefresne69edf1b2016-12-19 22:53:32172 ]
173}
174
175source_set("eg_tests") {
stkhapugin1b8ec122017-02-06 19:13:07176 configs += [ "//build/config/compiler:enable_arc" ]
sdefresne69edf1b2016-12-19 22:53:32177 testonly = true
178 sources = [
179 "tab_usage_recorder_egtest.mm",
Mohamad Ahmadib1eb9392017-11-18 23:34:40180 "ukm_egtest.mm",
sdefresne69edf1b2016-12-19 22:53:32181 ]
182 deps = [
sdefresne037962f2017-01-05 08:51:39183 ":metrics_internal",
lpromeroeb702092017-05-02 15:27:43184 ":test_support",
sdefresne69edf1b2016-12-19 22:53:32185 "//base",
186 "//base/test:test_support",
Mohamad Ahmadib1eb9392017-11-18 23:34:40187 "//components/browser_sync",
188 "//components/metrics",
189 "//components/metrics_services_manager",
sdefresne69edf1b2016-12-19 22:53:32190 "//components/strings",
Mohamad Ahmadib1eb9392017-11-18 23:34:40191 "//components/ukm",
Steven Holte9ee27ab2018-02-26 22:07:05192 "//components/ukm:test_support",
Mohamad Ahmadib1eb9392017-11-18 23:34:40193 "//ios/chrome/app/strings:ios_strings_grit",
194 "//ios/chrome/browser",
195 "//ios/chrome/browser/metrics",
196 "//ios/chrome/browser/signin",
197 "//ios/chrome/browser/sync",
sdefresne69edf1b2016-12-19 22:53:32198 "//ios/chrome/browser/ui",
Mohamad Ahmadib1eb9392017-11-18 23:34:40199 "//ios/chrome/browser/ui/authentication",
Mohamad Ahmadib1eb9392017-11-18 23:34:40200 "//ios/chrome/browser/ui/authentication:eg_test_support",
Gauthier Ambard2f8f18b2018-12-13 13:20:09201 "//ios/chrome/browser/ui/authentication/cells",
Gauthier Ambardea529df2018-09-26 08:46:10202 "//ios/chrome/browser/ui/popup_menu:constants",
sdefresne69edf1b2016-12-19 22:53:32203 "//ios/chrome/browser/ui/settings",
Gauthier Ambard835c5e1e2018-07-27 13:37:28204 "//ios/chrome/browser/ui/tab_grid:egtest_support",
Gauthier Ambard1dfff732018-02-22 12:50:21205 "//ios/chrome/browser/ui/toolbar/buttons",
sczs42f7f7482017-11-08 01:13:27206 "//ios/chrome/browser/ui/toolbar/public",
sdefresne69edf1b2016-12-19 22:53:32207 "//ios/chrome/test/app:test_support",
208 "//ios/chrome/test/earl_grey:test_support",
Mohamad Ahmadib1eb9392017-11-18 23:34:40209 "//ios/public/provider/chrome/browser/signin:test_support",
baxley68f208ca2017-01-24 23:58:16210 "//ios/web:earl_grey_test_support",
baxley66cc96f02017-05-31 18:13:32211 "//ios/web/public/test",
Rohit Raof1aa7372019-04-09 17:33:35212 "//ios/web/public/test:element_selector",
baxley66cc96f02017-05-31 18:13:32213 "//ios/web/public/test/http_server",
sdefresne69edf1b2016-12-19 22:53:32214 "//ui/base",
lpromeroeb702092017-05-02 15:27:43215 "//url",
sdefresne69edf1b2016-12-19 22:53:32216 ]
217 libs = [ "XCTest.framework" ]
218}
lpromeroeb702092017-05-02 15:27:43219
lpromeroeb702092017-05-02 15:27:43220source_set("test_support") {
221 testonly = true
222 sources = [
223 "tab_usage_recorder_test_util.h",
224 "tab_usage_recorder_test_util.mm",
225 ]
226 deps = [
227 "//base",
Rohit Rao4a8424d2018-04-25 14:36:08228 "//ios/chrome/app:app_internal",
lpromeroeb702092017-05-02 15:27:43229 "//ios/chrome/app/strings",
Rohit Rao4a8424d2018-04-25 14:36:08230 "//ios/chrome/browser/tabs",
lpromeroeb702092017-05-02 15:27:43231 "//ios/chrome/browser/ui",
Rohit Rao4a8424d2018-04-25 14:36:08232 "//ios/chrome/browser/ui/main",
Gauthier Ambardea529df2018-09-26 08:46:10233 "//ios/chrome/browser/ui/popup_menu:constants",
Rohit Rao4a8424d2018-04-25 14:36:08234 "//ios/chrome/browser/ui/tab_grid:egtest_support",
Rohit Rao4a8424d2018-04-25 14:36:08235 "//ios/chrome/browser/web_state_list",
lpromeroeb702092017-05-02 15:27:43236 "//ios/chrome/test/app:test_support",
237 "//ios/chrome/test/earl_grey:test_support",
lpromeroeb702092017-05-02 15:27:43238 "//ui/base",
239 ]
240 configs += [ "//build/config/compiler:enable_arc" ]
241}
Gayane Petrosyanf3ecb1452018-05-23 19:50:47242
243import("//components/metrics/generate_expired_histograms_array.gni")
244
245generate_expired_histograms_array("expired_histograms_array") {
246 inputs = [
247 "//tools/metrics/histograms/histograms.xml",
248 "//tools/metrics/histograms/enums.xml",
249 ]
250 namespace = ""
251 header_filename = "ios_expired_histograms_array.h"
252 major_branch_date_filepath = "//chrome/MAJOR_BRANCH_DATE"
253 milestone_filepath = "//chrome/VERSION"
254}