blob: d87b37ae45c01094abc16455ffd46fe6323243e4 [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",
sdefresne87704da22016-10-26 17:01:1938 "mobile_session_shutdown_metrics_provider.h",
39 "mobile_session_shutdown_metrics_provider.mm",
40 "previous_session_info.h",
41 "previous_session_info.mm",
42 "previous_session_info_private.h",
Steven Holte5c275a502018-10-04 18:29:5543 ]
44 public_deps = [
45 ":ukm_url_recorder",
sdefresne87704da22016-10-26 17:01:1946 ]
47 deps = [
48 "//base",
holte1334c0aa2017-02-09 22:52:4149 "//components/browser_sync",
sdefresne87704da22016-10-26 17:01:1950 "//components/crash/core/common",
holte7b74c622017-01-23 23:13:0751 "//components/keyed_service/core",
sdefresne87704da22016-10-26 17:01:1952 "//components/keyed_service/ios",
53 "//components/metrics",
54 "//components/metrics:net",
sdefresne87704da22016-10-26 17:01:1955 "//components/metrics:ui",
56 "//components/metrics_services_manager",
57 "//components/navigation_metrics",
58 "//components/omnibox/browser",
59 "//components/prefs",
60 "//components/rappor",
61 "//components/signin/core/browser",
62 "//components/sync",
holte7b74c622017-01-23 23:13:0763 "//components/ukm",
64 "//components/ukm:observers",
sdefresne87704da22016-10-26 17:01:1965 "//components/variations",
66 "//components/variations/service",
67 "//components/version_info",
sdefresnecd5a0de2016-10-28 12:32:3668 "//ios/chrome/browser",
sdefresne87704da22016-10-26 17:01:1969 "//ios/chrome/browser/browser_state",
70 "//ios/chrome/browser/crash_report",
71 "//ios/chrome/browser/google",
holte7b74c622017-01-23 23:13:0772 "//ios/chrome/browser/history:history",
sdefresne87704da22016-10-26 17:01:1973 "//ios/chrome/browser/signin",
74 "//ios/chrome/browser/sync",
sdefresne6165c8742017-01-16 15:42:0275 "//ios/chrome/browser/tabs",
rogerm95c554122017-04-05 12:11:5276 "//ios/chrome/browser/translate",
sdefresne87704da22016-10-26 17:01:1977 "//ios/chrome/browser/variations",
78 "//ios/chrome/browser/variations:ios_chrome_ui_string_overrider_factory",
Mohamad Ahmadib1eb9392017-11-18 23:34:4079 "//ios/chrome/browser/web_state_list",
sdefresne87704da22016-10-26 17:01:1980 "//ios/chrome/common",
sdefresne87704da22016-10-26 17:01:1981 "//ios/web",
juanmihdec332312019-02-04 17:30:5882 "//url",
sdefresne87704da22016-10-26 17:01:1983 ]
84}
85
86source_set("unit_tests") {
stkhapugin48471ab2016-12-05 14:31:1987 configs += [ "//build/config/compiler:enable_arc" ]
sdefresne87704da22016-10-26 17:01:1988 testonly = true
89 sources = [
90 "ios_chrome_metrics_service_accessor_unittest.cc",
Danyao Wang70e34e32017-11-21 21:21:3191 "ios_chrome_stability_metrics_provider_unittest.mm",
sdefresne87704da22016-10-26 17:01:1992 "mobile_session_shutdown_metrics_provider_unittest.mm",
93 "previous_session_info_unittest.mm",
Steven Holte9ee27ab2018-02-26 22:07:0594 "ukm_url_recorder_unittest.mm",
sdefresne87704da22016-10-26 17:01:1995 ]
96 deps = [
97 ":metrics",
98 "//base",
99 "//base/test:test_support",
100 "//components/metrics",
101 "//components/metrics:test_support",
102 "//components/prefs",
103 "//components/prefs:test_support",
Steven Holte9ee27ab2018-02-26 22:07:05104 "//components/ukm:test_support",
sdefresne87704da22016-10-26 17:01:19105 "//components/version_info",
Steven Holte9ee27ab2018-02-26 22:07:05106 "//ios/chrome/browser/web:test_support",
sdefresne87704da22016-10-26 17:01:19107 "//ios/chrome/test:test_support",
Steven Holte9ee27ab2018-02-26 22:07:05108 "//ios/web/public:public",
Danyao Wang70e34e32017-11-21 21:21:31109 "//ios/web/public/test/fakes",
Steven Holte9ee27ab2018-02-26 22:07:05110 "//net:test_support",
sdefresne87704da22016-10-26 17:01:19111 "//testing/gtest",
112 ]
113}
sdefresne69edf1b2016-12-19 22:53:32114
115source_set("metrics_internal") {
stkhapugin7ad61a72017-05-03 16:41:17116 configs += [ "//build/config/compiler:enable_arc" ]
sdefresne69edf1b2016-12-19 22:53:32117 sources = [
Jean-François Geyelin9586755e2017-08-17 11:37:27118 "drag_and_drop_recorder.h",
119 "drag_and_drop_recorder.mm",
sdefresne69edf1b2016-12-19 22:53:32120 "first_user_action_recorder.cc",
121 "first_user_action_recorder.h",
122 "new_tab_page_uma.h",
123 "new_tab_page_uma.mm",
124 "size_class_recorder.h",
125 "size_class_recorder.mm",
126 "size_class_recorder_private.h",
Sylvain Defresne890975f52017-08-24 17:42:26127 "tab_usage_recorder.h",
128 "tab_usage_recorder.mm",
sdefresne69edf1b2016-12-19 22:53:32129 ]
130 deps = [
sdefresne037962f2017-01-05 08:51:39131 ":metrics",
sdefresne69edf1b2016-12-19 22:53:32132 "//base",
133 "//components/google/core/browser",
134 "//ios/chrome/browser",
135 "//ios/chrome/browser/browser_state",
Sylvain Defresne890975f52017-08-24 17:42:26136 "//ios/chrome/browser/prerender",
sdefresne69edf1b2016-12-19 22:53:32137 "//ios/chrome/browser/tabs",
138 "//ios/chrome/browser/ui",
Sylvain Defresne890975f52017-08-24 17:42:26139 "//ios/chrome/browser/web_state_list",
sdefresne69edf1b2016-12-19 22:53:32140 "//ios/web",
sdefresne037962f2017-01-05 08:51:39141 "//ui/base",
sdefresne69edf1b2016-12-19 22:53:32142 "//url",
143 ]
144 libs = [ "UIKit.framework" ]
145}
146
147source_set("unit_tests_internal") {
lindsayw515ce762017-05-29 10:45:10148 configs += [ "//build/config/compiler:enable_arc" ]
sdefresne69edf1b2016-12-19 22:53:32149 testonly = true
150 sources = [
151 "first_user_action_recorder_unittest.cc",
152 "size_class_recorder_unittest.mm",
153 "tab_usage_recorder_unittest.mm",
154 ]
155 deps = [
sdefresne037962f2017-01-05 08:51:39156 ":metrics",
sdefresne69edf1b2016-12-19 22:53:32157 ":metrics_internal",
158 "//base",
159 "//base/test:test_support",
sdefresne69edf1b2016-12-19 22:53:32160 "//ios/chrome/browser/ui",
Sylvain Defresne890975f52017-08-24 17:42:26161 "//ios/chrome/browser/web_state_list",
162 "//ios/chrome/browser/web_state_list:test_support",
sdefresne69edf1b2016-12-19 22:53:32163 "//ios/testing:ocmock_support",
164 "//ios/web",
baxley66cc96f02017-05-31 18:13:32165 "//ios/web/public/test",
kkhorimoto8dd141c2017-06-02 02:36:35166 "//ios/web/public/test/fakes",
sdefresne69edf1b2016-12-19 22:53:32167 "//testing/gtest",
sdefresne69edf1b2016-12-19 22:53:32168 ]
169}
170
171source_set("eg_tests") {
stkhapugin1b8ec122017-02-06 19:13:07172 configs += [ "//build/config/compiler:enable_arc" ]
sdefresne69edf1b2016-12-19 22:53:32173 testonly = true
174 sources = [
175 "tab_usage_recorder_egtest.mm",
Mohamad Ahmadib1eb9392017-11-18 23:34:40176 "ukm_egtest.mm",
sdefresne69edf1b2016-12-19 22:53:32177 ]
178 deps = [
sdefresne037962f2017-01-05 08:51:39179 ":metrics_internal",
lpromeroeb702092017-05-02 15:27:43180 ":test_support",
sdefresne69edf1b2016-12-19 22:53:32181 "//base",
182 "//base/test:test_support",
Mohamad Ahmadib1eb9392017-11-18 23:34:40183 "//components/browser_sync",
184 "//components/metrics",
185 "//components/metrics_services_manager",
sdefresne69edf1b2016-12-19 22:53:32186 "//components/strings",
Mohamad Ahmadib1eb9392017-11-18 23:34:40187 "//components/ukm",
Steven Holte9ee27ab2018-02-26 22:07:05188 "//components/ukm:test_support",
Mohamad Ahmadib1eb9392017-11-18 23:34:40189 "//ios/chrome/app/strings:ios_strings_grit",
190 "//ios/chrome/browser",
191 "//ios/chrome/browser/metrics",
192 "//ios/chrome/browser/signin",
193 "//ios/chrome/browser/sync",
sdefresne69edf1b2016-12-19 22:53:32194 "//ios/chrome/browser/ui",
Mohamad Ahmadib1eb9392017-11-18 23:34:40195 "//ios/chrome/browser/ui/authentication",
Mohamad Ahmadib1eb9392017-11-18 23:34:40196 "//ios/chrome/browser/ui/authentication:eg_test_support",
Gauthier Ambard2f8f18b2018-12-13 13:20:09197 "//ios/chrome/browser/ui/authentication/cells",
Gauthier Ambardea529df2018-09-26 08:46:10198 "//ios/chrome/browser/ui/popup_menu:constants",
sdefresne69edf1b2016-12-19 22:53:32199 "//ios/chrome/browser/ui/settings",
Gauthier Ambard835c5e1e2018-07-27 13:37:28200 "//ios/chrome/browser/ui/tab_grid:egtest_support",
Gauthier Ambard1dfff732018-02-22 12:50:21201 "//ios/chrome/browser/ui/toolbar/buttons",
sczs42f7f7482017-11-08 01:13:27202 "//ios/chrome/browser/ui/toolbar/public",
sdefresne69edf1b2016-12-19 22:53:32203 "//ios/chrome/test/app:test_support",
204 "//ios/chrome/test/earl_grey:test_support",
Mohamad Ahmadib1eb9392017-11-18 23:34:40205 "//ios/public/provider/chrome/browser/signin:test_support",
baxley68f208ca2017-01-24 23:58:16206 "//ios/web:earl_grey_test_support",
baxley66cc96f02017-05-31 18:13:32207 "//ios/web/public/test",
208 "//ios/web/public/test/http_server",
sdefresne69edf1b2016-12-19 22:53:32209 "//ui/base",
lpromeroeb702092017-05-02 15:27:43210 "//url",
sdefresne69edf1b2016-12-19 22:53:32211 ]
212 libs = [ "XCTest.framework" ]
213}
lpromeroeb702092017-05-02 15:27:43214
lpromeroeb702092017-05-02 15:27:43215source_set("test_support") {
216 testonly = true
217 sources = [
218 "tab_usage_recorder_test_util.h",
219 "tab_usage_recorder_test_util.mm",
220 ]
221 deps = [
222 "//base",
Rohit Rao4a8424d2018-04-25 14:36:08223 "//ios/chrome/app:app_internal",
lpromeroeb702092017-05-02 15:27:43224 "//ios/chrome/app/strings",
Rohit Rao4a8424d2018-04-25 14:36:08225 "//ios/chrome/browser/tabs",
lpromeroeb702092017-05-02 15:27:43226 "//ios/chrome/browser/ui",
Rohit Rao4a8424d2018-04-25 14:36:08227 "//ios/chrome/browser/ui/main",
Gauthier Ambardea529df2018-09-26 08:46:10228 "//ios/chrome/browser/ui/popup_menu:constants",
Rohit Rao4a8424d2018-04-25 14:36:08229 "//ios/chrome/browser/ui/tab_grid:egtest_support",
Rohit Rao4a8424d2018-04-25 14:36:08230 "//ios/chrome/browser/web_state_list",
lpromeroeb702092017-05-02 15:27:43231 "//ios/chrome/test/app:test_support",
232 "//ios/chrome/test/earl_grey:test_support",
lpromeroeb702092017-05-02 15:27:43233 "//ui/base",
234 ]
235 configs += [ "//build/config/compiler:enable_arc" ]
236}
Gayane Petrosyanf3ecb1452018-05-23 19:50:47237
238import("//components/metrics/generate_expired_histograms_array.gni")
239
240generate_expired_histograms_array("expired_histograms_array") {
241 inputs = [
242 "//tools/metrics/histograms/histograms.xml",
243 "//tools/metrics/histograms/enums.xml",
244 ]
245 namespace = ""
246 header_filename = "ios_expired_histograms_array.h"
247 major_branch_date_filepath = "//chrome/MAJOR_BRANCH_DATE"
248 milestone_filepath = "//chrome/VERSION"
249}