blob: ae0049f5fbc64a85508857fc7f38c0a927bb1940 [file] [log] [blame]
[email protected]824288842014-06-20 05:26:591# Copyright 2014 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
qsrfb5251d12015-01-21 15:57:225import("//testing/test.gni")
[email protected]824288842014-06-20 05:26:596import("//tools/grit/grit_rule.gni")
[email protected]5842610c2014-08-07 03:35:187import("//tools/grit/repack.gni")
[email protected]824288842014-06-20 05:26:598
thestigda556af2014-11-01 00:51:319assert(enable_extensions)
10
[email protected]824288842014-06-20 05:26:5911# GYP version: extensions/extensions_resources.gyp:extensions_resources
12group("extensions_resources") {
13 deps = [
mukai4245dfe82014-09-05 17:40:5114 ":extensions_browser_resources",
[email protected]824288842014-06-20 05:26:5915 ":extensions_renderer_resources",
16 ":extensions_resources_grd",
17 ]
18}
19
20# GYP version: extensions/extensions_resources.gyp:extensions_resources
yoz774dcda2d2014-08-27 03:32:5821# (extensions_resources action)
[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
30# GYP version: extensions/extensions_resources.gyp:extensions_resources
mukai4245dfe82014-09-05 17:40:5131# (extensions_browser_resources action)
32grit("extensions_browser_resources") {
33 source = "browser/resources/extensions_browser_resources.grd"
34 outputs = [
35 "grit/extensions_browser_resources.h",
36 "grit/extensions_browser_resources_map.cc",
37 "grit/extensions_browser_resources_map.h",
38 "extensions_browser_resources_100_percent.pak",
39 "extensions_browser_resources_200_percent.pak",
40 ]
scottmg22d2efa2014-12-03 19:21:2241 grit_flags = [
42 "-E",
43 "mojom_root=" + rebase_path(root_gen_dir),
44 ]
mukai4245dfe82014-09-05 17:40:5145}
46
47# GYP version: extensions/extensions_resources.gyp:extensions_resources
48# (extensions_renderer_resources action)
[email protected]824288842014-06-20 05:26:5949grit("extensions_renderer_resources") {
50 source = "renderer/resources/extensions_renderer_resources.grd"
[email protected]b89c53842014-07-23 16:32:3251 outputs = [
52 "grit/extensions_renderer_resources.h",
53 "extensions_renderer_resources.pak",
54 ]
scottmg22d2efa2014-12-03 19:21:2255 grit_flags = [
56 "-E",
57 "mojom_root=" + rebase_path(root_gen_dir),
58 ]
cjhopman11a68cb2014-10-13 22:47:5459
cjhopman11a68cb2014-10-13 22:47:5460 deps = [
61 "//device/serial:serial_mojo",
vchigrin61944ae2015-01-30 23:51:3262 "//extensions/common:mojo",
sammcc5eb526d2015-01-23 01:21:5463 "//extensions/common/api:mojom",
cjhopman11a68cb2014-10-13 22:47:5464 ]
[email protected]824288842014-06-20 05:26:5965}
[email protected]016eeef82014-08-01 20:37:4366
67source_set("test_support") {
Brett Wilson8f80ad0b2014-09-08 19:50:2468 testonly = true
[email protected]016eeef82014-08-01 20:37:4369 sources = [
jamescookf112ccd2015-02-06 18:06:3370 "browser/api/cast_channel/test_util.cc",
71 "browser/api/cast_channel/test_util.h",
[email protected]016eeef82014-08-01 20:37:4372 "browser/api/dns/mock_host_resolver_creator.cc",
73 "browser/api/dns/mock_host_resolver_creator.h",
brettwa78fded2014-09-07 00:27:4174 "browser/api/storage/settings_test_util.cc",
75 "browser/api/storage/settings_test_util.h",
[email protected]016eeef82014-08-01 20:37:4376 "browser/api_test_utils.cc",
77 "browser/api_test_utils.h",
jamescook62117922014-10-20 14:35:1178 "browser/api_unittest.cc",
79 "browser/api_unittest.h",
brettwa68ea2b2015-02-01 02:54:0780 "browser/app_window/test_app_window_contents.cc",
81 "browser/app_window/test_app_window_contents.h",
82 "browser/extension_error_test_util.cc",
83 "browser/extension_error_test_util.h",
[email protected]89eaeab2014-08-05 06:39:5084 "browser/extensions_test.cc",
85 "browser/extensions_test.h",
brettw7d6ec2462015-01-07 13:00:5186 "browser/guest_view/test_guest_view_manager.cc",
87 "browser/guest_view/test_guest_view_manager.h",
brettwa78fded2014-09-07 00:27:4188 "browser/mock_extension_system.cc",
89 "browser/mock_extension_system.h",
brettw7d6ec2462015-01-07 13:00:5190 "browser/test_extension_registry_observer.cc",
91 "browser/test_extension_registry_observer.h",
[email protected]016eeef82014-08-01 20:37:4392 "browser/test_extensions_browser_client.cc",
93 "browser/test_extensions_browser_client.h",
94 "browser/test_management_policy.cc",
95 "browser/test_management_policy.h",
96 "browser/test_runtime_api_delegate.cc",
97 "browser/test_runtime_api_delegate.h",
98 "common/extension_builder.cc",
99 "common/extension_builder.h",
jamescookf79df332014-09-17 04:05:10100 "common/manifest_test.cc",
101 "common/manifest_test.h",
[email protected]016eeef82014-08-01 20:37:43102 "common/test_util.cc",
103 "common/test_util.h",
104 "common/value_builder.cc",
105 "common/value_builder.h",
106 "renderer/test_extensions_renderer_client.cc",
107 "renderer/test_extensions_renderer_client.h",
lfg910f2f92014-09-19 05:31:09108 "test/extension_test_message_listener.cc",
109 "test/extension_test_message_listener.h",
brettw6c1a7722015-01-06 08:34:24110 "test/result_catcher.cc",
111 "test/result_catcher.h",
asargent275faaa2015-01-27 23:43:29112 "test/test_content_utility_client.cc",
113 "test/test_content_utility_client.h",
[email protected]bc8a0922014-08-20 00:51:08114 "test/test_extensions_client.cc",
115 "test/test_extensions_client.h",
116 "test/test_permission_message_provider.cc",
117 "test/test_permission_message_provider.h",
sammcfb8875c2014-10-28 11:51:04118 "test/test_service_registration_manager.cc",
119 "test/test_service_registration_manager.h",
scottmg22d2efa2014-12-03 19:21:22120 ]
[email protected]016eeef82014-08-01 20:37:43121
122 deps = [
[email protected]bc8a0922014-08-20 00:51:08123 ":extensions_resources",
[email protected]016eeef82014-08-01 20:37:43124 "//base",
jamescook62117922014-10-20 14:35:11125 "//content/public/browser",
126 "//content/public/common",
127 "//content/test:test_support",
[email protected]016eeef82014-08-01 20:37:43128 "//extensions/browser",
129 "//extensions/common",
130 "//extensions/common/api",
yoz774dcda2d2014-08-27 03:32:58131 "//extensions/common/api:api_registration",
[email protected]016eeef82014-08-01 20:37:43132 "//net:test_support",
[email protected]5842610c2014-08-07 03:35:18133 "//testing/gmock",
[email protected]016eeef82014-08-01 20:37:43134 "//testing/gtest",
135 ]
136
jamescookf112ccd2015-02-06 18:06:33137 public_deps = [
138 "//extensions/common/api/cast_channel:cast_channel_proto",
139 ]
140
[email protected]016eeef82014-08-01 20:37:43141 if (is_win) {
scottmg22d2efa2014-12-03 19:21:22142 cflags = [ "/wd4267" ] # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
[email protected]016eeef82014-08-01 20:37:43143 }
144}
[email protected]5842610c2014-08-07 03:35:18145
[email protected]5842610c2014-08-07 03:35:18146# GYP version: //extensions/extensions.gyp:extensions_shell_and_test_pak
147repack("shell_and_test_pak") {
148 sources = [
mukaiefb3eb02014-11-11 23:38:00149 "$root_gen_dir/blink/public/resources/blink_resources.pak",
lfg0330a7e2014-09-12 22:58:28150 "$root_gen_dir/content/app/strings/content_strings_en-US.pak",
[email protected]5842610c2014-08-07 03:35:18151 "$root_gen_dir/content/content_resources.pak",
152 "$root_gen_dir/content/shell/shell_resources.pak",
mukaiefb3eb02014-11-11 23:38:00153 "$root_gen_dir/extensions/extensions_browser_resources_100_percent.pak",
[email protected]5842610c2014-08-07 03:35:18154 "$root_gen_dir/extensions/extensions_renderer_resources.pak",
155 "$root_gen_dir/extensions/extensions_resources.pak",
jamescook62117922014-10-20 14:35:11156 "$root_gen_dir/extensions/shell/app_shell_resources.pak",
[email protected]5842610c2014-08-07 03:35:18157 "$root_gen_dir/extensions/strings/extensions_strings_en-US.pak",
158 "$root_gen_dir/ui/resources/ui_resources_100_percent.pak",
159 "$root_gen_dir/ui/strings/app_locale_settings_en-US.pak",
160 "$root_gen_dir/ui/strings/ui_strings_en-US.pak",
vivek.vg77816a12014-12-18 14:28:20161 "$root_gen_dir/blink/devtools_resources.pak",
[email protected]5842610c2014-08-07 03:35:18162 ]
163
164 output = "$root_out_dir/extensions_shell_and_test.pak"
165
166 deps = [
167 ":extensions_resources",
[email protected]5842610c2014-08-07 03:35:18168 "//content:resources",
mukaiefb3eb02014-11-11 23:38:00169 "//content/browser/devtools:devtools_resources",
170 "//content/shell:resources",
jamescook62117922014-10-20 14:35:11171 "//extensions/shell:resources",
[email protected]5842610c2014-08-07 03:35:18172 "//extensions/strings",
mukaiefb3eb02014-11-11 23:38:00173 "//third_party/WebKit/public:resources",
[email protected]5842610c2014-08-07 03:35:18174 "//ui/resources",
175 "//ui/strings",
176 ]
177}
178
jamescookf112ccd2015-02-06 18:06:33179test("extensions_unittests") {
180 sources = [
181 # TODO(rockot|jamescook): This list is out of date. Move the files into
182 # gypi source lists.
183 "browser/api/api_resource_manager_unittest.cc",
184 "browser/api/cast_channel/cast_auth_ica_unittest.cc",
185 "browser/api/cast_channel/cast_auth_util_unittest.cc",
186 "browser/api/cast_channel/cast_channel_api_unittest.cc",
187 "browser/api/cast_channel/cast_framer_unittest.cc",
188 "browser/api/cast_channel/cast_socket_unittest.cc",
189 "browser/api/cast_channel/cast_transport_unittest.cc",
190 "browser/api/cast_channel/keep_alive_delegate_unittest.cc",
191 "browser/api/cast_channel/logger_unittest.cc",
192 "browser/api/declarative/declarative_rule_unittest.cc",
193 "browser/api/declarative/deduping_factory_unittest.cc",
194 "browser/api/declarative_webrequest/webrequest_condition_attribute_unittest.cc",
195 "browser/api/declarative_webrequest/webrequest_condition_unittest.cc",
196 "browser/api/idle/idle_api_unittest.cc",
197 "browser/api/mime_handler_private/mime_handler_private_unittest.cc",
198 "browser/api/sockets_tcp/sockets_tcp_api_unittest.cc",
199 "browser/api/sockets_udp/sockets_udp_api_unittest.cc",
200 "browser/api/storage/settings_quota_unittest.cc",
201 "browser/api/storage/storage_api_unittest.cc",
202 "browser/api/storage/storage_frontend_unittest.cc",
203 "browser/api/web_request/form_data_parser_unittest.cc",
204 "browser/api/web_request/upload_data_presenter_unittest.cc",
205 "browser/api/web_request/web_request_time_tracker_unittest.cc",
206 "browser/computed_hashes_unittest.cc",
207 "browser/content_hash_tree_unittest.cc",
208 "browser/event_listener_map_unittest.cc",
209 "browser/event_router_unittest.cc",
210 "browser/extension_pref_value_map_unittest.cc",
211 "browser/extension_registry_unittest.cc",
212 "browser/file_highlighter_unittest.cc",
213 "browser/file_reader_unittest.cc",
214 "browser/guest_view/guest_view_manager_unittest.cc",
215 "browser/image_loader_unittest.cc",
216 "browser/info_map_unittest.cc",
217 "browser/lazy_background_task_queue_unittest.cc",
218 "browser/management_policy_unittest.cc",
219 "browser/mojo/keep_alive_impl_unittest.cc",
220 "browser/process_manager_unittest.cc",
221 "browser/process_map_unittest.cc",
222 "browser/quota_service_unittest.cc",
223 "browser/runtime_data_unittest.cc",
224 "browser/sandboxed_unpacker_unittest.cc",
225 "browser/value_store/leveldb_value_store_unittest.cc",
226 "browser/value_store/testing_value_store_unittest.cc",
227 "browser/value_store/value_store_change_unittest.cc",
228 "browser/value_store/value_store_frontend_unittest.cc",
229 "browser/value_store/value_store_unittest.cc",
230 "browser/value_store/value_store_unittest.h",
231 "browser/verified_contents_unittest.cc",
232 "browser/warning_service_unittest.cc",
233 "common/api/sockets/sockets_manifest_permission_unittest.cc",
234 "common/csp_validator_unittest.cc",
235 "common/event_filter_unittest.cc",
236 "common/extension_l10n_util_unittest.cc",
237 "common/extension_resource_unittest.cc",
238 "common/extension_set_unittest.cc",
239 "common/file_util_unittest.cc",
240 "common/image_util_unittest.cc",
241 "common/manifest_handlers/content_capabilities_manifest_unittest.cc",
242 "common/manifest_handlers/oauth2_manifest_unittest.cc",
243 "common/manifest_handlers/shared_module_manifest_unittest.cc",
244 "common/manifest_handler_unittest.cc",
245 "common/message_bundle_unittest.cc",
246 "common/one_shot_event_unittest.cc",
247 "common/permissions/manifest_permission_set_unittest.cc",
248 "common/stack_frame_unittest.cc",
249 "common/url_pattern_set_unittest.cc",
250 "common/url_pattern_unittest.cc",
251 "common/user_script_unittest.cc",
252 "renderer/activity_log_converter_strategy_unittest.cc",
253 "renderer/api/mojo_private/mojo_private_unittest.cc",
254 "renderer/api/serial/data_receiver_unittest.cc",
255 "renderer/api/serial/data_sender_unittest.cc",
256 "renderer/api/serial/serial_api_unittest.cc",
257 "renderer/api_test_base.cc",
258 "renderer/api_test_base.h",
259 "renderer/api_test_base_unittest.cc",
260 "renderer/event_unittest.cc",
261 "renderer/json_schema_unittest.cc",
262 "renderer/messaging_utils_unittest.cc",
263 "renderer/module_system_test.cc",
264 "renderer/module_system_test.h",
265 "renderer/module_system_unittest.cc",
266 "renderer/mojo/keep_alive_client_unittest.cc",
267 "renderer/safe_builtins_unittest.cc",
268 "renderer/script_context_set_unittest.cc",
269 "renderer/script_context_unittest.cc",
270 "renderer/utils_unittest.cc",
271 "test/extensions_unittests_main.cc",
272 "utility/unpacker_unittest.cc",
scottmg22d2efa2014-12-03 19:21:22273
jamescookf112ccd2015-02-06 18:06:33274 # TODO(rockot): DisplayInfoProvider::Create() is only implemented in Chrome
275 # and app_shell. This is wrong.
276 "shell/browser/shell_display_info_provider.cc",
scottmg22d2efa2014-12-03 19:21:22277
jamescookf112ccd2015-02-06 18:06:33278 # TODO(rockot): See above, but the header is in //components.
279 "shell/browser/shell_web_contents_modal_dialog_manager.cc",
280 ]
281
282 deps = [
283 ":extensions_resources",
284 ":shell_and_test_pak",
285 ":test_support",
286 "//base",
287 "//base:prefs_test_support",
288 "//base/test:test_support",
289 "//components/keyed_service/content",
290 "//components/user_prefs",
291 "//content/test:test_support",
292 "//device/serial",
293 "//device/serial:test_support",
294 "//extensions/common",
295 "//extensions/common/api/cast_channel:cast_channel_proto",
296 "//extensions/renderer",
297 "//extensions/strings",
298 "//extensions/utility",
299 "//mojo/environment:chromium",
300 "//testing/gmock",
301 "//testing/gtest",
302 "//third_party/leveldatabase",
303 "//third_party/mojo/src/mojo/edk/js",
304 "//third_party/mojo/src/mojo/edk/system",
305 "//third_party/mojo/src/mojo/public/cpp/bindings",
306 "//third_party/mojo/src/mojo/public/interfaces/application",
307 ]
308
309 if (is_win) {
310 deps += [ "//base/allocator" ]
311 }
312
313 if (is_chromeos) {
314 sources += [
315 # TODO(rockot): There are two implementations of VpnServiceFactory, a
316 # stub in app_shell and a real one in Chrome. This is wrong.
317 "shell/browser/api/vpn_provider/vpn_service_factory.cc",
318 ]
[email protected]5842610c2014-08-07 03:35:18319 }
320}
rockotea9df2a2015-01-22 20:26:36321
322test("extensions_browsertests") {
323 sources = [
324 "browser/api/audio/audio_apitest.cc",
325 "browser/api/dns/dns_apitest.cc",
326 "browser/api/hid/hid_apitest.cc",
327 "browser/api/socket/socket_apitest.cc",
328 "browser/api/sockets_tcp/sockets_tcp_apitest.cc",
329 "browser/api/sockets_udp/sockets_udp_apitest.cc",
330 "browser/api/system_cpu/system_cpu_apitest.cc",
331 "browser/api/system_display/system_display_apitest.cc",
332 "browser/api/system_memory/system_memory_apitest.cc",
333 "browser/api/system_network/system_network_apitest.cc",
334 "browser/api/system_storage/storage_api_test_util.cc",
335 "browser/api/system_storage/storage_api_test_util.h",
336 "browser/api/system_storage/system_storage_apitest.cc",
337 "browser/api/system_storage/system_storage_eject_apitest.cc",
338 "browser/api/usb/usb_apitest.cc",
339 "browser/guest_view/app_view/app_view_apitest.cc",
340 "browser/guest_view/web_view/web_view_apitest.h",
341 "browser/guest_view/web_view/web_view_apitest.cc",
342 "browser/guest_view/web_view/web_view_media_access_apitest.cc",
343 "browser/updater/update_service_browsertest.cc",
344 "shell/browser/geolocation/geolocation_apitest.cc",
345 "shell/browser/shell_browsertest.cc",
346 "shell/test/shell_apitest.cc",
347 "shell/test/shell_apitest.h",
348 "shell/test/shell_test.cc",
349 "shell/test/shell_test.h",
350 "shell/test/shell_test_launcher_delegate.cc",
351 "shell/test/shell_test_launcher_delegate.h",
352 "shell/test/shell_tests_main.cc",
353 ]
354
355 defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]
356
357 deps = [
358 ":test_support",
359 "shell:app_shell_lib",
360
361 # TODO(yoz): find the right deps
362 "//base",
363 "//base:prefs_test_support",
364 "//base/test:test_support",
365 "//components/storage_monitor:test_support",
366 "//content/test:test_support",
367 "//mojo/environment:chromium",
368 "//testing/gmock",
369 "//testing/gtest",
370 "//third_party/mojo/src/mojo/edk/js",
371 "//third_party/mojo/src/mojo/edk/system",
372 "//third_party/mojo/src/mojo/public/cpp/bindings",
373 ]
374
375 if (is_win) {
376 deps += [ "//base/allocator" ]
377 }
378
379 if (is_mac) {
380 deps += [ "shell:app_shell" ] # Needed for App Shell.app's Helper.
381 }
382}