blob: d932efff651e44405b691848fafab30cc1c437fd [file] [log] [blame]
sczs4bce11c2018-03-19 15:48:081# Copyright 2018 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("recent_tabs") {
6 configs += [ "//build/config/compiler:enable_arc" ]
7 sources = [
sczsd677c802018-10-02 22:46:408 "closed_tabs_observer_bridge.h",
9 "closed_tabs_observer_bridge.mm",
sczs4bce11c2018-03-19 15:48:0810 "recent_tabs_coordinator.h",
11 "recent_tabs_coordinator.mm",
12 "recent_tabs_mediator.h",
13 "recent_tabs_mediator.mm",
Mikel Astiz84c9d2e12018-10-23 16:16:0514 "synced_sessions_bridge.h",
15 "synced_sessions_bridge.mm",
sczs4bce11c2018-03-19 15:48:0816 ]
17 deps = [
sczs45496d2d2018-03-28 04:21:3618 ":recent_tabs_ui",
Chris Ludc1f1322018-04-06 17:24:2419 "resources:show_history",
sczs4bce11c2018-03-19 15:48:0820 "//base",
sczs4bce11c2018-03-19 15:48:0821 "//components/sessions",
22 "//components/sync",
23 "//ios/chrome/app/strings",
24 "//ios/chrome/browser/browser_state",
edchin8b2a5692018-05-22 02:31:3925 "//ios/chrome/browser/favicon:favicon",
sczs4bce11c2018-03-19 15:48:0826 "//ios/chrome/browser/sessions",
Mikel Astiz84c9d2e12018-10-23 16:16:0527 "//ios/chrome/browser/signin",
sczs4bce11c2018-03-19 15:48:0828 "//ios/chrome/browser/sync",
edchinf5014562018-06-09 04:17:1829 "//ios/chrome/browser/ui/commands",
sczs4bce11c2018-03-19 15:48:0830 "//ios/chrome/browser/ui/coordinators:chrome_coordinators",
31 "//ios/chrome/browser/ui/ntp",
sczs4bce11c2018-03-19 15:48:0832 "//ios/chrome/browser/ui/table_view",
33 "//ios/chrome/browser/ui/util",
Mikel Astiz84c9d2e12018-10-23 16:16:0534 "//services/identity/public/cpp",
sczs4bce11c2018-03-19 15:48:0835 "//ui/base",
36 ]
sczsd677c802018-10-02 22:46:4037 public_deps = [
38 "//components/sync_sessions",
39 ]
sczs4bce11c2018-03-19 15:48:0840}
sczs45496d2d2018-03-28 04:21:3641
42source_set("recent_tabs_ui") {
43 configs += [ "//build/config/compiler:enable_arc" ]
44 sources = [
sczsd677c802018-10-02 22:46:4045 "recent_tabs_constants.h",
46 "recent_tabs_constants.mm",
47 "recent_tabs_consumer.h",
sczsd677c802018-10-02 22:46:4048 "recent_tabs_presentation_delegate.h",
sczs45496d2d2018-03-28 04:21:3649 "recent_tabs_table_view_controller.h",
50 "recent_tabs_table_view_controller.mm",
sczsd677c802018-10-02 22:46:4051 "recent_tabs_table_view_controller_delegate.h",
Rohit Rao2f831542018-03-28 18:02:0052 "recent_tabs_transitioning_delegate.h",
53 "recent_tabs_transitioning_delegate.mm",
sczsd677c802018-10-02 22:46:4054 "sessions_sync_user_state.h",
55 "synced_sessions.h",
56 "synced_sessions.mm",
sczs45496d2d2018-03-28 04:21:3657 ]
58 deps = [
59 "//base",
sczs45496d2d2018-03-28 04:21:3660 "//components/sessions",
61 "//components/strings",
62 "//components/sync",
Jérôme Lebel10348fa2018-10-25 17:42:5063 "//components/unified_consent",
sczs45496d2d2018-03-28 04:21:3664 "//ios/chrome/app/strings",
65 "//ios/chrome/browser/browser_state",
66 "//ios/chrome/browser/metrics:metrics_internal",
67 "//ios/chrome/browser/sessions",
Mark Cogan93ed21e2018-12-20 15:04:1468 "//ios/chrome/browser/sessions:serialisation",
sczs45496d2d2018-03-28 04:21:3669 "//ios/chrome/browser/sync",
70 "//ios/chrome/browser/ui",
71 "//ios/chrome/browser/ui/authentication",
Gauthier Ambard2f8f18b2018-12-13 13:20:0972 "//ios/chrome/browser/ui/authentication/cells",
sczs45496d2d2018-03-28 04:21:3673 "//ios/chrome/browser/ui/commands",
74 "//ios/chrome/browser/ui/context_menu",
sczs45496d2d2018-03-28 04:21:3675 "//ios/chrome/browser/ui/settings/sync_utils",
76 "//ios/chrome/browser/ui/signin_interaction/public",
77 "//ios/chrome/browser/ui/table_view",
Rohit Rao2f831542018-03-28 18:02:0078 "//ios/chrome/browser/ui/table_view:presentation",
sczs45496d2d2018-03-28 04:21:3679 "//ios/chrome/browser/ui/util",
Mark Cogan443101b72018-12-19 18:43:5480 "//ios/chrome/browser/url_loading",
Mark Cogan93ed21e2018-12-20 15:04:1481 "//ios/chrome/browser/web_state_list",
82 "//ios/chrome/browser/web_state_list",
Olivier Robine70e6522018-06-26 12:36:1283 "//ios/chrome/common/favicon",
sczs45496d2d2018-03-28 04:21:3684 "//ui/base",
85 ]
sczsd677c802018-10-02 22:46:4086 public_deps = [
87 "//components/sync_sessions",
88 ]
89}
90
91source_set("unit_tests") {
92 configs += [ "//build/config/compiler:enable_arc" ]
93 testonly = true
94 sources = [
95 "recent_tabs_coordinator_unittest.mm",
96 ]
97 deps = [
98 ":recent_tabs",
99 ":recent_tabs_ui",
100 "//base",
101 "//components/browser_sync",
Mikel Astizcbf0f912018-11-29 06:56:52102 "//components/sync:test_support_model",
sczsd677c802018-10-02 22:46:40103 "//components/sync_sessions",
104 "//ios/chrome/browser/browser_state:test_support",
105 "//ios/chrome/browser/signin",
106 "//ios/chrome/browser/sync",
107 "//ios/chrome/browser/sync:test_support",
108 "//ios/chrome/browser/ui:feature_flags",
109 "//ios/chrome/test:test_support",
110 "//ios/web/public/test",
Mario Sanchez Prada18bf5942018-11-05 12:40:39111 "//services/identity/public/cpp",
112 "//services/identity/public/cpp:test_support",
sczsd677c802018-10-02 22:46:40113 "//testing/gtest",
114 "//third_party/ocmock",
115 ]
116}
117
118source_set("eg_tests") {
119 configs += [ "//build/config/compiler:enable_arc" ]
120 testonly = true
121 sources = [
122 "recent_tabs_egtest.mm",
123 ]
124 deps = [
125 ":recent_tabs_ui",
126 "//base/test:test_support",
127 "//components/strings",
128 "//ios/chrome/app/strings",
129 "//ios/chrome/browser/ui",
130 "//ios/chrome/browser/ui/authentication:eg_test_support",
131 "//ios/chrome/browser/ui/history:history_ui",
132 "//ios/chrome/browser/ui/table_view",
133 "//ios/chrome/test/app:test_support",
134 "//ios/chrome/test/earl_grey:test_support",
135 "//ios/public/provider/chrome/browser/signin:test_support",
136 "//ios/third_party/earl_grey:earl_grey+link",
137 "//ios/web/public/test/http_server",
138 "//ui/base",
139 ]
140 libs = [ "XCTest.framework" ]
sczs45496d2d2018-03-28 04:21:36141}