blob: f9703b044242ede16329ab67b0cc25e30a55b2ba [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",
81 "//testing/gtest",
82 ]
83}
sdefresne69edf1b2016-12-19 22:53:3284
85source_set("metrics_internal") {
stkhapugin7ad61a72017-05-03 16:41:1786 configs += [ "//build/config/compiler:enable_arc" ]
sdefresne69edf1b2016-12-19 22:53:3287 sources = [
88 "first_user_action_recorder.cc",
89 "first_user_action_recorder.h",
90 "new_tab_page_uma.h",
91 "new_tab_page_uma.mm",
92 "size_class_recorder.h",
93 "size_class_recorder.mm",
94 "size_class_recorder_private.h",
95 "tab_usage_recorder.h",
96 "tab_usage_recorder.mm",
97 "tab_usage_recorder_delegate.h",
98 ]
99 deps = [
sdefresne037962f2017-01-05 08:51:39100 ":metrics",
sdefresne69edf1b2016-12-19 22:53:32101 "//base",
102 "//components/google/core/browser",
103 "//ios/chrome/browser",
104 "//ios/chrome/browser/browser_state",
sdefresne69edf1b2016-12-19 22:53:32105 "//ios/chrome/browser/tabs",
106 "//ios/chrome/browser/ui",
sdefresne69edf1b2016-12-19 22:53:32107 "//ios/web",
sdefresne037962f2017-01-05 08:51:39108 "//ui/base",
sdefresne69edf1b2016-12-19 22:53:32109 "//url",
110 ]
sdefresne2f7781c2017-03-02 19:12:46111 public_deps = [
112 ":metrics_internal_arc",
113 ]
114 allow_circular_includes_from = [ ":metrics_internal_arc" ]
sdefresne69edf1b2016-12-19 22:53:32115 libs = [ "UIKit.framework" ]
116}
117
sdefresne2f7781c2017-03-02 19:12:46118source_set("metrics_internal_arc") {
119 sources = [
120 "tab_usage_recorder_web_state_list_observer.h",
121 "tab_usage_recorder_web_state_list_observer.mm",
122 ]
123 deps = [
124 "//base",
125 "//ios/chrome/browser/tabs",
sdefresne62a00bb2017-04-10 15:36:05126 "//ios/chrome/browser/web_state_list",
sdefresne2f7781c2017-03-02 19:12:46127 ]
128 configs += [ "//build/config/compiler:enable_arc" ]
129}
130
sdefresne69edf1b2016-12-19 22:53:32131source_set("unit_tests_internal") {
lindsayw515ce762017-05-29 10:45:10132 configs += [ "//build/config/compiler:enable_arc" ]
sdefresne69edf1b2016-12-19 22:53:32133 testonly = true
134 sources = [
135 "first_user_action_recorder_unittest.cc",
136 "size_class_recorder_unittest.mm",
137 "tab_usage_recorder_unittest.mm",
138 ]
139 deps = [
sdefresne037962f2017-01-05 08:51:39140 ":metrics",
sdefresne69edf1b2016-12-19 22:53:32141 ":metrics_internal",
142 "//base",
143 "//base/test:test_support",
sdefresne69edf1b2016-12-19 22:53:32144 "//ios/chrome/browser/tabs",
145 "//ios/chrome/browser/ui",
146 "//ios/testing:ocmock_support",
147 "//ios/web",
148 "//ios/web:test_support",
149 "//testing/gtest",
150 "//third_party/ocmock",
151 ]
152}
153
154source_set("eg_tests") {
stkhapugin1b8ec122017-02-06 19:13:07155 configs += [ "//build/config/compiler:enable_arc" ]
sdefresne69edf1b2016-12-19 22:53:32156 testonly = true
157 sources = [
158 "tab_usage_recorder_egtest.mm",
159 ]
160 deps = [
sdefresne037962f2017-01-05 08:51:39161 ":metrics_internal",
lpromeroeb702092017-05-02 15:27:43162 ":test_support",
sdefresne69edf1b2016-12-19 22:53:32163 "//base",
164 "//base/test:test_support",
165 "//components/strings",
sdefresne69edf1b2016-12-19 22:53:32166 "//ios/chrome/browser/ui",
167 "//ios/chrome/browser/ui/settings",
168 "//ios/chrome/browser/ui/toolbar",
169 "//ios/chrome/browser/ui/tools_menu",
170 "//ios/chrome/test/app:test_support",
171 "//ios/chrome/test/earl_grey:test_support",
172 "//ios/testing:ios_test_support",
baxley68f208ca2017-01-24 23:58:16173 "//ios/web:earl_grey_test_support",
sdefresne69edf1b2016-12-19 22:53:32174 "//ios/web:test_support",
175 "//ui/base",
lpromeroeb702092017-05-02 15:27:43176 "//url",
sdefresne69edf1b2016-12-19 22:53:32177 ]
178 libs = [ "XCTest.framework" ]
179}
lpromeroeb702092017-05-02 15:27:43180
181# TODO(crbug.com/694662): These tests depend on loading errors, which are
182# behaving differently when the network is not available. When the underlying
183# issue is resolved, these tests can move back to |eg_tests|.
184source_set("external_url_eg_tests") {
185 configs += [ "//build/config/compiler:enable_arc" ]
186 testonly = true
187 sources = [
188 "external_url_tab_usage_recorder_egtest.mm",
189 ]
190 deps = [
191 ":metrics_internal",
192 ":test_support",
193 "//ios/chrome/test/app:test_support",
194 "//ios/chrome/test/earl_grey:test_support",
195 "//ios/web:test_support",
196 ]
197 libs = [ "XCTest.framework" ]
198}
199
200source_set("test_support") {
201 testonly = true
202 sources = [
203 "tab_usage_recorder_test_util.h",
204 "tab_usage_recorder_test_util.mm",
205 ]
206 deps = [
207 "//base",
208 "//ios/chrome/app/strings",
209 "//ios/chrome/browser/ui",
210 "//ios/chrome/browser/ui/tools_menu",
211 "//ios/chrome/test/app:test_support",
212 "//ios/chrome/test/earl_grey:test_support",
213 "//ios/testing:ios_test_support",
214 "//ui/base",
215 ]
216 configs += [ "//build/config/compiler:enable_arc" ]
217}