cc: Initialize wait_for_beginframe_interval in tests.
[chromium-blink-merge.git] / remoting / BUILD.gn
blob9be8a41b4dfce55bc5857d6172ea58f1e3a8ff73
1 # Copyright 2015 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.
5 import("//build/config/features.gni")
6 import("//build/config/ui.gni")
7 import("//remoting/remoting_version.gni")
8 import("//remoting/remoting_enable.gni")
9 import("//testing/test.gni")
11 # Various remoting targets need this version definition.
12 config("version") {
13   defines = [ "VERSION=$version_full" ]
16 group("remoting_all") {
17   testonly = true
19   deps = [
20     #"//remoting:remoting_browser_test_resources",
21     "//remoting:remoting_unittests",
22     #"//remoting:remoting_webapp_unittests",
23     #"//app_remoting_test.gyp:ar_sample_test_driver",
24     #"//app_remoting_webapp.gyp:ar_sample_app",
25   ]
27   # TODO(GYP): add is_mac
28   if ((is_linux && !is_chromeos) || is_win) {
29     deps += [ "//remoting/webapp" ]
30   }
32   if (is_win) {
33     deps += [
34       #"//remoting:remoting_breakpad_tester",
35       #"//remoting:remoting_console",
36       #"//remoting:remoting_desktop",
37       #"//remoting:remoting_host_installation",
38     ]
39   }
41   if (is_android) {
42     deps += [
43       #"//remoting:remoting_apk",
44       #"//remoting:remoting_test_apk",
45       #"//remoting:remoting_unittests_apk",
46     ]
47   }
49   if (enable_remoting_host) {
50     deps += [
51       "//remoting:remoting_perftests",
52       "//remoting/host",
53       "//remoting/host:remoting_start_host",
54       "//remoting/host/it2me:remote_assistance_host",
56       #"//remoting:remoting_it2me_native_messaging_host",
57       #"//remoting:remoting_native_messaging_manifests",
58     ]
59   }
61   if (enable_me2me_host) {
62     deps += [
63       "//remoting/host:remoting_me2me_host",
64       #"//remoting/host:remoting_me2me_host_archive",
65     ]
66   }
68   # TODO(GYP) Depends on crbug.com/471924 being fixed for PNaCl.
69   if (enable_nacl) {
70     deps += [ "//remoting:remoting_key_tester" ]
71   }
74 # GYP version: remoting/remoting_test.gypi:remoting_test_common
75 source_set("test_support") {
76   testonly = true
78   sources = [
79     # Files from remoting_test_common not in separate test_support targets.
80     "signaling/fake_signal_strategy.cc",
81     "signaling/fake_signal_strategy.h",
82     "signaling/mock_signal_strategy.cc",
83     "signaling/mock_signal_strategy.h",
84     "test/access_token_fetcher.cc",
85     "test/access_token_fetcher.h",
86     "test/app_remoting_report_issue_request.cc",
87     "test/app_remoting_report_issue_request.h",
88     "test/app_remoting_service_urls.cc",
89     "test/app_remoting_service_urls.h",
90     "test/app_remoting_test_driver_environment.cc",
91     "test/app_remoting_test_driver_environment.h",
92     "test/app_remoting_test_driver_environment_app_details.cc",
93     "test/fake_access_token_fetcher.cc",
94     "test/fake_access_token_fetcher.h",
95     "test/fake_app_remoting_report_issue_request.cc",
96     "test/fake_app_remoting_report_issue_request.h",
97     "test/fake_network_dispatcher.cc",
98     "test/fake_network_dispatcher.h",
99     "test/fake_network_manager.cc",
100     "test/fake_network_manager.h",
101     "test/fake_port_allocator.cc",
102     "test/fake_port_allocator.h",
103     "test/fake_remote_host_info_fetcher.cc",
104     "test/fake_remote_host_info_fetcher.h",
105     "test/fake_socket_factory.cc",
106     "test/fake_socket_factory.h",
107     "test/leaky_bucket.cc",
108     "test/leaky_bucket.h",
109     "test/mock_access_token_fetcher.cc",
110     "test/mock_access_token_fetcher.h",
111     "test/refresh_token_store.cc",
112     "test/refresh_token_store.h",
113     "test/remote_application_details.h",
114     "test/remote_connection_observer.h",
115     "test/remote_host_info.cc",
116     "test/remote_host_info.h",
117     "test/remote_host_info_fetcher.cc",
118     "test/remote_host_info_fetcher.h",
119     "test/test_chromoting_client.cc",
120     "test/test_chromoting_client.h",
121     "test/test_video_renderer.cc",
122     "test/test_video_renderer.h",
123   ]
125   deps = [
126     "//base",
127     "//net",
128     "//remoting/base",
129     "//remoting/client",
130     "//remoting/codec",
131     "//remoting/protocol:test_support",
132     "//remoting/resources",
133     "//testing/gmock",
134     "//testing/gtest",
135   ]
137   if (enable_configuration_policy) {
138     deps += [ "//components/policy:test_support" ]
139   }
141   if (enable_remoting_host) {
142     deps += [ "//remoting/host:test_support" ]
143   }
146 # TODO(GYP) remoting_unittests on Mac. Needs to be tested.
147 if (!is_mac) {
148   test("remoting_unittests") {
149     # Sources not included in one of the more specific unit_tests deps.
150     sources = [
151       "signaling/iq_sender_unittest.cc",
152       "signaling/log_to_server_unittest.cc",
153       "signaling/server_log_entry_unittest.cc",
154       "signaling/server_log_entry_unittest.h",
155       "test/access_token_fetcher_unittest.cc",
156       "test/app_remoting_report_issue_request_unittest.cc",
157       "test/app_remoting_test_driver_environment_unittest.cc",
158       "test/remote_host_info_fetcher_unittest.cc",
159       "test/test_chromoting_client_unittest.cc",
160       "test/test_video_renderer_unittest.cc",
161     ]
163     configs += [
164       ":version",
166       # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
167       "//build/config/compiler:no_size_t_to_int_warning",
168     ]
170     deps = [
171       ":test_support",
172       "//base/allocator",
173       "//google_apis",
174       "//remoting/base:unit_tests",
175       "//remoting/client:unit_tests",
176       "//remoting/protocol:test_support",
177       "//remoting/protocol:unit_tests",
178       "//testing/gmock",
179       "//testing/gtest",
180       "//third_party/webrtc",
181     ]
183     if (is_android) {
184       deps += [ "//testing/android/native_test:native_test_native_code" ]
185     } else {
186       deps += [
187         "//remoting/client/plugin",
188         "//remoting/client/plugin:unit_tests",
189       ]
190     }
192     if (enable_remoting_host) {
193       deps += [
194         "//remoting/codec:unit_tests",
195         "//remoting/host:unit_tests",
196         "//ui/gfx",
197       ]
198     }
200     if (enable_webrtc) {
201       deps += [
202         "//third_party/libjingle:libjingle_webrtc",
203         "//third_party/libjingle:libpeerconnection",
204       ]
205     }
206   }
208   if (enable_remoting_host) {
209     test("remoting_perftests") {
210       sources = [
211         "codec/codec_test.cc",
212         "codec/codec_test.h",
213         "codec/video_encoder_vpx_perftest.cc",
214         "test/protocol_perftest.cc",
215       ]
217       configs += [ ":version" ]
219       deps = [
220         ":test_support",
221         "//base",
222         "//base/test:run_all_unittests",
223         "//base/test:test_support",
224         "//net:test_support",
225         "//remoting/base",
226         "//testing/gtest",
227         "//third_party/webrtc/modules/desktop_capture",
228         "//third_party/libjingle",
229       ]
231       if (enable_webrtc) {
232         deps += [ "//third_party/libjingle:libjingle_webrtc" ]
233       }
234     }
235   }
236 } else {
237   group("remoting_unittests") {
238   }
241 if (enable_pnacl) {
242   group("remoting_key_tester") {
243     deps = [
244       ":remoting_key_tester_copies",
245     ]
246   }
248   copy("remoting_key_tester_copies") {
249     sources = [
250       "tools/javascript_key_tester/background.js",
251       "tools/javascript_key_tester/chord_tracker.js",
252       "tools/javascript_key_tester/event_listeners.js",
253       "tools/javascript_key_tester/icon_128.png",
254       "tools/javascript_key_tester/main.css",
255       "tools/javascript_key_tester/main.html",
256       "tools/javascript_key_tester/main.js",
257       "tools/javascript_key_tester/manifest.json",
258       "tools/javascript_key_tester/pnacl/remoting_key_tester.nmf",
260       # TODO(GYP): crbug.com/471924 "$target_out_dir/remoting_key_tester_newlib.pexe",
261     ]
263     outputs = [
264       "$target_out_dir/remoting/key_tester/{{source_file_part}}",
265     ]
267     deps = [
268       ":remoting_key_tester_jscompile",
269       ":remoting_key_tester_pexe",
270     ]
271   }
273   group("remoting_key_tester_jscompile") {
274     # TODO(GYP): crbug.com/471926 add support for run_jscompile=true.
275     run_jscompile = false
276     if (run_jscompile) {
277     }
278   }
280   group("remoting_key_tester_pexe") {
281     # TODO(GYP): crbug.com/471924 implement me when we have a pnacl toolchain.
282     #sources = [
283     # "tools/javascript_key_tester/pnacl/remoting_key_tester.cc",
284     #]
285   }