blob: 02009fbb30e34c230e4e256a9117b382ee67bc4a [file] [log] [blame]
[email protected]824288842014-06-20 05:26:591# Use of this source code is governed by a BSD-style license that can be
2# found in the LICENSE file.
3
Daniel Nicoara46aa8292018-09-12 15:03:034import("//build/config/chromecast_build.gni")
Jens Widell7cc0f1d2018-02-20 15:56:295import("//build/config/jumbo.gni")
Scott Violetc8240b02018-03-08 22:03:596import("//extensions/buildflags/buildflags.gni")
qsrfb5251d12015-01-21 15:57:227import("//testing/test.gni")
[email protected]824288842014-06-20 05:26:598import("//tools/grit/grit_rule.gni")
[email protected]5842610c2014-08-07 03:35:189import("//tools/grit/repack.gni")
James Cookab78ff82018-12-19 18:23:2110import("//ui/base/ui_features.gni")
[email protected]824288842014-06-20 05:26:5911
thestigda556af2014-11-01 00:51:3112assert(enable_extensions)
13
[email protected]824288842014-06-20 05:26:5914group("extensions_resources") {
brettw717185d2015-09-18 19:58:5715 public_deps = [
mukai4245dfe82014-09-05 17:40:5116 ":extensions_browser_resources",
[email protected]824288842014-06-20 05:26:5917 ":extensions_renderer_resources",
18 ":extensions_resources_grd",
19 ]
20}
21
[email protected]824288842014-06-20 05:26:5922grit("extensions_resources_grd") {
23 source = "extensions_resources.grd"
[email protected]b89c53842014-07-23 16:32:3224 outputs = [
25 "grit/extensions_resources.h",
26 "extensions_resources.pak",
27 ]
[email protected]824288842014-06-20 05:26:5928}
29
mukai4245dfe82014-09-05 17:40:5130grit("extensions_browser_resources") {
31 source = "browser/resources/extensions_browser_resources.grd"
32 outputs = [
33 "grit/extensions_browser_resources.h",
34 "grit/extensions_browser_resources_map.cc",
35 "grit/extensions_browser_resources_map.h",
36 "extensions_browser_resources_100_percent.pak",
37 "extensions_browser_resources_200_percent.pak",
38 ]
mukai4245dfe82014-09-05 17:40:5139}
40
[email protected]824288842014-06-20 05:26:5941grit("extensions_renderer_resources") {
42 source = "renderer/resources/extensions_renderer_resources.grd"
Daniel Nicoara46aa8292018-09-12 15:03:0343 defines = [ "is_chromecast=$is_chromecast" ]
[email protected]b89c53842014-07-23 16:32:3244 outputs = [
45 "grit/extensions_renderer_resources.h",
46 "extensions_renderer_resources.pak",
47 ]
scottmg22d2efa2014-12-03 19:21:2248 grit_flags = [
49 "-E",
wychen5e1f7252017-05-30 08:05:1050 "mojom_root=" + rebase_path(root_gen_dir, root_build_dir),
scottmg22d2efa2014-12-03 19:21:2251 ]
cjhopman11a68cb2014-10-13 22:47:5452
Reilly Grant4f7b3ad2017-10-18 22:53:3053 # Files included from ${mojom_root} are generated.
54 source_is_generated = true
55
cjhopman11a68cb2014-10-13 22:47:5456 deps = [
Miyoung Shine12a96d92019-07-25 01:46:5357 "//extensions/common:mojom_js",
yzshen9e737bf2017-06-21 19:38:2358 "//extensions/common/api:mojom_js",
Ke He31d0bb02018-02-24 07:16:2459 "//services/device/public/mojom:mojom_js",
cjhopman11a68cb2014-10-13 22:47:5460 ]
[email protected]824288842014-06-20 05:26:5961}
[email protected]016eeef82014-08-01 20:37:4362
Jens Widell7cc0f1d2018-02-20 15:56:2963jumbo_static_library("test_support") {
Brett Wilson8f80ad0b2014-09-08 19:50:2464 testonly = true
brettw3728a542016-09-02 21:56:2665 sources = [
lazyboy3fe97522017-01-27 18:13:0866 "browser/api/declarative/test_rules_registry.cc",
67 "browser/api/declarative/test_rules_registry.h",
brettw3728a542016-09-02 21:56:2668 "browser/api/storage/settings_test_util.cc",
69 "browser/api/storage/settings_test_util.h",
70 "browser/api_test_utils.cc",
71 "browser/api_test_utils.h",
72 "browser/api_unittest.cc",
73 "browser/api_unittest.h",
74 "browser/app_window/test_app_window_contents.cc",
75 "browser/app_window/test_app_window_contents.h",
Istiaque Ahmed72816eaa2018-01-30 22:37:0676 "browser/content_verifier/test_utils.cc",
77 "browser/content_verifier/test_utils.h",
brettw3728a542016-09-02 21:56:2678 "browser/extension_error_test_util.cc",
79 "browser/extension_error_test_util.h",
80 "browser/extensions_test.cc",
81 "browser/extensions_test.h",
82 "browser/guest_view/mime_handler_view/test_mime_handler_view_guest.cc",
83 "browser/guest_view/mime_handler_view/test_mime_handler_view_guest.h",
84 "browser/mock_extension_system.cc",
85 "browser/mock_extension_system.h",
lazyboya00eafc2017-04-08 00:57:1986 "browser/mock_external_provider.cc",
87 "browser/mock_external_provider.h",
brettw3728a542016-09-02 21:56:2688 "browser/scoped_ignore_content_verifier_for_test.cc",
89 "browser/scoped_ignore_content_verifier_for_test.h",
Michael Giuffrida2f2cf6c2017-09-06 19:23:3090 "browser/test_event_router.cc",
91 "browser/test_event_router.h",
brettw3728a542016-09-02 21:56:2692 "browser/test_extension_registry_observer.cc",
93 "browser/test_extension_registry_observer.h",
94 "browser/test_extensions_browser_client.cc",
95 "browser/test_extensions_browser_client.h",
96 "browser/test_image_loader.cc",
97 "browser/test_image_loader.h",
98 "browser/test_management_policy.cc",
99 "browser/test_management_policy.h",
100 "browser/test_runtime_api_delegate.cc",
101 "browser/test_runtime_api_delegate.h",
102 "common/extension_builder.cc",
103 "common/extension_builder.h",
104 "common/manifest_test.cc",
105 "common/manifest_test.h",
isandrk556c3fd2017-05-02 13:07:17106 "common/permissions/mock_manifest_permission.cc",
107 "common/permissions/mock_manifest_permission.h",
brettw3728a542016-09-02 21:56:26108 "common/permissions/permission_message_test_util.cc",
109 "common/permissions/permission_message_test_util.h",
Marek Haranczykfef658d2018-04-18 17:56:51110 "common/scoped_testing_manifest_handler_registry.cc",
111 "common/scoped_testing_manifest_handler_registry.h",
brettw3728a542016-09-02 21:56:26112 "renderer/test_extensions_renderer_client.cc",
113 "renderer/test_extensions_renderer_client.h",
114 "test/background_page_watcher.cc",
115 "test/background_page_watcher.h",
116 "test/extension_test_message_listener.cc",
117 "test/extension_test_message_listener.h",
steelf65a72a2016-10-19 22:16:45118 "test/extension_test_notification_observer.cc",
119 "test/extension_test_notification_observer.h",
Devlin Cronind13e7e52018-02-07 19:50:32120 "test/logging_timer.cc",
121 "test/logging_timer.h",
brettw3728a542016-09-02 21:56:26122 "test/result_catcher.cc",
123 "test/result_catcher.h",
124 "test/test_content_utility_client.cc",
125 "test/test_content_utility_client.h",
Devlin Cronin4f455a22018-01-25 01:36:45126 "test/test_extension_dir.cc",
127 "test/test_extension_dir.h",
brettw3728a542016-09-02 21:56:26128 "test/test_extensions_client.cc",
129 "test/test_extensions_client.h",
130 "test/test_permission_message_provider.cc",
131 "test/test_permission_message_provider.h",
132 ]
scottmg7c7296f42015-02-28 02:23:09133
brettwd1c719a2015-02-19 23:17:04134 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
135 configs += [ "//build/config/compiler:no_size_t_to_int_warning" ]
[email protected]016eeef82014-08-01 20:37:43136
137 deps = [
[email protected]bc8a0922014-08-20 00:51:08138 ":extensions_resources",
[email protected]016eeef82014-08-01 20:37:43139 "//base",
ryanchungd318d762016-05-05 17:22:12140 "//components/cast_certificate:test_support",
zhaobinaa0a64442017-06-08 23:04:44141 "//components/cast_channel:test_support",
fsamuelaf5bf6d12015-05-28 16:29:54142 "//components/guest_view/browser:test_support",
brettw9f7802a22016-01-30 06:40:17143 "//components/prefs:test_support",
a-v-yb2cf8f82016-12-11 17:35:07144 "//components/sync_preferences:test_support",
jamescook62117922014-10-20 14:35:11145 "//content/public/common",
146 "//content/test:test_support",
[email protected]016eeef82014-08-01 20:37:43147 "//extensions/browser",
Karan Bhatia71f6a622017-10-02 19:39:10148 "//extensions/browser:test_support",
[email protected]016eeef82014-08-01 20:37:43149 "//extensions/common",
Devlin Cronindf96db52018-08-20 21:41:15150 "//extensions/common:core_api_provider",
[email protected]016eeef82014-08-01 20:37:43151 "//extensions/common/api",
Devlin Cronin9ee032f2018-07-13 19:30:25152 "//extensions/common/api:extensions_features",
[email protected]016eeef82014-08-01 20:37:43153 "//net:test_support",
[email protected]5842610c2014-08-07 03:35:18154 "//testing/gmock",
[email protected]016eeef82014-08-01 20:37:43155 "//testing/gtest",
Charles Zhao55c4c752017-11-09 00:07:49156 "//third_party/cld_3/src/src:cld_3",
[email protected]016eeef82014-08-01 20:37:43157 ]
158
jamescookf112ccd2015-02-06 18:06:33159 public_deps = [
rockot466cf202015-02-13 23:03:36160 "//content/public/browser",
jamescookf112ccd2015-02-06 18:06:33161 ]
[email protected]016eeef82014-08-01 20:37:43162}
[email protected]5842610c2014-08-07 03:35:18163
[email protected]5842610c2014-08-07 03:35:18164repack("shell_and_test_pak") {
Xiyuan Xia2397ff82018-09-18 22:52:27165 testonly = true
166
[email protected]5842610c2014-08-07 03:35:18167 sources = [
lfg0330a7e2014-09-12 22:58:28168 "$root_gen_dir/content/app/strings/content_strings_en-US.pak",
thakis300faa72017-02-28 23:59:43169 "$root_gen_dir/content/browser/devtools/devtools_resources.pak",
[email protected]5842610c2014-08-07 03:35:18170 "$root_gen_dir/content/content_resources.pak",
171 "$root_gen_dir/content/shell/shell_resources.pak",
mukaiefb3eb02014-11-11 23:38:00172 "$root_gen_dir/extensions/extensions_browser_resources_100_percent.pak",
[email protected]5842610c2014-08-07 03:35:18173 "$root_gen_dir/extensions/extensions_renderer_resources.pak",
174 "$root_gen_dir/extensions/extensions_resources.pak",
jamescook62117922014-10-20 14:35:11175 "$root_gen_dir/extensions/shell/app_shell_resources.pak",
[email protected]5842610c2014-08-07 03:35:18176 "$root_gen_dir/extensions/strings/extensions_strings_en-US.pak",
Yuzhu Shen2efe42772017-11-11 02:01:09177 "$root_gen_dir/mojo/public/js/mojo_bindings_resources.pak",
Blink Reformata30d4232018-04-07 15:31:06178 "$root_gen_dir/third_party/blink/public/resources/blink_resources.pak",
179 "$root_gen_dir/third_party/blink/public/resources/blink_scaled_resources_100_percent.pak",
[email protected]5842610c2014-08-07 03:35:18180 "$root_gen_dir/ui/resources/ui_resources_100_percent.pak",
181 "$root_gen_dir/ui/strings/app_locale_settings_en-US.pak",
182 "$root_gen_dir/ui/strings/ui_strings_en-US.pak",
[email protected]5842610c2014-08-07 03:35:18183 ]
184
185 output = "$root_out_dir/extensions_shell_and_test.pak"
186
187 deps = [
188 ":extensions_resources",
[email protected]5842610c2014-08-07 03:35:18189 "//content:resources",
brettwde262b02015-05-27 19:41:42190 "//content/app/strings",
mukaiefb3eb02014-11-11 23:38:00191 "//content/browser/devtools:devtools_resources",
192 "//content/shell:resources",
jamescook62117922014-10-20 14:35:11193 "//extensions/shell:resources",
[email protected]5842610c2014-08-07 03:35:18194 "//extensions/strings",
Yuzhu Shen2efe42772017-11-11 02:01:09195 "//mojo/public/js:resources",
Blink Reformata30d4232018-04-07 15:31:06196 "//third_party/blink/public:resources",
197 "//third_party/blink/public:scaled_resources_100_percent",
[email protected]5842610c2014-08-07 03:35:18198 "//ui/resources",
199 "//ui/strings",
200 ]
201}
202
jamescookf112ccd2015-02-06 18:06:33203test("extensions_unittests") {
brettwdc1e6182016-08-30 20:52:13204 sources = [
205 "test/extensions_unittests_main.cc",
Devlin Cronind13e7e52018-02-07 19:50:32206 "test/logging_timer_unittest.cc",
jamescookf112ccd2015-02-06 18:06:33207 ]
208
dprankef497c7962015-07-31 19:46:23209 data = [
210 "test/data/",
211 "//chrome/test/data/extensions/",
ryanchungd318d762016-05-05 17:22:12212 "//components/test/data/cast_certificate/",
rockot8cba0362016-08-09 21:43:43213 "$root_out_dir/content_shell.pak",
dprankef497c7962015-07-31 19:46:23214 "$root_out_dir/extensions_shell_and_test.pak",
215 ]
216
jamescookf112ccd2015-02-06 18:06:33217 deps = [
218 ":extensions_resources",
219 ":shell_and_test_pak",
220 ":test_support",
jamescookf112ccd2015-02-06 18:06:33221 "//base/test:test_support",
brettwdc1e6182016-08-30 20:52:13222 "//content/public/common",
jamescookf112ccd2015-02-06 18:06:33223 "//content/test:test_support",
brettwdc1e6182016-08-30 20:52:13224 "//extensions/browser:unit_tests",
jamescookf112ccd2015-02-06 18:06:33225 "//extensions/common",
brettwdc1e6182016-08-30 20:52:13226 "//extensions/common:unit_tests",
227 "//extensions/renderer:unit_tests",
228 "//extensions/shell:unit_tests",
Jay Civelli52054ad22017-12-01 02:15:42229 "//services/data_decoder:lib",
230 "//services/service_manager/public/cpp/test:test_support",
brettwdc1e6182016-08-30 20:52:13231 "//ui/gl:test_support",
jamescookf112ccd2015-02-06 18:06:33232 ]
233
thestigee796a12015-10-29 21:29:46234 data_deps = [
Alexis Hetu0f218862018-08-13 18:51:42235 "//third_party/mesa_headers",
thestigee796a12015-10-29 21:29:46236 ]
[email protected]5842610c2014-08-07 03:35:18237}
rockotea9df2a2015-01-22 20:26:36238
239test("extensions_browsertests") {
dprankef497c7962015-07-31 19:46:23240 data = [
brettwdc1e6182016-08-30 20:52:13241 "//extensions/test/data/",
dprankef497c7962015-07-31 19:46:23242 "//net/tools/testserver/",
Takuto Ikuta7ff839d2018-08-09 03:15:36243 "//third_party/pywebsocket/src/mod_pywebsocket/",
dprankef497c7962015-07-31 19:46:23244 "//third_party/tlslite/",
245 "$root_out_dir/extensions_shell_and_test.pak",
246 ]
247
rockotea9df2a2015-01-22 20:26:36248 deps = [
brettwdc1e6182016-08-30 20:52:13249 "//extensions/browser:browser_tests",
250 "//extensions/shell:browser_tests",
rockotea9df2a2015-01-22 20:26:36251 ]
252
thestigee796a12015-10-29 21:29:46253 data_deps = [
Alexis Hetu0f218862018-08-13 18:51:42254 "//third_party/mesa_headers",
thestigee796a12015-10-29 21:29:46255 ]
rockotea9df2a2015-01-22 20:26:36256}
brettw39355da2015-07-11 00:20:51257
258# TODO(rockot) bug 505926: These should be moved to extensions_browsertests but have
259# old dependencies on chrome files. The chrome dependencies should be removed
260# and these moved to the extensions_browsertests target. Currently, we solve
261# the problem by making this a source set and linking it into
262# //chrome/test:browser_tests.
263source_set("chrome_extensions_browsertests") {
264 testonly = true
brettw129f8512016-09-01 22:36:58265 sources = [
266 "browser/api/app_window/app_window_apitest.cc",
267 "browser/api/bluetooth/bluetooth_apitest.cc",
268 "browser/api/bluetooth/bluetooth_private_apitest.cc",
269 "browser/api/cast_channel/cast_channel_apitest.cc",
brettw129f8512016-09-01 22:36:58270 "browser/api/serial/serial_apitest.cc",
271 "browser/api/usb/usb_manual_apitest.cc",
272 "browser/app_window/app_window_browsertest.cc",
273 "browser/guest_view/extension_options/extension_options_apitest.cc",
274 "browser/guest_view/mime_handler_view/mime_handler_view_browsertest.cc",
brettw129f8512016-09-01 22:36:58275 "renderer/script_context_browsertest.cc",
276 ]
brettw39355da2015-07-11 00:20:51277
278 defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]
279
280 # These are the deps from browser_tests minus some internal Chrome ones that
281 # aren't allowed to be included here and that aren't needed.
282 deps = [
283 "//base",
284 "//base:i18n",
brettw39355da2015-07-11 00:20:51285 "//base/test:test_support",
286 "//chrome/browser",
brettw39355da2015-07-11 00:20:51287 "//chrome/common/extensions/api",
288 "//chrome/renderer",
Sam McNallyad57375eb2018-07-19 00:41:08289 "//components/app_modal",
brettw39355da2015-07-11 00:20:51290 "//components/autofill/content/browser:risk_proto",
brettw39355da2015-07-11 00:20:51291 "//components/autofill/content/renderer:test_support",
292 "//components/captive_portal:test_support",
brettw15764b12015-11-30 22:11:05293 "//components/dom_distiller/content/browser",
brettw39355da2015-07-11 00:20:51294 "//components/dom_distiller/core:test_support",
295 "//components/guest_view/browser:test_support",
296 "//components/resources",
297 "//components/strings",
Max Boguefef332d2016-07-28 22:09:09298 "//components/sync",
maxbogue91ee60682016-10-17 20:09:46299 "//components/sync:test_support_model",
brettw39355da2015-07-11 00:20:51300 "//components/translate/core/common",
brettw39355da2015-07-11 00:20:51301 "//crypto:platform",
302 "//crypto:test_support",
303 "//device/bluetooth:mocks",
brettw39355da2015-07-11 00:20:51304 "//extensions/common/api",
305 "//google_apis:test_support",
Dale Curtis77be7ae2017-08-18 15:56:48306 "//media:test_support",
brettw39355da2015-07-11 00:20:51307 "//media/cast:test_support",
308 "//net",
309 "//net:test_support",
brettw39355da2015-07-11 00:20:51310 "//skia",
brettw39355da2015-07-11 00:20:51311 "//testing/gmock",
312 "//testing/gtest",
313 "//testing/perf",
Blink Reformata30d4232018-04-07 15:31:06314 "//third_party/blink/public:blink",
brettw39355da2015-07-11 00:20:51315 "//third_party/cacheinvalidation",
316 "//third_party/icu",
317 "//third_party/leveldatabase",
318 "//third_party/libaddressinput",
brettw39355da2015-07-11 00:20:51319 "//third_party/webrtc/modules/desktop_capture",
kjellandere3cbd6d2017-02-28 06:49:46320 "//third_party/webrtc_overrides",
brettwc5fcdd02016-10-12 07:25:12321 "//third_party/widevine/cdm:headers",
brettw39355da2015-07-11 00:20:51322 "//ui/accessibility:test_support",
323 "//ui/base:test_support",
324 "//ui/compositor:test_support",
325 "//ui/resources",
326 "//ui/web_dialogs:test_support",
327 "//v8",
328 ]
peletskyic8452f22016-02-23 15:26:12329
330 if (is_chromeos) {
331 deps += [ "//components/user_manager:test_support" ]
332 }
brettw39355da2015-07-11 00:20:51333}
334
335# TODO(rockot) bug 505926: This should be deleted for the same reason as
336# chrome_extensions_browsertests.
337source_set("chrome_extensions_interactive_uitests") {
338 testonly = true
brettw129f8512016-09-01 22:36:58339 sources = [
340 "browser/app_window/app_window_interactive_uitest.cc",
Sam McNally4aa62fd02018-04-12 22:12:11341 "browser/guest_view/mime_handler_view/mime_handler_view_interactive_uitest.cc",
brettw129f8512016-09-01 22:36:58342 ]
brettw39355da2015-07-11 00:20:51343
344 defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]
345
346 # These are the deps from interactive_uitests minus some internal Chrome
347 # ones that aren't allowed to be included here and that aren't needed.
348 deps = [
brettw39355da2015-07-11 00:20:51349 "//chrome/browser",
350 "//chrome/browser/devtools",
351 "//chrome/renderer",
352 "//chrome/test:test_support",
Max Boguefef332d2016-07-28 22:09:09353 "//components/sync",
brettw39355da2015-07-11 00:20:51354 "//content/app/resources",
355 "//crypto:platform",
356 "//crypto:test_support",
357 "//google_apis:test_support",
358 "//net",
359 "//net:net_resources",
360 "//net:test_support",
361 "//skia",
brettw39355da2015-07-11 00:20:51362 "//testing/gmock",
363 "//testing/gtest",
364 "//third_party/hunspell",
365 "//third_party/icu",
366 "//third_party/libpng",
367 "//third_party/zlib",
368 "//ui/base:test_support",
369 "//ui/resources:ui_test_pak",
370 "//ui/web_dialogs:test_support",
371 ]
372}