blob: feff38a2a832e71638da3a5b9ac1949591d6f74b [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
5source_set("metrics") {
stkhapuginf05af572016-12-05 14:34:496 configs += [ "//build/config/compiler:enable_arc" ]
sdefresne87704da22016-10-26 17:01:197 sources = [
8 "field_trial_synchronizer.cc",
9 "field_trial_synchronizer.h",
10 "ios_chrome_metrics_service_accessor.cc",
11 "ios_chrome_metrics_service_accessor.h",
sdefresne87704da22016-10-26 17:01:1912 "ios_chrome_metrics_service_client.h",
sdefresne4f378a72017-01-04 14:51:1513 "ios_chrome_metrics_service_client.mm",
sdefresne87704da22016-10-26 17:01:1914 "ios_chrome_metrics_services_manager_client.h",
15 "ios_chrome_metrics_services_manager_client.mm",
sdefresne87704da22016-10-26 17:01:1916 "ios_chrome_stability_metrics_provider.h",
pklc425b642017-04-14 23:09:5117 "ios_chrome_stability_metrics_provider.mm",
sdefresne87704da22016-10-26 17:01:1918 "mobile_session_shutdown_metrics_provider.h",
19 "mobile_session_shutdown_metrics_provider.mm",
20 "previous_session_info.h",
21 "previous_session_info.mm",
22 "previous_session_info_private.h",
23 ]
24 deps = [
25 "//base",
holte1334c0aa2017-02-09 22:52:4126 "//components/browser_sync",
sdefresne87704da22016-10-26 17:01:1927 "//components/crash/core/common",
holte7b74c622017-01-23 23:13:0728 "//components/keyed_service/core",
sdefresne87704da22016-10-26 17:01:1929 "//components/keyed_service/ios",
30 "//components/metrics",
31 "//components/metrics:net",
32 "//components/metrics:profiler",
33 "//components/metrics:ui",
34 "//components/metrics_services_manager",
35 "//components/navigation_metrics",
36 "//components/omnibox/browser",
37 "//components/prefs",
38 "//components/rappor",
39 "//components/signin/core/browser",
40 "//components/sync",
holte7b74c622017-01-23 23:13:0741 "//components/ukm",
42 "//components/ukm:observers",
sdefresne87704da22016-10-26 17:01:1943 "//components/variations",
44 "//components/variations/service",
45 "//components/version_info",
sdefresnecd5a0de2016-10-28 12:32:3646 "//ios/chrome/browser",
sdefresne87704da22016-10-26 17:01:1947 "//ios/chrome/browser/browser_state",
48 "//ios/chrome/browser/crash_report",
49 "//ios/chrome/browser/google",
holte7b74c622017-01-23 23:13:0750 "//ios/chrome/browser/history:history",
sdefresne87704da22016-10-26 17:01:1951 "//ios/chrome/browser/signin",
52 "//ios/chrome/browser/sync",
sdefresne6165c8742017-01-16 15:42:0253 "//ios/chrome/browser/tabs",
rogerm95c554122017-04-05 12:11:5254 "//ios/chrome/browser/translate",
sdefresne87704da22016-10-26 17:01:1955 "//ios/chrome/browser/variations",
56 "//ios/chrome/browser/variations:ios_chrome_ui_string_overrider_factory",
57 "//ios/chrome/common",
sdefresne87704da22016-10-26 17:01:1958 "//ios/web",
59 ]
60}
61
62source_set("unit_tests") {
stkhapugin48471ab2016-12-05 14:31:1963 configs += [ "//build/config/compiler:enable_arc" ]
sdefresne87704da22016-10-26 17:01:1964 testonly = true
65 sources = [
66 "ios_chrome_metrics_service_accessor_unittest.cc",
67 "ios_chrome_stability_metrics_provider_unittest.cc",
68 "mobile_session_shutdown_metrics_provider_unittest.mm",
69 "previous_session_info_unittest.mm",
70 ]
71 deps = [
72 ":metrics",
73 "//base",
74 "//base/test:test_support",
75 "//components/metrics",
76 "//components/metrics:test_support",
77 "//components/prefs",
78 "//components/prefs:test_support",
79 "//components/version_info",
80 "//ios/chrome/test:test_support",
baxley66cc96f02017-05-31 18:13:3281 "//ios/web/public/test",
sdefresne87704da22016-10-26 17:01:1982 "//testing/gtest",
83 ]
84}
sdefresne69edf1b2016-12-19 22:53:3285
86source_set("metrics_internal") {
stkhapugin7ad61a72017-05-03 16:41:1787 configs += [ "//build/config/compiler:enable_arc" ]
sdefresne69edf1b2016-12-19 22:53:3288 sources = [
89 "first_user_action_recorder.cc",
90 "first_user_action_recorder.h",
91 "new_tab_page_uma.h",
92 "new_tab_page_uma.mm",
93 "size_class_recorder.h",
94 "size_class_recorder.mm",
95 "size_class_recorder_private.h",
96 "tab_usage_recorder.h",
97 "tab_usage_recorder.mm",
98 "tab_usage_recorder_delegate.h",
99 ]
100 deps = [
sdefresne037962f2017-01-05 08:51:39101 ":metrics",
sdefresne69edf1b2016-12-19 22:53:32102 "//base",
103 "//components/google/core/browser",
104 "//ios/chrome/browser",
105 "//ios/chrome/browser/browser_state",
sdefresne69edf1b2016-12-19 22:53:32106 "//ios/chrome/browser/tabs",
107 "//ios/chrome/browser/ui",
sdefresne69edf1b2016-12-19 22:53:32108 "//ios/web",
sdefresne037962f2017-01-05 08:51:39109 "//ui/base",
sdefresne69edf1b2016-12-19 22:53:32110 "//url",
111 ]
sdefresne2f7781c2017-03-02 19:12:46112 public_deps = [
113 ":metrics_internal_arc",
114 ]
115 allow_circular_includes_from = [ ":metrics_internal_arc" ]
sdefresne69edf1b2016-12-19 22:53:32116 libs = [ "UIKit.framework" ]
117}
118
sdefresne2f7781c2017-03-02 19:12:46119source_set("metrics_internal_arc") {
120 sources = [
121 "tab_usage_recorder_web_state_list_observer.h",
122 "tab_usage_recorder_web_state_list_observer.mm",
123 ]
124 deps = [
125 "//base",
126 "//ios/chrome/browser/tabs",
sdefresne62a00bb2017-04-10 15:36:05127 "//ios/chrome/browser/web_state_list",
sdefresne2f7781c2017-03-02 19:12:46128 ]
129 configs += [ "//build/config/compiler:enable_arc" ]
130}
131
sdefresne69edf1b2016-12-19 22:53:32132source_set("unit_tests_internal") {
lindsayw515ce762017-05-29 10:45:10133 configs += [ "//build/config/compiler:enable_arc" ]
sdefresne69edf1b2016-12-19 22:53:32134 testonly = true
135 sources = [
136 "first_user_action_recorder_unittest.cc",
137 "size_class_recorder_unittest.mm",
138 "tab_usage_recorder_unittest.mm",
139 ]
140 deps = [
sdefresne037962f2017-01-05 08:51:39141 ":metrics",
sdefresne69edf1b2016-12-19 22:53:32142 ":metrics_internal",
143 "//base",
144 "//base/test:test_support",
sdefresne69edf1b2016-12-19 22:53:32145 "//ios/chrome/browser/tabs",
146 "//ios/chrome/browser/ui",
147 "//ios/testing:ocmock_support",
148 "//ios/web",
baxley66cc96f02017-05-31 18:13:32149 "//ios/web/public/test",
kkhorimoto8dd141c2017-06-02 02:36:35150 "//ios/web/public/test/fakes",
sdefresne69edf1b2016-12-19 22:53:32151 "//testing/gtest",
152 "//third_party/ocmock",
153 ]
154}
155
156source_set("eg_tests") {
stkhapugin1b8ec122017-02-06 19:13:07157 configs += [ "//build/config/compiler:enable_arc" ]
sdefresne69edf1b2016-12-19 22:53:32158 testonly = true
159 sources = [
160 "tab_usage_recorder_egtest.mm",
161 ]
162 deps = [
sdefresne037962f2017-01-05 08:51:39163 ":metrics_internal",
lpromeroeb702092017-05-02 15:27:43164 ":test_support",
sdefresne69edf1b2016-12-19 22:53:32165 "//base",
166 "//base/test:test_support",
167 "//components/strings",
sdefresne69edf1b2016-12-19 22:53:32168 "//ios/chrome/browser/ui",
169 "//ios/chrome/browser/ui/settings",
170 "//ios/chrome/browser/ui/toolbar",
171 "//ios/chrome/browser/ui/tools_menu",
172 "//ios/chrome/test/app:test_support",
173 "//ios/chrome/test/earl_grey:test_support",
174 "//ios/testing:ios_test_support",
baxley68f208ca2017-01-24 23:58:16175 "//ios/web:earl_grey_test_support",
baxley66cc96f02017-05-31 18:13:32176 "//ios/web/public/test",
177 "//ios/web/public/test/http_server",
sdefresne69edf1b2016-12-19 22:53:32178 "//ui/base",
lpromeroeb702092017-05-02 15:27:43179 "//url",
sdefresne69edf1b2016-12-19 22:53:32180 ]
181 libs = [ "XCTest.framework" ]
182}
lpromeroeb702092017-05-02 15:27:43183
184# TODO(crbug.com/694662): These tests depend on loading errors, which are
185# behaving differently when the network is not available. When the underlying
186# issue is resolved, these tests can move back to |eg_tests|.
187source_set("external_url_eg_tests") {
188 configs += [ "//build/config/compiler:enable_arc" ]
189 testonly = true
190 sources = [
191 "external_url_tab_usage_recorder_egtest.mm",
192 ]
193 deps = [
194 ":metrics_internal",
195 ":test_support",
196 "//ios/chrome/test/app:test_support",
197 "//ios/chrome/test/earl_grey:test_support",
baxley66cc96f02017-05-31 18:13:32198 "//ios/web/public/test/http_server",
lpromeroeb702092017-05-02 15:27:43199 ]
200 libs = [ "XCTest.framework" ]
201}
202
203source_set("test_support") {
204 testonly = true
205 sources = [
206 "tab_usage_recorder_test_util.h",
207 "tab_usage_recorder_test_util.mm",
208 ]
209 deps = [
210 "//base",
211 "//ios/chrome/app/strings",
212 "//ios/chrome/browser/ui",
213 "//ios/chrome/browser/ui/tools_menu",
214 "//ios/chrome/test/app:test_support",
215 "//ios/chrome/test/earl_grey:test_support",
216 "//ios/testing:ios_test_support",
217 "//ui/base",
218 ]
219 configs += [ "//build/config/compiler:enable_arc" ]
220}