blob: d5cae95e0ef3f0227717a9e21cc87a37c5fe72d6 [file] [log] [blame]
Torne (Richard Coles)6d86b772014-06-25 10:30:53 +01001# 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
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +01005import("//build/config/features.gni")
6
7component("sync") {
Primiano Tucci1320f922014-09-30 14:45:55 +01008 public_deps = [
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +01009 ":sync_core",
Torne (Richard Coles)6d86b772014-06-25 10:30:53 +010010 "//sync/protocol",
11 ]
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +010012}
13
14# GYP version: sync/sync.gyp:sync_core
15source_set("sync_core") {
16 sources = [
17 "api/attachments/attachment.cc",
18 "api/attachments/attachment.h",
19 "api/attachments/attachment_id.cc",
20 "api/attachments/attachment_id.h",
21 "api/attachments/attachment_store.cc",
22 "api/attachments/attachment_store.h",
23 "api/attachments/fake_attachment_store.cc",
24 "api/attachments/fake_attachment_store.h",
25 "api/string_ordinal.h",
26 "api/syncable_service.cc",
27 "api/syncable_service.h",
28 "api/sync_change.cc",
29 "api/sync_change.h",
30 "api/sync_change_processor.cc",
31 "api/sync_change_processor.h",
32 "api/sync_data.cc",
33 "api/sync_data.h",
34 "api/sync_error.cc",
35 "api/sync_error_factory.cc",
36 "api/sync_error_factory.h",
37 "api/sync_error.h",
38 "api/sync_merge_result.cc",
39 "api/sync_merge_result.h",
40 "api/time.h",
41 "base/sync_export.h",
42 "engine/all_status.cc",
43 "engine/all_status.h",
44 "engine/apply_control_data_updates.cc",
45 "engine/apply_control_data_updates.h",
46 "engine/backoff_delay_provider.cc",
47 "engine/backoff_delay_provider.h",
48 "engine/commit.cc",
49 "engine/commit_contribution.cc",
50 "engine/commit_contribution.h",
51 "engine/commit_contributor.cc",
52 "engine/commit_contributor.h",
53 "engine/commit.h",
54 "engine/commit_processor.cc",
55 "engine/commit_processor.h",
56 "engine/commit_util.cc",
57 "engine/commit_util.h",
58 "engine/conflict_resolver.cc",
59 "engine/conflict_resolver.h",
60 "engine/conflict_util.cc",
61 "engine/conflict_util.h",
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +010062 "engine/directory_commit_contribution.cc",
63 "engine/directory_commit_contribution.h",
64 "engine/directory_commit_contributor.cc",
65 "engine/directory_commit_contributor.h",
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +010066 "engine/directory_update_handler.cc",
67 "engine/directory_update_handler.h",
68 "engine/entity_tracker.cc",
69 "engine/entity_tracker.h",
70 "engine/get_commit_ids.cc",
71 "engine/get_commit_ids.h",
72 "engine/get_updates_delegate.cc",
73 "engine/get_updates_delegate.h",
74 "engine/get_updates_processor.cc",
75 "engine/get_updates_processor.h",
76 "engine/model_type_entity.cc",
77 "engine/model_type_entity.h",
78 "engine/model_type_sync_proxy.cc",
79 "engine/model_type_sync_proxy.h",
80 "engine/model_type_sync_proxy_impl.cc",
81 "engine/model_type_sync_proxy_impl.h",
82 "engine/model_type_sync_worker.cc",
83 "engine/model_type_sync_worker.h",
84 "engine/model_type_sync_worker_impl.cc",
85 "engine/model_type_sync_worker_impl.h",
86 "engine/net/server_connection_manager.cc",
87 "engine/net/server_connection_manager.h",
88 "engine/net/url_translator.cc",
89 "engine/net/url_translator.h",
90 "engine/non_blocking_type_commit_contribution.cc",
91 "engine/non_blocking_type_commit_contribution.h",
92 "engine/nudge_handler.cc",
93 "engine/nudge_handler.h",
94 "engine/nudge_source.cc",
95 "engine/nudge_source.h",
96 "engine/process_updates_util.cc",
97 "engine/process_updates_util.h",
98 "engine/sync_cycle_event.cc",
99 "engine/sync_cycle_event.h",
100 "engine/sync_engine_event_listener.cc",
101 "engine/sync_engine_event_listener.h",
102 "engine/syncer.cc",
103 "engine/syncer.h",
104 "engine/syncer_proto_util.cc",
105 "engine/syncer_proto_util.h",
106 "engine/syncer_types.h",
107 "engine/syncer_util.cc",
108 "engine/syncer_util.h",
109 "engine/sync_scheduler.cc",
110 "engine/sync_scheduler.h",
111 "engine/sync_scheduler_impl.cc",
112 "engine/sync_scheduler_impl.h",
113 "engine/traffic_logger.cc",
114 "engine/traffic_logger.h",
115 "engine/update_applicator.cc",
116 "engine/update_applicator.h",
117 "engine/update_handler.cc",
118 "engine/update_handler.h",
119 "internal_api/attachments/attachment_downloader.cc",
120 "internal_api/attachments/attachment_downloader_impl.cc",
121 "internal_api/attachments/attachment_service.cc",
122 "internal_api/attachments/attachment_service_impl.cc",
123 "internal_api/attachments/attachment_service_proxy.cc",
124 "internal_api/attachments/attachment_service_proxy_for_test.cc",
125 "internal_api/attachments/attachment_uploader.cc",
126 "internal_api/attachments/attachment_uploader_impl.cc",
127 "internal_api/attachments/fake_attachment_downloader.cc",
128 "internal_api/attachments/fake_attachment_uploader.cc",
129 "internal_api/attachments/public/attachment_downloader.h",
130 "internal_api/attachments/public/attachment_service.h",
131 "internal_api/attachments/public/attachment_service_impl.h",
132 "internal_api/attachments/public/attachment_service_proxy_for_test.h",
133 "internal_api/attachments/public/attachment_service_proxy.h",
134 "internal_api/attachments/public/attachment_uploader.h",
135 "internal_api/base_node.cc",
136 "internal_api/base_transaction.cc",
137 "internal_api/change_record.cc",
138 "internal_api/change_reorder_buffer.cc",
139 "internal_api/change_reorder_buffer.h",
140 "internal_api/debug_info_event_listener.cc",
141 "internal_api/debug_info_event_listener.h",
142 "internal_api/delete_journal.cc",
143 "internal_api/events/commit_request_event.cc",
144 "internal_api/events/commit_response_event.cc",
145 "internal_api/events/configure_get_updates_request_event.cc",
146 "internal_api/events/get_updates_response_event.cc",
147 "internal_api/events/normal_get_updates_request_event.cc",
148 "internal_api/events/poll_get_updates_request_event.cc",
149 "internal_api/events/protocol_event.cc",
150 "internal_api/http_bridge.cc",
151 "internal_api/http_bridge_network_resources.cc",
152 "internal_api/internal_components_factory_impl.cc",
153 "internal_api/js_mutation_event_observer.cc",
154 "internal_api/js_mutation_event_observer.h",
155 "internal_api/js_sync_encryption_handler_observer.cc",
156 "internal_api/js_sync_encryption_handler_observer.h",
157 "internal_api/js_sync_manager_observer.cc",
158 "internal_api/js_sync_manager_observer.h",
159 "internal_api/protocol_event_buffer.cc",
160 "internal_api/protocol_event_buffer.h",
161 "internal_api/public/attachments/attachment_downloader_impl.h",
162 "internal_api/public/attachments/attachment_uploader_impl.h",
163 "internal_api/public/attachments/fake_attachment_downloader.h",
164 "internal_api/public/attachments/fake_attachment_uploader.h",
165 "internal_api/public/base/attachment_id_proto.cc",
166 "internal_api/public/base/attachment_id_proto.h",
167 "internal_api/public/base/cancelation_observer.cc",
168 "internal_api/public/base/cancelation_observer.h",
169 "internal_api/public/base/cancelation_signal.cc",
170 "internal_api/public/base/cancelation_signal.h",
171 "internal_api/public/base/enum_set.h",
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +0100172 "internal_api/public/base/invalidation_interface.cc",
173 "internal_api/public/base/invalidation_interface.h",
174 "internal_api/public/base/model_type.h",
175 "internal_api/public/base_node.h",
176 "internal_api/public/base/node_ordinal.cc",
177 "internal_api/public/base/node_ordinal.h",
178 "internal_api/public/base/ordinal.h",
179 "internal_api/public/base/progress_marker_map.cc",
180 "internal_api/public/base/progress_marker_map.h",
181 "internal_api/public/base_transaction.h",
182 "internal_api/public/base/unique_position.cc",
183 "internal_api/public/base/unique_position.h",
184 "internal_api/public/change_record.h",
185 "internal_api/public/configure_reason.h",
186 "internal_api/public/data_type_association_stats.cc",
187 "internal_api/public/data_type_association_stats.h",
188 "internal_api/public/data_type_debug_info_listener.cc",
189 "internal_api/public/data_type_debug_info_listener.h",
190 "internal_api/public/delete_journal.h",
191 "internal_api/public/engine/model_safe_worker.cc",
192 "internal_api/public/engine/model_safe_worker.h",
193 "internal_api/public/engine/passive_model_worker.cc",
194 "internal_api/public/engine/passive_model_worker.h",
195 "internal_api/public/engine/polling_constants.cc",
196 "internal_api/public/engine/polling_constants.h",
197 "internal_api/public/engine/sync_status.cc",
198 "internal_api/public/engine/sync_status.h",
199 "internal_api/public/events/commit_request_event.h",
200 "internal_api/public/events/commit_response_event.h",
201 "internal_api/public/events/configure_get_updates_request_event.h",
202 "internal_api/public/events/get_updates_response_event.h",
203 "internal_api/public/events/normal_get_updates_request_event.h",
204 "internal_api/public/events/poll_get_updates_request_event.h",
205 "internal_api/public/events/protocol_event.h",
206 "internal_api/public/http_bridge.h",
207 "internal_api/public/http_bridge_network_resources.h",
208 "internal_api/public/http_post_provider_factory.h",
209 "internal_api/public/http_post_provider_interface.h",
210 "internal_api/public/internal_components_factory.h",
211 "internal_api/public/internal_components_factory_impl.h",
212 "internal_api/public/network_resources.h",
213 "internal_api/public/non_blocking_sync_common.cc",
214 "internal_api/public/non_blocking_sync_common.h",
215 "internal_api/public/read_node.h",
216 "internal_api/public/read_transaction.h",
217 "internal_api/public/sessions/commit_counters.cc",
218 "internal_api/public/sessions/commit_counters.h",
219 "internal_api/public/sessions/model_neutral_state.cc",
220 "internal_api/public/sessions/model_neutral_state.h",
221 "internal_api/public/sessions/status_counters.cc",
222 "internal_api/public/sessions/status_counters.h",
223 "internal_api/public/sessions/sync_session_snapshot.cc",
224 "internal_api/public/sessions/sync_session_snapshot.h",
225 "internal_api/public/sessions/type_debug_info_observer.cc",
226 "internal_api/public/sessions/type_debug_info_observer.h",
227 "internal_api/public/sessions/update_counters.cc",
228 "internal_api/public/sessions/update_counters.h",
229 "internal_api/public/shutdown_reason.h",
230 "internal_api/public/sync_auth_provider.h",
231 "internal_api/public/sync_context.h",
232 "internal_api/public/sync_context_proxy.h",
233 "internal_api/public/sync_encryption_handler.cc",
234 "internal_api/public/sync_encryption_handler.h",
235 "internal_api/public/sync_manager.cc",
236 "internal_api/public/sync_manager_factory.h",
237 "internal_api/public/sync_manager.h",
238 "internal_api/public/user_share.h",
239 "internal_api/public/util/experiments.h",
240 "internal_api/public/util/immutable.h",
241 "internal_api/public/util/report_unrecoverable_error_function.h",
242 "internal_api/public/util/sync_db_util.h",
243 "internal_api/public/util/syncer_error.cc",
244 "internal_api/public/util/syncer_error.h",
245 "internal_api/public/util/sync_string_conversions.cc",
246 "internal_api/public/util/sync_string_conversions.h",
247 "internal_api/public/util/unrecoverable_error_handler.h",
248 "internal_api/public/util/unrecoverable_error_info.cc",
249 "internal_api/public/util/unrecoverable_error_info.h",
250 "internal_api/public/util/weak_handle.cc",
251 "internal_api/public/util/weak_handle.h",
252 "internal_api/public/write_node.h",
253 "internal_api/public/write_transaction.h",
254 "internal_api/read_node.cc",
255 "internal_api/read_transaction.cc",
256 "internal_api/syncapi_internal.cc",
257 "internal_api/syncapi_internal.h",
258 "internal_api/syncapi_server_connection_manager.cc",
259 "internal_api/syncapi_server_connection_manager.h",
260 "internal_api/sync_backup_manager.cc",
261 "internal_api/sync_backup_manager.h",
262 "internal_api/sync_context.cc",
263 "internal_api/sync_context_proxy.cc",
264 "internal_api/sync_context_proxy_impl.cc",
265 "internal_api/sync_context_proxy_impl.h",
266 "internal_api/sync_db_util.cc",
267 "internal_api/sync_encryption_handler_impl.cc",
268 "internal_api/sync_encryption_handler_impl.h",
269 "internal_api/sync_manager_factory.cc",
270 "internal_api/sync_manager_impl.cc",
271 "internal_api/sync_manager_impl.h",
272 "internal_api/sync_rollback_manager_base.cc",
273 "internal_api/sync_rollback_manager_base.h",
274 "internal_api/sync_rollback_manager.cc",
275 "internal_api/sync_rollback_manager.h",
276 "internal_api/user_share.cc",
277 "internal_api/write_node.cc",
278 "internal_api/write_transaction.cc",
279 "js/js_backend.h",
280 "js/js_controller.h",
281 "js/js_event_details.cc",
282 "js/js_event_details.h",
283 "js/js_event_handler.h",
284 "js/sync_js_controller.cc",
285 "js/sync_js_controller.h",
286 "protocol/proto_enum_conversions.cc",
287 "protocol/proto_enum_conversions.h",
288 "protocol/proto_value_conversions.cc",
289 "protocol/proto_value_conversions.h",
290 "protocol/sync_protocol_error.cc",
291 "protocol/sync_protocol_error.h",
292 "sessions/data_type_tracker.cc",
293 "sessions/data_type_tracker.h",
294 "sessions/debug_info_getter.h",
295 "sessions/directory_type_debug_info_emitter.cc",
296 "sessions/directory_type_debug_info_emitter.h",
297 "sessions/model_type_registry.cc",
298 "sessions/model_type_registry.h",
299 "sessions/nudge_tracker.cc",
300 "sessions/nudge_tracker.h",
301 "sessions/status_controller.cc",
302 "sessions/status_controller.h",
303 "sessions/sync_session.cc",
304 "sessions/sync_session_context.cc",
305 "sessions/sync_session_context.h",
306 "sessions/sync_session.h",
307 "syncable/blob.h",
Torne (Richard Coles)6e8cce62014-08-19 13:00:08 +0100308 "syncable/deferred_on_disk_directory_backing_store.cc",
309 "syncable/deferred_on_disk_directory_backing_store.h",
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +0100310 "syncable/directory_backing_store.cc",
311 "syncable/directory_backing_store.h",
312 "syncable/directory.cc",
313 "syncable/directory_change_delegate.h",
314 "syncable/directory.h",
315 "syncable/dir_open_result.h",
316 "syncable/entry.cc",
317 "syncable/entry.h",
318 "syncable/entry_kernel.cc",
319 "syncable/entry_kernel.h",
320 "syncable/in_memory_directory_backing_store.cc",
321 "syncable/in_memory_directory_backing_store.h",
322 "syncable/invalid_directory_backing_store.cc",
323 "syncable/invalid_directory_backing_store.h",
324 "syncable/metahandle_set.h",
325 "syncable/model_neutral_mutable_entry.cc",
326 "syncable/model_neutral_mutable_entry.h",
327 "syncable/model_type.cc",
328 "syncable/mutable_entry.cc",
329 "syncable/mutable_entry.h",
330 "syncable/nigori_handler.cc",
331 "syncable/nigori_handler.h",
332 "syncable/nigori_util.cc",
333 "syncable/nigori_util.h",
334 "syncable/on_disk_directory_backing_store.cc",
335 "syncable/on_disk_directory_backing_store.h",
336 "syncable/parent_child_index.cc",
337 "syncable/parent_child_index.h",
338 "syncable/scoped_kernel_lock.cc",
339 "syncable/scoped_kernel_lock.h",
340 "syncable/scoped_parent_child_index_updater.cc",
341 "syncable/scoped_parent_child_index_updater.h",
342 "syncable/syncable_base_transaction.cc",
343 "syncable/syncable_base_transaction.h",
344 "syncable/syncable_base_write_transaction.cc",
345 "syncable/syncable_base_write_transaction.h",
346 "syncable/syncable_changes_version.h",
347 "syncable/syncable_columns.h",
348 "syncable/syncable_delete_journal.cc",
349 "syncable/syncable_delete_journal.h",
350 "syncable/syncable_enum_conversions.cc",
351 "syncable/syncable_enum_conversions.h",
352 "syncable/syncable_id.cc",
353 "syncable/syncable_id.h",
354 "syncable/syncable-inl.h",
355 "syncable/syncable_model_neutral_write_transaction.cc",
356 "syncable/syncable_model_neutral_write_transaction.h",
357 "syncable/syncable_proto_util.cc",
358 "syncable/syncable_proto_util.h",
359 "syncable/syncable_read_transaction.cc",
360 "syncable/syncable_read_transaction.h",
361 "syncable/syncable_util.cc",
362 "syncable/syncable_util.h",
363 "syncable/syncable_write_transaction.cc",
364 "syncable/syncable_write_transaction.h",
365 "syncable/transaction_observer.h",
366 "syncable/write_transaction_info.cc",
367 "syncable/write_transaction_info.h",
368 "util/cryptographer.cc",
369 "util/cryptographer.h",
370 "util/data_type_histogram.h",
371 "util/encryptor.h",
372 "util/extensions_activity.cc",
373 "util/extensions_activity.h",
374 "util/get_session_name.cc",
375 "util/get_session_name.h",
376 "util/get_session_name_ios.h",
377 "util/get_session_name_ios.mm",
378 "util/get_session_name_linux.cc",
379 "util/get_session_name_linux.h",
380 "util/get_session_name_mac.h",
381 "util/get_session_name_mac.mm",
382 "util/get_session_name_win.cc",
383 "util/get_session_name_win.h",
384 "util/logging.cc",
385 "util/logging.h",
386 "util/nigori.cc",
387 "util/nigori.h",
388 "util/time.cc",
389 "util/time.h",
390 ]
391
392 deps = [
393 "//base",
394 "//base:i18n",
Torne (Richard Coles)6e8cce62014-08-19 13:00:08 +0100395 "//base/third_party/dynamic_annotations",
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +0100396 "//crypto",
397 "//google_apis",
398 "//net",
399 "//sql",
400 "//third_party/zlib",
401 "//url",
402 "//sync/protocol",
403 ]
404
405 if (is_chromeos) {
406 # Required by get_session_name.cc on Chrome OS.
407 deps += [
408 "//chromeos"
409 ]
410 }
411
412 defines = [ "SYNC_IMPLEMENTATION" ]
413 configs += [ "//build/config/compiler:wexit_time_destructors" ]
414}
415
416# GYP version: sync/sync_tests.gypi:test_support_sync_core
417static_library("test_support_sync_core") {
Primiano Tucci1320f922014-09-30 14:45:55 +0100418 testonly = true
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +0100419 sources = [
420 "internal_api/public/base/model_type_test_util.cc",
421 "internal_api/public/base/model_type_test_util.h",
422 "js/js_test_util.cc",
423 "js/js_test_util.h",
424 "sessions/test_util.cc",
425 "sessions/test_util.h",
426 "test/callback_counter.h",
427 "test/engine/fake_model_worker.cc",
428 "test/engine/fake_model_worker.h",
429 "test/engine/fake_sync_scheduler.cc",
430 "test/engine/fake_sync_scheduler.h",
431 "test/engine/injectable_sync_context_proxy.cc",
432 "test/engine/injectable_sync_context_proxy.h",
433 "test/engine/mock_connection_manager.cc",
434 "test/engine/mock_connection_manager.h",
435 "test/engine/mock_model_type_sync_proxy.cc",
436 "test/engine/mock_model_type_sync_proxy.h",
437 "test/engine/mock_model_type_sync_worker.cc",
438 "test/engine/mock_model_type_sync_worker.h",
439 "test/engine/mock_nudge_handler.cc",
440 "test/engine/mock_nudge_handler.h",
441 "test/engine/mock_update_handler.cc",
442 "test/engine/mock_update_handler.h",
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +0100443 "test/engine/single_type_mock_server.cc",
444 "test/engine/single_type_mock_server.h",
445 "test/engine/test_directory_setter_upper.cc",
446 "test/engine/test_directory_setter_upper.h",
447 "test/engine/test_id_factory.h",
448 "test/engine/test_syncable_utils.cc",
449 "test/engine/test_syncable_utils.h",
450 "test/fake_encryptor.cc",
451 "test/fake_encryptor.h",
452 "test/fake_sync_encryption_handler.cc",
453 "test/fake_sync_encryption_handler.h",
454 "test/mock_invalidation.cc",
455 "test/mock_invalidation.h",
456 "test/mock_invalidation_tracker.cc",
457 "test/mock_invalidation_tracker.h",
458 "test/trackable_mock_invalidation.cc",
459 "test/trackable_mock_invalidation.h",
460 "test/null_directory_change_delegate.cc",
461 "test/null_directory_change_delegate.h",
462 "test/null_transaction_observer.cc",
463 "test/null_transaction_observer.h",
464 "test/sessions/test_scoped_session_event_listener.h",
465 "test/sessions/mock_debug_info_getter.h",
466 "test/sessions/mock_debug_info_getter.cc",
467 "test/test_directory_backing_store.cc",
468 "test/test_directory_backing_store.h",
469 "test/test_transaction_observer.cc",
470 "test/test_transaction_observer.h",
471 "util/test_unrecoverable_error_handler.cc",
472 "util/test_unrecoverable_error_handler.h",
473 ]
474
Primiano Tucci1320f922014-09-30 14:45:55 +0100475 public_deps = [
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +0100476 "//base",
477 "//testing/gmock",
478 "//testing/gtest",
479 "//sync",
480 ]
481
482 defines = [ "SYNC_TEST" ]
483 configs += [ "//build/config/compiler:wexit_time_destructors" ]
Torne (Richard Coles)6d86b772014-06-25 10:30:53 +0100484}
485
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +0100486# GYP version: sync/sync_tests.gypi:test_support_sync_internal_api
487static_library("test_support_sync_internal_api") {
Primiano Tucci1320f922014-09-30 14:45:55 +0100488 testonly = true
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +0100489 sources = [
490 "internal_api/public/test/fake_sync_manager.h",
491 "internal_api/public/test/null_sync_context_proxy.h",
492 "internal_api/public/test/sync_manager_factory_for_profile_sync_test.h",
493 "internal_api/public/test/test_entry_factory.h",
494 "internal_api/public/test/test_internal_components_factory.h",
495 "internal_api/public/test/test_user_share.h",
496 "internal_api/test/fake_sync_manager.cc",
497 "internal_api/test/null_sync_context_proxy.cc",
498 "internal_api/test/sync_manager_factory_for_profile_sync_test.cc",
499 "internal_api/test/sync_manager_for_profile_sync_test.cc",
500 "internal_api/test/sync_manager_for_profile_sync_test.h",
501 "internal_api/test/test_entry_factory.cc",
502 "internal_api/test/test_internal_components_factory.cc",
503 "internal_api/test/test_user_share.cc",
504 ]
505
Primiano Tucci1320f922014-09-30 14:45:55 +0100506 public_deps = [
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +0100507 "//base",
508 "//testing/gtest",
509 "//sync",
510 ":test_support_sync_core",
511 ]
512
513 defines = [ "SYNC_TEST" ]
514 configs += [ "//build/config/compiler:wexit_time_destructors" ]
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +0100515}
516
517# GYP version: sync/sync_tests.gypi:test_support_sync_api
518static_library("test_support_sync_api") {
Primiano Tucci1320f922014-09-30 14:45:55 +0100519 testonly = true
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +0100520 sources = [
521 "api/fake_syncable_service.cc",
522 "api/fake_syncable_service.h",
523 "api/fake_sync_change_processor.cc",
524 "api/fake_sync_change_processor.h",
525 "api/sync_change_processor_wrapper_for_test.cc",
526 "api/sync_change_processor_wrapper_for_test.h",
527 "api/sync_error_factory_mock.cc",
528 "api/sync_error_factory_mock.h",
529 ]
530
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +0100531 defines = [ "SYNC_TEST" ]
532
Primiano Tucci1320f922014-09-30 14:45:55 +0100533 public_deps = [
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +0100534 "//testing/gmock",
535 "//sync",
536 ]
537}
538
539# GYP version: sync/sync_tests.gypi:sync_unit_tests
540test("sync_unit_tests") {
541 sources = [
542 "api/attachments/attachment_id_unittest.cc",
543 "api/attachments/attachment_unittest.cc",
544 "api/sync_change_unittest.cc",
545 "api/sync_data_unittest.cc",
546 "api/sync_error_unittest.cc",
547 "api/sync_merge_result_unittest.cc",
548 "engine/apply_control_data_updates_unittest.cc",
549 "engine/backoff_delay_provider_unittest.cc",
550 "engine/directory_commit_contribution_unittest.cc",
551 "engine/directory_update_handler_unittest.cc",
552 "engine/entity_tracker_unittest.cc",
553 "engine/get_updates_processor_unittest.cc",
554 "engine/model_type_entity_unittest.cc",
555 "engine/model_type_sync_proxy_impl_unittest.cc",
556 "engine/model_type_sync_worker_impl_unittest.cc",
557 "engine/sync_scheduler_unittest.cc",
558 "engine/syncer_proto_util_unittest.cc",
559 "engine/syncer_unittest.cc",
560 "engine/syncer_util_unittest.cc",
561 "internal_api/attachments/attachment_downloader_impl_unittest.cc",
562 "internal_api/attachments/attachment_service_impl_unittest.cc",
563 "internal_api/attachments/attachment_service_proxy_unittest.cc",
564 "internal_api/attachments/attachment_uploader_impl_unittest.cc",
565 "internal_api/attachments/fake_attachment_downloader_unittest.cc",
566 "internal_api/attachments/fake_attachment_uploader_unittest.cc",
567 "internal_api/debug_info_event_listener_unittest.cc",
568 "internal_api/http_bridge_unittest.cc",
569 "internal_api/js_mutation_event_observer_unittest.cc",
570 "internal_api/js_sync_encryption_handler_observer_unittest.cc",
571 "internal_api/js_sync_manager_observer_unittest.cc",
572 "internal_api/protocol_event_buffer_unittest.cc",
573 "internal_api/public/base/attachment_id_proto_unittest.cc",
574 "internal_api/public/base/cancelation_signal_unittest.cc",
575 "internal_api/public/base/enum_set_unittest.cc",
576 "internal_api/public/base/node_ordinal_unittest.cc",
577 "internal_api/public/base/ordinal_unittest.cc",
578 "internal_api/public/base/unique_position_unittest.cc",
579 "internal_api/public/change_record_unittest.cc",
580 "internal_api/public/engine/model_safe_worker_unittest.cc",
581 "internal_api/public/sessions/sync_session_snapshot_unittest.cc",
582 "internal_api/public/util/immutable_unittest.cc",
583 "internal_api/public/util/weak_handle_unittest.cc",
584 "internal_api/sync_backup_manager_unittest.cc",
585 "internal_api/sync_context_proxy_impl_unittest.cc",
586 "internal_api/sync_encryption_handler_impl_unittest.cc",
587 "internal_api/sync_manager_impl_unittest.cc",
588 "internal_api/sync_rollback_manager_base_unittest.cc",
589 "internal_api/sync_rollback_manager_unittest.cc",
590 "internal_api/syncapi_server_connection_manager_unittest.cc",
591 "js/js_event_details_unittest.cc",
592 "js/sync_js_controller_unittest.cc",
593 "protocol/proto_enum_conversions_unittest.cc",
594 "protocol/proto_value_conversions_unittest.cc",
595 "sessions/model_type_registry_unittest.cc",
596 "sessions/nudge_tracker_unittest.cc",
597 "sessions/status_controller_unittest.cc",
Torne (Richard Coles)6e8cce62014-08-19 13:00:08 +0100598 "syncable/deferred_on_disk_directory_backing_store_unittest.cc",
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +0100599 "syncable/directory_backing_store_unittest.cc",
600 "syncable/directory_unittest.cc",
601 "syncable/directory_unittest.h",
602 "syncable/entry_kernel_unittest.cc",
603 "syncable/model_type_unittest.cc",
604 "syncable/nigori_util_unittest.cc",
605 "syncable/parent_child_index_unittest.cc",
606 "syncable/syncable_enum_conversions_unittest.cc",
607 "syncable/syncable_id_unittest.cc",
608 "syncable/syncable_unittest.cc",
609 "syncable/syncable_util_unittest.cc",
610 "util/cryptographer_unittest.cc",
611 "util/data_type_histogram_unittest.cc",
612 "util/get_session_name_unittest.cc",
613 "util/nigori_unittest.cc",
614 "util/protobuf_unittest.cc",
615 ]
616
617 deps = [
618 "//base",
619 "//base/allocator",
620 "//base/test:run_all_unittests",
621 "//google_apis",
622 "//google_apis:test_support",
623 "//net",
624 "//net:test_support",
625 "//sql",
626 "//testing/gmock",
627 "//testing/gtest",
628 "//third_party/protobuf:protobuf_lite",
629 "//sync",
630 ":test_support_sync_core",
631 ":test_support_sync_internal_api",
632 ]
633
634 # TODO(GYP)
635 # ['OS == "android"', {
636 # 'dependencies': [
637 # '../testing/android/native_test.gyp:native_test_native_code',
638 # ],
639 # }],
640
641 if (is_chromeos) {
642 # Required by get_session_name_unittest.cc on Chrome OS.
643 deps += [
644 "//chromeos"
645 ]
646 }
647
648 if (is_ios) {
649 sources -= [ "internal_api/http_bridge_unittest.cc" ]
650 }
651
652 defines = [ "SYNC_TEST" ]
653}
654
655# GYP version: sync/sync_tests.gypi:test_support_sync_fake_server
656static_library("test_support_sync_fake_server") {
Primiano Tucci1320f922014-09-30 14:45:55 +0100657 testonly = true
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +0100658 sources = [
659 "test/fake_server/bookmark_entity.cc",
660 "test/fake_server/bookmark_entity.h",
661 "test/fake_server/bookmark_entity_builder.cc",
662 "test/fake_server/bookmark_entity_builder.h",
663 "test/fake_server/entity_builder.cc",
664 "test/fake_server/entity_builder.h",
665 "test/fake_server/entity_builder_factory.cc",
666 "test/fake_server/entity_builder_factory.h",
667 "test/fake_server/fake_server.cc",
668 "test/fake_server/fake_server.h",
669 "test/fake_server/fake_server_entity.cc",
670 "test/fake_server/fake_server_entity.h",
671 "test/fake_server/fake_server_http_post_provider.cc",
672 "test/fake_server/fake_server_http_post_provider.h",
673 "test/fake_server/fake_server_network_resources.cc",
674 "test/fake_server/fake_server_network_resources.h",
675 "test/fake_server/fake_server_verifier.cc",
676 "test/fake_server/fake_server_verifier.h",
677 "test/fake_server/permanent_entity.cc",
678 "test/fake_server/permanent_entity.h",
679 "test/fake_server/tombstone_entity.cc",
680 "test/fake_server/tombstone_entity.h",
681 "test/fake_server/unique_client_entity.cc",
682 "test/fake_server/unique_client_entity.h",
683 ]
684
685 deps = [
686 "//base",
687 "//net",
688 "//testing/gtest",
689 "//third_party/protobuf:protobuf_lite",
690 "//sync",
691 ]
692
693 configs += [ "//build/config/compiler:wexit_time_destructors" ]
694}
695
696# GYP version: sync/sync_tests.gypi:test_support_sync_testserver
697static_library("test_support_sync_testserver") {
Primiano Tucci1320f922014-09-30 14:45:55 +0100698 testonly = true
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +0100699 sources = [
700 "test/local_sync_test_server.cc",
701 "test/local_sync_test_server.h",
702 ]
703
704 configs += [ "//build/config/compiler:wexit_time_destructors" ]
705
Primiano Tucci1320f922014-09-30 14:45:55 +0100706 public_deps = [
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +0100707 "//base",
708 "//net:test_support",
Primiano Tucci1320f922014-09-30 14:45:55 +0100709 ]
710 deps = [
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +0100711 ":sync",
712
713 # The sync test server uses Python modules generated by the sync protos.
714 # '../third_party/protobuf/protobuf.gyp:py_proto', # TODO(GYP)
715 ]
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +0100716}
717
718# GYP version: sync/sync_tests.gypi:test_support_accounts_client
719static_library("test_support_accounts_client") {
Primiano Tucci1320f922014-09-30 14:45:55 +0100720 testonly = true
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +0100721 sources = [
722 "test/accounts_client/test_accounts_client.cc",
723 "test/accounts_client/test_accounts_client.h",
724 "test/accounts_client/url_request_context_getter.cc",
725 "test/accounts_client/url_request_context_getter.h",
726 ]
727 deps = [
728 "//base",
729 "//net",
730 ]
731}
732
733# GYP version: sync/sync_tests.gypi:sync_endtoend_tests
734test("sync_endtoend_tests") {
735 sources = [
736 "test/accounts_client/test_accounts_client_unittest.cc",
737 ]
738 deps = [
739 "//base/test:run_all_unittests",
740 "//testing/gmock",
741 "//testing/gtest",
742 "//url",
743 ":test_support_accounts_client",
744 ]
745}
746
747if (!is_ios) {
748 # GYP version: sync/sync_tests.gypi:run_sync_testserver
749 executable("run_sync_testserver") {
Primiano Tucci1320f922014-09-30 14:45:55 +0100750 testonly = true
Torne (Richard Coles)5f1c9432014-08-12 13:47:38 +0100751 sources = [ "tools/testserver/run_sync_testserver.cc" ]
752
753 deps = [
754 "//base",
755 "//base/test:test_support",
756 "//net:test_support",
757 "//testing/gtest",
758 ":test_support_sync_testserver",
759 ]
760 }
761}
762
763#TODO(GYP): Need to port sync_android.gypi and Android test targets.