1 # Copyright 2013 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.
7 # Test support files for the 'sync_core' target.
8 # GN version: //sync:test_support_sync_core
10 'target_name': 'test_support_sync_core',
11 'type': 'static_library',
12 'variables': { 'enable_wexit_time_destructors': 1, },
20 '../base/base.gyp:base',
21 '../testing/gmock.gyp:gmock',
22 '../testing/gtest.gyp:gtest',
25 'export_dependent_settings': [
26 '../testing/gmock.gyp:gmock',
27 '../testing/gtest.gyp:gtest',
31 'internal_api/public/base/model_type_test_util.cc',
32 'internal_api/public/base/model_type_test_util.h',
35 'sessions/test_util.cc',
36 'sessions/test_util.h',
37 'test/callback_counter.h',
38 "test/directory_backing_store_corruption_testing.cc",
39 "test/directory_backing_store_corruption_testing.h",
40 'test/engine/fake_model_worker.cc',
41 'test/engine/fake_model_worker.h',
42 'test/engine/fake_sync_scheduler.cc',
43 'test/engine/fake_sync_scheduler.h',
44 'test/engine/injectable_sync_context_proxy.cc',
45 'test/engine/injectable_sync_context_proxy.h',
46 'test/engine/mock_connection_manager.cc',
47 'test/engine/mock_connection_manager.h',
48 'test/engine/mock_model_type_sync_proxy.cc',
49 'test/engine/mock_model_type_sync_proxy.h',
50 'test/engine/mock_model_type_sync_worker.cc',
51 'test/engine/mock_model_type_sync_worker.h',
52 'test/engine/mock_nudge_handler.cc',
53 'test/engine/mock_nudge_handler.h',
54 'test/engine/mock_update_handler.cc',
55 'test/engine/mock_update_handler.h',
56 'test/engine/single_type_mock_server.cc',
57 'test/engine/single_type_mock_server.h',
58 'test/engine/test_directory_setter_upper.cc',
59 'test/engine/test_directory_setter_upper.h',
60 'test/engine/test_id_factory.h',
61 'test/engine/test_syncable_utils.cc',
62 'test/engine/test_syncable_utils.h',
63 'test/fake_encryptor.cc',
64 'test/fake_encryptor.h',
65 'test/fake_sync_encryption_handler.cc',
66 'test/fake_sync_encryption_handler.h',
67 'test/mock_invalidation.cc',
68 'test/mock_invalidation.h',
69 'test/mock_invalidation_tracker.cc',
70 'test/mock_invalidation_tracker.h',
71 'test/null_directory_change_delegate.cc',
72 'test/null_directory_change_delegate.h',
73 'test/null_transaction_observer.cc',
74 'test/null_transaction_observer.h',
75 'test/sessions/mock_debug_info_getter.cc',
76 'test/sessions/mock_debug_info_getter.h',
77 'test/sessions/test_scoped_session_event_listener.h',
78 'test/test_directory_backing_store.cc',
79 'test/test_directory_backing_store.h',
80 'test/test_transaction_observer.cc',
81 'test/test_transaction_observer.h',
82 'test/trackable_mock_invalidation.cc',
83 'test/trackable_mock_invalidation.h',
84 'util/mock_unrecoverable_error_handler.cc',
85 'util/mock_unrecoverable_error_handler.h',
86 'util/test_unrecoverable_error_handler.cc',
87 'util/test_unrecoverable_error_handler.h',
91 # Test support files for the python sync test server.
92 # GN version: //sync:test_support_sync_testserver
94 'target_name': 'test_support_sync_testserver',
95 'type': 'static_library',
96 'variables': { 'enable_wexit_time_destructors': 1, },
101 '../base/base.gyp:base',
102 '../net/net.gyp:net_test_support',
103 # The sync test server uses Python modules generated by the sync protos.
104 '../third_party/protobuf/protobuf.gyp:py_proto',
107 'export_dependent_settings': [
108 '../base/base.gyp:base',
109 '../net/net.gyp:net_test_support',
112 'test/local_sync_test_server.cc',
113 'test/local_sync_test_server.h',
117 # Test support files for the fake sync server.
118 # GN version: //sync:test_support_sync_fake_server
120 'target_name': 'test_support_sync_fake_server',
121 'type': 'static_library',
122 'variables': { 'enable_wexit_time_destructors': 1, },
127 '../base/base.gyp:base',
128 '../net/net.gyp:net',
129 '../testing/gtest.gyp:gtest',
130 '../third_party/protobuf/protobuf.gyp:protobuf_lite',
133 'export_dependent_settings': [
137 'test/fake_server/bookmark_entity.cc',
138 'test/fake_server/bookmark_entity.h',
139 'test/fake_server/bookmark_entity_builder.cc',
140 'test/fake_server/bookmark_entity_builder.h',
141 'test/fake_server/entity_builder_factory.cc',
142 'test/fake_server/entity_builder_factory.h',
143 'test/fake_server/fake_server.cc',
144 'test/fake_server/fake_server.h',
145 'test/fake_server/fake_server_entity.cc',
146 'test/fake_server/fake_server_entity.h',
147 'test/fake_server/fake_server_http_post_provider.cc',
148 'test/fake_server/fake_server_http_post_provider.h',
149 'test/fake_server/fake_server_network_resources.cc',
150 'test/fake_server/fake_server_network_resources.h',
151 'test/fake_server/fake_server_verifier.cc',
152 'test/fake_server/fake_server_verifier.h',
153 'test/fake_server/permanent_entity.cc',
154 'test/fake_server/permanent_entity.h',
155 'test/fake_server/sessions_hierarchy.cc',
156 'test/fake_server/sessions_hierarchy.h',
157 'test/fake_server/tombstone_entity.cc',
158 'test/fake_server/tombstone_entity.h',
159 'test/fake_server/unique_client_entity.cc',
160 'test/fake_server/unique_client_entity.h',
164 # Test support files for the 'sync_internal_api' target.
165 # GN version: //sync:test_support_sync_internal_api
167 'target_name': 'test_support_sync_internal_api',
168 'type': 'static_library',
169 'variables': { 'enable_wexit_time_destructors': 1, },
177 '../base/base.gyp:base',
178 '../testing/gtest.gyp:gtest',
180 'test_support_sync_core',
182 'export_dependent_settings': [
183 '../testing/gtest.gyp:gtest',
185 'test_support_sync_core',
188 'internal_api/public/test/fake_sync_manager.h',
189 'internal_api/public/test/null_sync_context_proxy.h',
190 'internal_api/public/test/sync_manager_factory_for_profile_sync_test.h',
191 'internal_api/public/test/test_entry_factory.h',
192 'internal_api/public/test/test_internal_components_factory.h',
193 'internal_api/public/test/test_user_share.h',
194 'internal_api/test/fake_sync_manager.cc',
195 'internal_api/test/null_sync_context_proxy.cc',
196 'internal_api/test/sync_manager_factory_for_profile_sync_test.cc',
197 'internal_api/test/sync_manager_for_profile_sync_test.cc',
198 'internal_api/test/sync_manager_for_profile_sync_test.h',
199 'internal_api/test/test_entry_factory.cc',
200 'internal_api/test/test_internal_components_factory.cc',
201 'internal_api/test/test_user_share.cc',
205 # Test support files for the 'sync_api' target.
206 # GN version: //sync:test_support_sync_api
208 'target_name': 'test_support_sync_api',
209 'type': 'static_library',
217 '../testing/gmock.gyp:gmock',
220 'export_dependent_settings': [
221 '../testing/gmock.gyp:gmock',
225 'api/fake_sync_change_processor.cc',
226 'api/fake_sync_change_processor.h',
227 'api/fake_syncable_service.cc',
228 'api/fake_syncable_service.h',
229 'api/sync_change_processor_wrapper_for_test.cc',
230 'api/sync_change_processor_wrapper_for_test.h',
231 'api/sync_error_factory_mock.cc',
232 'api/sync_error_factory_mock.h',
236 # The unit test executable for sync tests.
237 # GN version: //sync:sync_unit_tests
239 'target_name': 'sync_unit_tests',
240 'type': '<(gtest_target_type)',
241 # Typed-parametrized tests generate exit-time destructors.
242 'variables': { 'enable_wexit_time_destructors': 0, },
247 '../base/base.gyp:base',
248 '../base/base.gyp:run_all_unittests',
249 '../google_apis/google_apis.gyp:google_apis',
250 '../google_apis/google_apis.gyp:google_apis_test_support',
251 '../net/net.gyp:net',
252 '../net/net.gyp:net_test_support',
253 '../sql/sql.gyp:sql',
254 '../sql/sql.gyp:test_support_sql',
255 '../testing/gmock.gyp:gmock',
256 '../testing/gtest.gyp:gtest',
257 '../third_party/leveldatabase/leveldatabase.gyp:leveldatabase',
258 '../third_party/protobuf/protobuf.gyp:protobuf_lite',
260 'test_support_sync_core',
261 'test_support_sync_internal_api',
267 'api/attachments/attachment_id_unittest.cc',
268 'api/attachments/attachment_metadata_unittest.cc',
269 'api/attachments/attachment_unittest.cc',
270 'api/sync_change_unittest.cc',
271 'api/sync_data_unittest.cc',
272 'api/sync_error_unittest.cc',
273 'api/sync_merge_result_unittest.cc',
274 'engine/apply_control_data_updates_unittest.cc',
275 'engine/backoff_delay_provider_unittest.cc',
276 'engine/directory_commit_contribution_unittest.cc',
277 'engine/directory_update_handler_unittest.cc',
278 'engine/entity_tracker_unittest.cc',
279 'engine/get_updates_processor_unittest.cc',
280 'engine/model_type_entity_unittest.cc',
281 'engine/model_type_sync_proxy_impl_unittest.cc',
282 'engine/model_type_sync_worker_impl_unittest.cc',
283 'engine/sync_scheduler_unittest.cc',
284 'engine/syncer_proto_util_unittest.cc',
285 'engine/syncer_unittest.cc',
286 'engine/syncer_util_unittest.cc',
287 'internal_api/attachments/attachment_downloader_impl_unittest.cc',
288 'internal_api/attachments/attachment_service_impl_unittest.cc',
289 'internal_api/attachments/attachment_service_proxy_unittest.cc',
290 'internal_api/attachments/attachment_store_frontend_unittest.cc',
291 'internal_api/attachments/attachment_store_test_template.h',
292 'internal_api/attachments/attachment_uploader_impl_unittest.cc',
293 'internal_api/attachments/fake_attachment_downloader_unittest.cc',
294 'internal_api/attachments/fake_attachment_uploader_unittest.cc',
295 'internal_api/attachments/in_memory_attachment_store_unittest.cc',
296 'internal_api/attachments/on_disk_attachment_store_unittest.cc',
297 'internal_api/attachments/task_queue_unittest.cc',
298 'internal_api/debug_info_event_listener_unittest.cc',
299 'internal_api/http_bridge_unittest.cc',
300 'internal_api/js_mutation_event_observer_unittest.cc',
301 'internal_api/js_sync_encryption_handler_observer_unittest.cc',
302 'internal_api/js_sync_manager_observer_unittest.cc',
303 'internal_api/protocol_event_buffer_unittest.cc',
304 'internal_api/public/base/attachment_id_proto_unittest.cc',
305 'internal_api/public/base/cancelation_signal_unittest.cc',
306 'internal_api/public/base/enum_set_unittest.cc',
307 'internal_api/public/base/node_ordinal_unittest.cc',
308 'internal_api/public/base/ordinal_unittest.cc',
309 'internal_api/public/base/unique_position_unittest.cc',
310 'internal_api/public/change_record_unittest.cc',
311 'internal_api/public/engine/model_safe_worker_unittest.cc',
312 'internal_api/public/sessions/sync_session_snapshot_unittest.cc',
313 'internal_api/public/util/immutable_unittest.cc',
314 'internal_api/public/util/weak_handle_unittest.cc',
315 'internal_api/sync_backup_manager_unittest.cc',
316 'internal_api/sync_context_proxy_impl_unittest.cc',
317 'internal_api/sync_encryption_handler_impl_unittest.cc',
318 'internal_api/sync_manager_impl_unittest.cc',
319 'internal_api/sync_rollback_manager_base_unittest.cc',
320 'internal_api/sync_rollback_manager_unittest.cc',
321 'internal_api/syncapi_server_connection_manager_unittest.cc',
322 'js/js_event_details_unittest.cc',
323 'js/sync_js_controller_unittest.cc',
324 'protocol/proto_enum_conversions_unittest.cc',
325 'protocol/proto_value_conversions_unittest.cc',
326 'sessions/model_type_registry_unittest.cc',
327 'sessions/nudge_tracker_unittest.cc',
328 'sessions/status_controller_unittest.cc',
329 'syncable/deferred_on_disk_directory_backing_store_unittest.cc',
330 'syncable/directory_backing_store_unittest.cc',
331 'syncable/directory_unittest.cc',
332 'syncable/directory_unittest.h',
333 'syncable/entry_kernel_unittest.cc',
334 'syncable/model_type_unittest.cc',
335 'syncable/nigori_util_unittest.cc',
336 'syncable/parent_child_index_unittest.cc',
337 'syncable/proto_value_ptr_unittest.cc',
338 'syncable/syncable_enum_conversions_unittest.cc',
339 'syncable/syncable_id_unittest.cc',
340 'syncable/syncable_unittest.cc',
341 'syncable/syncable_util_unittest.cc',
342 'util/cryptographer_unittest.cc',
343 'util/data_type_histogram_unittest.cc',
344 'util/get_session_name_unittest.cc',
345 'util/nigori_unittest.cc',
346 'util/protobuf_unittest.cc',
349 # TODO(akalin): This is needed because histogram.cc uses
350 # leak_annotations.h, which pulls this in. Make 'base'
351 # propagate this dependency.
352 ['OS=="linux" and use_allocator!="none"', {
354 '../base/allocator/allocator.gyp:allocator',
357 ['OS == "android"', {
359 '../testing/android/native_test.gyp:native_test_native_code',
362 ['OS=="linux" and chromeos==1', {
363 # Required by get_session_name_unittest.cc on Chrome OS.
365 '../chromeos/chromeos.gyp:chromeos',
370 'internal_api/http_bridge_unittest.cc',
379 # A tool that can be used to launch a python sync server instance.
381 'target_name': 'run_sync_testserver',
382 'type': 'executable',
384 '../base/base.gyp:base',
385 '../base/base.gyp:test_support_base',
386 '../net/net.gyp:net_test_support',
387 '../testing/gtest.gyp:gtest',
388 'test_support_sync_testserver',
391 'tools/testserver/run_sync_testserver.cc',
396 ['OS == "android"', {
399 # GN: //sync/android:sync_javatests
400 'target_name': 'sync_javatests',
403 'java_in_dir': '../sync/android/javatests',
407 'sync_java_test_support',
408 '../base/base.gyp:base_java_test_support',
410 'includes': [ '../build/java.gypi' ],
413 # GN: //sync:sync_java_test_support
414 'target_name': 'sync_java_test_support',
417 'java_in_dir': '../sync/test/android/javatests',
421 '../base/base.gyp:base_java_test_support',
423 'includes': [ '../build/java.gypi' ],
426 # GN: //sync:sync_fake_server_jni_headers
427 'target_name': 'sync_fake_server_jni_headers',
430 '../chrome/android/sync_shell/javatests/src/org/chromium/chrome/browser/sync/FakeServerHelper.java',
433 'jni_gen_package': 'sync/test/fake_server',
434 'jni_generator_ptr_type': 'long',
436 'includes': [ '../build/jni_generator.gypi' ],
439 # TODO(pvalenzuela): Create GN version of this target.
440 # http://crbug.com/475612
441 'target_name': 'test_support_sync_proto_java',
444 'proto_in_dir': '<(INTERMEDIATE_DIR)/sync_protos',
445 # Set this variable so that sync_proto_source_paths refers to the
446 # temporary proto definitions created here.
447 'sync_proto_sources_dir': '<(INTERMEDIATE_DIR)/sync_protos',
451 'action_name': 'run_script',
453 'protocol/prepare_protos_for_java_tests.py',
454 # Use the original list of proto files (defined in sync.gyp).
455 '<@(sync_proto_sources)',
458 '<@(sync_proto_source_paths)',
462 'protocol/prepare_protos_for_java_tests.py',
464 '<(INTERMEDIATE_DIR)/sync_protos',
465 # Use the original list of proto files (defined in sync.gyp).
466 '<@(sync_proto_sources)'
471 '<@(sync_proto_source_paths)',
473 'includes': ['protocol/protocol.gypi', '../build/protoc_java.gypi'],
476 # GN: //sync:test_support_sync_fake_server_android
477 'target_name': 'test_support_sync_fake_server_android',
478 'type': 'static_library',
480 'sync_fake_server_jni_headers',
481 'test_support_sync_fake_server',
482 '../testing/gtest.gyp:gtest',
483 '../base/base.gyp:base',
485 'export_dependent_settings': [
486 '../testing/gtest.gyp:gtest',
489 'test/fake_server/android/fake_server_helper_android.cc',
490 'test/fake_server/android/fake_server_helper_android.h',
494 # GN: //sync:sync_unit_tests_apk
495 'target_name': 'sync_unit_tests_apk',
501 'test_suite_name': 'sync_unit_tests',
502 'isolate_file': 'sync_unit_tests.isolate',
504 'includes': [ '../build/apk_test.gypi' ],
508 ['test_isolation_mode != "noop"', {
511 'target_name': 'sync_unit_tests_run',
517 '../build/isolate.gypi',
520 'sync_unit_tests.isolate',