# Copyright 2014 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//build/config/features.gni")
import("//sync/protocol/protocol_sources.gni")
import("//testing/test.gni")

component("sync") {
  public_deps = [
    ":sync_core",
    "//sync/protocol",
  ]
}

# GYP version: sync/sync.gyp:sync_core
source_set("sync_core") {
  sources = [
    "api/attachments/attachment.cc",
    "api/attachments/attachment.h",
    "api/attachments/attachment_id.cc",
    "api/attachments/attachment_id.h",
    "api/attachments/attachment_metadata.cc",
    "api/attachments/attachment_metadata.h",
    "api/attachments/attachment_store.cc",
    "api/attachments/attachment_store.h",
    "api/attachments/attachment_store_backend.cc",
    "api/attachments/attachment_store_backend.h",
    "api/data_batch.h",
    "api/entity_change.cc",
    "api/entity_change.h",
    "api/entity_data.cc",
    "api/entity_data.h",
    "api/metadata_batch.cc",
    "api/metadata_batch.h",
    "api/metadata_change_list.h",
    "api/model_type_change_processor.cc",
    "api/model_type_change_processor.h",
    "api/model_type_service.cc",
    "api/model_type_service.h",
    "api/model_type_store.cc",
    "api/model_type_store.h",
    "api/string_ordinal.h",
    "api/sync_change.cc",
    "api/sync_change.h",
    "api/sync_change_processor.cc",
    "api/sync_change_processor.h",
    "api/sync_data.cc",
    "api/sync_data.h",
    "api/sync_error.cc",
    "api/sync_error.h",
    "api/sync_error_factory.cc",
    "api/sync_error_factory.h",
    "api/sync_merge_result.cc",
    "api/sync_merge_result.h",
    "api/syncable_service.cc",
    "api/syncable_service.h",
    "api/time.h",
    "base/sync_export.h",
    "engine/all_status.cc",
    "engine/all_status.h",
    "engine/apply_control_data_updates.cc",
    "engine/apply_control_data_updates.h",
    "engine/backoff_delay_provider.cc",
    "engine/backoff_delay_provider.h",
    "engine/clear_server_data.cc",
    "engine/clear_server_data.h",
    "engine/commit.cc",
    "engine/commit.h",
    "engine/commit_contribution.cc",
    "engine/commit_contribution.h",
    "engine/commit_contributor.cc",
    "engine/commit_contributor.h",
    "engine/commit_processor.cc",
    "engine/commit_processor.h",
    "engine/commit_queue.cc",
    "engine/commit_queue.h",
    "engine/commit_util.cc",
    "engine/commit_util.h",
    "engine/conflict_resolver.cc",
    "engine/conflict_resolver.h",
    "engine/conflict_util.cc",
    "engine/conflict_util.h",
    "engine/directory_commit_contribution.cc",
    "engine/directory_commit_contribution.h",
    "engine/directory_commit_contributor.cc",
    "engine/directory_commit_contributor.h",
    "engine/directory_update_handler.cc",
    "engine/directory_update_handler.h",
    "engine/get_commit_ids.cc",
    "engine/get_commit_ids.h",
    "engine/get_updates_delegate.cc",
    "engine/get_updates_delegate.h",
    "engine/get_updates_processor.cc",
    "engine/get_updates_processor.h",
    "engine/model_type_worker.cc",
    "engine/model_type_worker.h",
    "engine/net/server_connection_manager.cc",
    "engine/net/server_connection_manager.h",
    "engine/net/url_translator.cc",
    "engine/net/url_translator.h",
    "engine/non_blocking_type_commit_contribution.cc",
    "engine/non_blocking_type_commit_contribution.h",
    "engine/nudge_handler.cc",
    "engine/nudge_handler.h",
    "engine/nudge_source.cc",
    "engine/nudge_source.h",
    "engine/process_updates_util.cc",
    "engine/process_updates_util.h",
    "engine/sync_cycle_event.cc",
    "engine/sync_cycle_event.h",
    "engine/sync_engine_event_listener.cc",
    "engine/sync_engine_event_listener.h",
    "engine/sync_scheduler.cc",
    "engine/sync_scheduler.h",
    "engine/sync_scheduler_impl.cc",
    "engine/sync_scheduler_impl.h",
    "engine/syncer.cc",
    "engine/syncer.h",
    "engine/syncer_proto_util.cc",
    "engine/syncer_proto_util.h",
    "engine/syncer_types.h",
    "engine/syncer_util.cc",
    "engine/syncer_util.h",
    "engine/traffic_logger.cc",
    "engine/traffic_logger.h",
    "engine/update_applicator.cc",
    "engine/update_applicator.h",
    "engine/update_handler.cc",
    "engine/update_handler.h",
    "engine/worker_entity_tracker.cc",
    "engine/worker_entity_tracker.h",
    "internal_api/activation_context.cc",
    "internal_api/attachments/attachment_downloader.cc",
    "internal_api/attachments/attachment_downloader_impl.cc",
    "internal_api/attachments/attachment_service.cc",
    "internal_api/attachments/attachment_service_impl.cc",
    "internal_api/attachments/attachment_service_proxy.cc",
    "internal_api/attachments/attachment_service_proxy_for_test.cc",
    "internal_api/attachments/attachment_store_frontend.cc",
    "internal_api/attachments/attachment_uploader.cc",
    "internal_api/attachments/attachment_uploader_impl.cc",
    "internal_api/attachments/attachment_util.cc",
    "internal_api/attachments/fake_attachment_downloader.cc",
    "internal_api/attachments/fake_attachment_uploader.cc",
    "internal_api/attachments/in_memory_attachment_store.cc",
    "internal_api/attachments/on_disk_attachment_store.cc",
    "internal_api/attachments/task_queue.cc",
    "internal_api/base_node.cc",
    "internal_api/base_transaction.cc",
    "internal_api/change_record.cc",
    "internal_api/change_reorder_buffer.cc",
    "internal_api/change_reorder_buffer.h",
    "internal_api/debug_info_event_listener.cc",
    "internal_api/debug_info_event_listener.h",
    "internal_api/delete_journal.cc",
    "internal_api/events/clear_server_data_request_event.cc",
    "internal_api/events/clear_server_data_response_event.cc",
    "internal_api/events/commit_request_event.cc",
    "internal_api/events/commit_response_event.cc",
    "internal_api/events/configure_get_updates_request_event.cc",
    "internal_api/events/get_updates_response_event.cc",
    "internal_api/events/normal_get_updates_request_event.cc",
    "internal_api/events/poll_get_updates_request_event.cc",
    "internal_api/events/protocol_event.cc",
    "internal_api/http_bridge.cc",
    "internal_api/http_bridge_network_resources.cc",
    "internal_api/internal_components_factory_impl.cc",
    "internal_api/js_mutation_event_observer.cc",
    "internal_api/js_mutation_event_observer.h",
    "internal_api/js_sync_encryption_handler_observer.cc",
    "internal_api/js_sync_encryption_handler_observer.h",
    "internal_api/js_sync_manager_observer.cc",
    "internal_api/js_sync_manager_observer.h",
    "internal_api/model_type_store_backend.cc",
    "internal_api/model_type_store_impl.cc",
    "internal_api/processor_entity_tracker.cc",
    "internal_api/protocol_event_buffer.cc",
    "internal_api/protocol_event_buffer.h",
    "internal_api/public/activation_context.h",
    "internal_api/public/attachments/attachment_downloader.h",
    "internal_api/public/attachments/attachment_downloader_impl.h",
    "internal_api/public/attachments/attachment_service.h",
    "internal_api/public/attachments/attachment_service_impl.h",
    "internal_api/public/attachments/attachment_service_proxy.h",
    "internal_api/public/attachments/attachment_service_proxy_for_test.h",
    "internal_api/public/attachments/attachment_store_frontend.h",
    "internal_api/public/attachments/attachment_uploader.h",
    "internal_api/public/attachments/attachment_uploader_impl.h",
    "internal_api/public/attachments/attachment_util.h",
    "internal_api/public/attachments/fake_attachment_downloader.h",
    "internal_api/public/attachments/fake_attachment_uploader.h",
    "internal_api/public/attachments/in_memory_attachment_store.h",
    "internal_api/public/attachments/on_disk_attachment_store.h",
    "internal_api/public/base/attachment_id_proto.cc",
    "internal_api/public/base/attachment_id_proto.h",
    "internal_api/public/base/cancelation_observer.cc",
    "internal_api/public/base/cancelation_observer.h",
    "internal_api/public/base/cancelation_signal.cc",
    "internal_api/public/base/cancelation_signal.h",
    "internal_api/public/base/enum_set.h",
    "internal_api/public/base/invalidation_interface.cc",
    "internal_api/public/base/invalidation_interface.h",
    "internal_api/public/base/model_type.h",
    "internal_api/public/base/node_ordinal.cc",
    "internal_api/public/base/node_ordinal.h",
    "internal_api/public/base/ordinal.h",
    "internal_api/public/base/progress_marker_map.cc",
    "internal_api/public/base/progress_marker_map.h",
    "internal_api/public/base/stop_source.h",
    "internal_api/public/base/unique_position.cc",
    "internal_api/public/base/unique_position.h",
    "internal_api/public/base_node.h",
    "internal_api/public/base_transaction.h",
    "internal_api/public/change_record.h",
    "internal_api/public/configure_reason.h",
    "internal_api/public/data_batch_impl.cc",
    "internal_api/public/data_batch_impl.h",
    "internal_api/public/data_type_association_stats.cc",
    "internal_api/public/data_type_association_stats.h",
    "internal_api/public/data_type_debug_info_listener.cc",
    "internal_api/public/data_type_debug_info_listener.h",
    "internal_api/public/delete_journal.h",
    "internal_api/public/engine/model_safe_worker.cc",
    "internal_api/public/engine/model_safe_worker.h",
    "internal_api/public/engine/passive_model_worker.cc",
    "internal_api/public/engine/passive_model_worker.h",
    "internal_api/public/engine/polling_constants.cc",
    "internal_api/public/engine/polling_constants.h",
    "internal_api/public/engine/sync_status.cc",
    "internal_api/public/engine/sync_status.h",
    "internal_api/public/events/clear_server_data_request_event.h",
    "internal_api/public/events/clear_server_data_response_event.h",
    "internal_api/public/events/commit_request_event.h",
    "internal_api/public/events/commit_response_event.h",
    "internal_api/public/events/configure_get_updates_request_event.h",
    "internal_api/public/events/get_updates_response_event.h",
    "internal_api/public/events/normal_get_updates_request_event.h",
    "internal_api/public/events/poll_get_updates_request_event.h",
    "internal_api/public/events/protocol_event.h",
    "internal_api/public/http_bridge.h",
    "internal_api/public/http_bridge_network_resources.h",
    "internal_api/public/http_post_provider_factory.h",
    "internal_api/public/http_post_provider_interface.h",
    "internal_api/public/internal_components_factory.h",
    "internal_api/public/internal_components_factory_impl.h",
    "internal_api/public/model_type_processor.cc",
    "internal_api/public/model_type_processor.h",
    "internal_api/public/model_type_store_backend.h",
    "internal_api/public/model_type_store_impl.h",
    "internal_api/public/network_resources.h",
    "internal_api/public/non_blocking_sync_common.cc",
    "internal_api/public/non_blocking_sync_common.h",
    "internal_api/public/processor_entity_tracker.h",
    "internal_api/public/read_node.h",
    "internal_api/public/read_transaction.h",
    "internal_api/public/sessions/commit_counters.cc",
    "internal_api/public/sessions/commit_counters.h",
    "internal_api/public/sessions/model_neutral_state.cc",
    "internal_api/public/sessions/model_neutral_state.h",
    "internal_api/public/sessions/status_counters.cc",
    "internal_api/public/sessions/status_counters.h",
    "internal_api/public/sessions/sync_session_snapshot.cc",
    "internal_api/public/sessions/sync_session_snapshot.h",
    "internal_api/public/sessions/type_debug_info_observer.cc",
    "internal_api/public/sessions/type_debug_info_observer.h",
    "internal_api/public/sessions/update_counters.cc",
    "internal_api/public/sessions/update_counters.h",
    "internal_api/public/shared_model_type_processor.h",
    "internal_api/public/shutdown_reason.h",
    "internal_api/public/simple_metadata_change_list.cc",
    "internal_api/public/simple_metadata_change_list.h",
    "internal_api/public/sync_auth_provider.h",
    "internal_api/public/sync_context.h",
    "internal_api/public/sync_context_proxy.h",
    "internal_api/public/sync_encryption_handler.cc",
    "internal_api/public/sync_encryption_handler.h",
    "internal_api/public/sync_manager.cc",
    "internal_api/public/sync_manager.h",
    "internal_api/public/sync_manager_factory.h",
    "internal_api/public/user_share.h",
    "internal_api/public/util/experiments.h",
    "internal_api/public/util/immutable.h",
    "internal_api/public/util/proto_value_ptr.h",
    "internal_api/public/util/sync_db_util.h",
    "internal_api/public/util/sync_string_conversions.cc",
    "internal_api/public/util/sync_string_conversions.h",
    "internal_api/public/util/syncer_error.cc",
    "internal_api/public/util/syncer_error.h",
    "internal_api/public/util/unrecoverable_error_handler.h",
    "internal_api/public/util/unrecoverable_error_info.cc",
    "internal_api/public/util/unrecoverable_error_info.h",
    "internal_api/public/util/weak_handle.cc",
    "internal_api/public/util/weak_handle.h",
    "internal_api/public/write_node.h",
    "internal_api/public/write_transaction.h",
    "internal_api/read_node.cc",
    "internal_api/read_transaction.cc",
    "internal_api/shared_model_type_processor.cc",
    "internal_api/sync_context.cc",
    "internal_api/sync_context_proxy.cc",
    "internal_api/sync_context_proxy_impl.cc",
    "internal_api/sync_context_proxy_impl.h",
    "internal_api/sync_db_util.cc",
    "internal_api/sync_encryption_handler_impl.cc",
    "internal_api/sync_encryption_handler_impl.h",
    "internal_api/sync_manager_factory.cc",
    "internal_api/sync_manager_impl.cc",
    "internal_api/sync_manager_impl.h",
    "internal_api/syncapi_internal.cc",
    "internal_api/syncapi_internal.h",
    "internal_api/syncapi_server_connection_manager.cc",
    "internal_api/syncapi_server_connection_manager.h",
    "internal_api/user_share.cc",
    "internal_api/write_node.cc",
    "internal_api/write_transaction.cc",
    "js/js_backend.h",
    "js/js_controller.h",
    "js/js_event_details.cc",
    "js/js_event_details.h",
    "js/js_event_handler.h",
    "js/sync_js_controller.cc",
    "js/sync_js_controller.h",
    "protocol/proto_enum_conversions.cc",
    "protocol/proto_enum_conversions.h",
    "protocol/proto_value_conversions.cc",
    "protocol/proto_value_conversions.h",
    "protocol/sync_protocol_error.cc",
    "protocol/sync_protocol_error.h",
    "sessions/data_type_tracker.cc",
    "sessions/data_type_tracker.h",
    "sessions/debug_info_getter.h",
    "sessions/directory_type_debug_info_emitter.cc",
    "sessions/directory_type_debug_info_emitter.h",
    "sessions/model_type_registry.cc",
    "sessions/model_type_registry.h",
    "sessions/nudge_tracker.cc",
    "sessions/nudge_tracker.h",
    "sessions/status_controller.cc",
    "sessions/status_controller.h",
    "sessions/sync_session.cc",
    "sessions/sync_session.h",
    "sessions/sync_session_context.cc",
    "sessions/sync_session_context.h",
    "syncable/dir_open_result.h",
    "syncable/directory.cc",
    "syncable/directory.h",
    "syncable/directory_backing_store.cc",
    "syncable/directory_backing_store.h",
    "syncable/directory_change_delegate.h",
    "syncable/entry.cc",
    "syncable/entry.h",
    "syncable/entry_kernel.cc",
    "syncable/entry_kernel.h",
    "syncable/in_memory_directory_backing_store.cc",
    "syncable/in_memory_directory_backing_store.h",
    "syncable/invalid_directory_backing_store.cc",
    "syncable/invalid_directory_backing_store.h",
    "syncable/metahandle_set.h",
    "syncable/model_neutral_mutable_entry.cc",
    "syncable/model_neutral_mutable_entry.h",
    "syncable/model_type.cc",
    "syncable/mutable_entry.cc",
    "syncable/mutable_entry.h",
    "syncable/nigori_handler.cc",
    "syncable/nigori_handler.h",
    "syncable/nigori_util.cc",
    "syncable/nigori_util.h",
    "syncable/on_disk_directory_backing_store.cc",
    "syncable/on_disk_directory_backing_store.h",
    "syncable/parent_child_index.cc",
    "syncable/parent_child_index.h",
    "syncable/scoped_kernel_lock.cc",
    "syncable/scoped_kernel_lock.h",
    "syncable/scoped_parent_child_index_updater.cc",
    "syncable/scoped_parent_child_index_updater.h",
    "syncable/syncable-inl.h",
    "syncable/syncable_base_transaction.cc",
    "syncable/syncable_base_transaction.h",
    "syncable/syncable_base_write_transaction.cc",
    "syncable/syncable_base_write_transaction.h",
    "syncable/syncable_changes_version.h",
    "syncable/syncable_columns.h",
    "syncable/syncable_delete_journal.cc",
    "syncable/syncable_delete_journal.h",
    "syncable/syncable_enum_conversions.cc",
    "syncable/syncable_enum_conversions.h",
    "syncable/syncable_id.cc",
    "syncable/syncable_id.h",
    "syncable/syncable_model_neutral_write_transaction.cc",
    "syncable/syncable_model_neutral_write_transaction.h",
    "syncable/syncable_proto_util.cc",
    "syncable/syncable_proto_util.h",
    "syncable/syncable_read_transaction.cc",
    "syncable/syncable_read_transaction.h",
    "syncable/syncable_util.cc",
    "syncable/syncable_util.h",
    "syncable/syncable_write_transaction.cc",
    "syncable/syncable_write_transaction.h",
    "syncable/transaction_observer.h",
    "syncable/write_transaction_info.cc",
    "syncable/write_transaction_info.h",
    "util/cryptographer.cc",
    "util/cryptographer.h",
    "util/data_type_histogram.cc",
    "util/data_type_histogram.h",
    "util/encryptor.h",
    "util/extensions_activity.cc",
    "util/extensions_activity.h",
    "util/get_session_name.cc",
    "util/get_session_name.h",
    "util/get_session_name_ios.h",
    "util/get_session_name_ios.mm",
    "util/get_session_name_linux.cc",
    "util/get_session_name_linux.h",
    "util/get_session_name_mac.h",
    "util/get_session_name_mac.mm",
    "util/get_session_name_win.cc",
    "util/get_session_name_win.h",
    "util/logging.cc",
    "util/logging.h",
    "util/nigori.cc",
    "util/nigori.h",
    "util/time.cc",
    "util/time.h",
  ]

  configs += [ "//build/config:precompiled_headers" ]

  public_deps = [
    "//net",
    "//sync/internal_api/attachments/proto",
  ]
  deps = [
    "//base",
    "//base:i18n",
    "//base/third_party/dynamic_annotations",
    "//crypto",
    "//google_apis",
    "//sql",
    "//sync/protocol",
    "//third_party/leveldatabase",
    "//third_party/zlib",
    "//url",
  ]

  if (is_android) {
    deps += [ "//sync/android:jni_headers" ]
    sources += [
      "android/model_type_helper.cc",
      "android/model_type_helper.h",
      "android/sync_jni_registrar.cc",
      "android/sync_jni_registrar.h",
    ]
  }

  if (is_chromeos) {
    # Required by get_session_name.cc on Chrome OS.
    deps += [ "//chromeos" ]
  }

  if (is_mac) {
    libs = [
      # Required by get_session_name_mac.mm on Mac.
      "SystemConfiguration.framework",
    ]
  }

  defines = [ "SYNC_IMPLEMENTATION" ]
  configs += [ "//build/config/compiler:wexit_time_destructors" ]
}

# GYP version: sync/sync_tests.gypi:test_support_sync_core
static_library("test_support_sync_core") {
  testonly = true
  sources = [
    "internal_api/public/base/model_type_test_util.cc",
    "internal_api/public/base/model_type_test_util.h",
    "js/js_test_util.cc",
    "js/js_test_util.h",
    "sessions/test_util.cc",
    "sessions/test_util.h",
    "test/callback_counter.h",
    "test/directory_backing_store_corruption_testing.cc",
    "test/directory_backing_store_corruption_testing.h",
    "test/engine/fake_model_worker.cc",
    "test/engine/fake_model_worker.h",
    "test/engine/fake_sync_scheduler.cc",
    "test/engine/fake_sync_scheduler.h",
    "test/engine/mock_commit_queue.cc",
    "test/engine/mock_commit_queue.h",
    "test/engine/mock_connection_manager.cc",
    "test/engine/mock_connection_manager.h",
    "test/engine/mock_model_type_processor.cc",
    "test/engine/mock_model_type_processor.h",
    "test/engine/mock_nudge_handler.cc",
    "test/engine/mock_nudge_handler.h",
    "test/engine/mock_update_handler.cc",
    "test/engine/mock_update_handler.h",
    "test/engine/single_type_mock_server.cc",
    "test/engine/single_type_mock_server.h",
    "test/engine/test_directory_setter_upper.cc",
    "test/engine/test_directory_setter_upper.h",
    "test/engine/test_id_factory.h",
    "test/engine/test_syncable_utils.cc",
    "test/engine/test_syncable_utils.h",
    "test/fake_encryptor.cc",
    "test/fake_encryptor.h",
    "test/fake_sync_encryption_handler.cc",
    "test/fake_sync_encryption_handler.h",
    "test/mock_invalidation.cc",
    "test/mock_invalidation.h",
    "test/mock_invalidation_tracker.cc",
    "test/mock_invalidation_tracker.h",
    "test/null_directory_change_delegate.cc",
    "test/null_directory_change_delegate.h",
    "test/null_transaction_observer.cc",
    "test/null_transaction_observer.h",
    "test/sessions/mock_debug_info_getter.cc",
    "test/sessions/mock_debug_info_getter.h",
    "test/sessions/test_scoped_session_event_listener.h",
    "test/test_directory_backing_store.cc",
    "test/test_directory_backing_store.h",
    "test/test_transaction_observer.cc",
    "test/test_transaction_observer.h",
    "test/trackable_mock_invalidation.cc",
    "test/trackable_mock_invalidation.h",
    "util/mock_unrecoverable_error_handler.cc",
    "util/mock_unrecoverable_error_handler.h",
    "util/test_unrecoverable_error_handler.cc",
    "util/test_unrecoverable_error_handler.h",
  ]

  public_deps = [
    "//base",
    "//sync",
    "//testing/gmock",
    "//testing/gtest",
  ]

  defines = [ "SYNC_TEST" ]
  configs += [ "//build/config/compiler:wexit_time_destructors" ]
}

# GYP version: sync/sync_tests.gypi:test_support_sync_internal_api
static_library("test_support_sync_internal_api") {
  testonly = true
  sources = [
    "internal_api/public/test/fake_model_type_service.h",
    "internal_api/public/test/fake_sync_manager.h",
    "internal_api/public/test/model_type_store_test_util.h",
    "internal_api/public/test/null_sync_context_proxy.h",
    "internal_api/public/test/sync_manager_factory_for_profile_sync_test.h",
    "internal_api/public/test/test_entry_factory.h",
    "internal_api/public/test/test_internal_components_factory.h",
    "internal_api/public/test/test_user_share.h",
    "internal_api/test/fake_model_type_service.cc",
    "internal_api/test/fake_sync_manager.cc",
    "internal_api/test/model_type_store_test_util.cc",
    "internal_api/test/null_sync_context_proxy.cc",
    "internal_api/test/sync_manager_factory_for_profile_sync_test.cc",
    "internal_api/test/sync_manager_for_profile_sync_test.cc",
    "internal_api/test/sync_manager_for_profile_sync_test.h",
    "internal_api/test/test_entry_factory.cc",
    "internal_api/test/test_internal_components_factory.cc",
    "internal_api/test/test_user_share.cc",
  ]

  public_deps = [
    ":test_support_sync_core",
    "//base",
    "//sync",
    "//testing/gtest",
  ]

  defines = [ "SYNC_TEST" ]
  configs += [ "//build/config/compiler:wexit_time_destructors" ]
}

# GYP version: sync/sync_tests.gypi:test_support_sync_api
static_library("test_support_sync_api") {
  testonly = true
  sources = [
    "api/fake_sync_change_processor.cc",
    "api/fake_sync_change_processor.h",
    "api/fake_syncable_service.cc",
    "api/fake_syncable_service.h",
    "api/mock_model_type_store.cc",
    "api/mock_model_type_store.h",
    "api/sync_change_processor_wrapper_for_test.cc",
    "api/sync_change_processor_wrapper_for_test.h",
    "api/sync_error_factory_mock.cc",
    "api/sync_error_factory_mock.h",
  ]

  defines = [ "SYNC_TEST" ]

  public_deps = [
    "//base",
    "//sync",
    "//testing/gmock",
  ]
}

# GYP version: sync/sync_tests.gypi:sync_unit_tests
test("sync_unit_tests") {
  sources = [
    "api/attachments/attachment_id_unittest.cc",
    "api/attachments/attachment_metadata_unittest.cc",
    "api/attachments/attachment_unittest.cc",
    "api/entity_data_unittest.cc",
    "api/sync_change_unittest.cc",
    "api/sync_data_unittest.cc",
    "api/sync_error_unittest.cc",
    "api/sync_merge_result_unittest.cc",
    "engine/apply_control_data_updates_unittest.cc",
    "engine/backoff_delay_provider_unittest.cc",
    "engine/directory_commit_contribution_unittest.cc",
    "engine/directory_update_handler_unittest.cc",
    "engine/get_updates_processor_unittest.cc",
    "engine/model_type_worker_unittest.cc",
    "engine/sync_scheduler_unittest.cc",
    "engine/syncer_proto_util_unittest.cc",
    "engine/syncer_unittest.cc",
    "engine/syncer_util_unittest.cc",
    "engine/worker_entity_tracker_unittest.cc",
    "internal_api/attachments/attachment_downloader_impl_unittest.cc",
    "internal_api/attachments/attachment_service_impl_unittest.cc",
    "internal_api/attachments/attachment_service_proxy_unittest.cc",
    "internal_api/attachments/attachment_store_frontend_unittest.cc",
    "internal_api/attachments/attachment_store_test_template.h",
    "internal_api/attachments/attachment_uploader_impl_unittest.cc",
    "internal_api/attachments/fake_attachment_downloader_unittest.cc",
    "internal_api/attachments/fake_attachment_uploader_unittest.cc",
    "internal_api/attachments/in_memory_attachment_store_unittest.cc",
    "internal_api/attachments/on_disk_attachment_store_unittest.cc",
    "internal_api/attachments/task_queue_unittest.cc",
    "internal_api/debug_info_event_listener_unittest.cc",
    "internal_api/http_bridge_unittest.cc",
    "internal_api/js_mutation_event_observer_unittest.cc",
    "internal_api/js_sync_encryption_handler_observer_unittest.cc",
    "internal_api/js_sync_manager_observer_unittest.cc",
    "internal_api/model_type_store_backend_unittest.cc",
    "internal_api/model_type_store_impl_unittest.cc",
    "internal_api/processor_entity_tracker_unittest.cc",
    "internal_api/protocol_event_buffer_unittest.cc",
    "internal_api/public/base/attachment_id_proto_unittest.cc",
    "internal_api/public/base/cancelation_signal_unittest.cc",
    "internal_api/public/base/enum_set_unittest.cc",
    "internal_api/public/base/node_ordinal_unittest.cc",
    "internal_api/public/base/ordinal_unittest.cc",
    "internal_api/public/base/unique_position_unittest.cc",
    "internal_api/public/change_record_unittest.cc",
    "internal_api/public/data_batch_impl_unittest.cc",
    "internal_api/public/engine/model_safe_worker_unittest.cc",
    "internal_api/public/sessions/sync_session_snapshot_unittest.cc",
    "internal_api/public/util/immutable_unittest.cc",
    "internal_api/public/util/proto_value_ptr_unittest.cc",
    "internal_api/public/util/weak_handle_unittest.cc",
    "internal_api/shared_model_type_processor_unittest.cc",
    "internal_api/sync_context_proxy_impl_unittest.cc",
    "internal_api/sync_encryption_handler_impl_unittest.cc",
    "internal_api/sync_manager_impl_unittest.cc",
    "internal_api/syncapi_server_connection_manager_unittest.cc",
    "js/js_event_details_unittest.cc",
    "js/sync_js_controller_unittest.cc",
    "protocol/proto_enum_conversions_unittest.cc",
    "protocol/proto_value_conversions_unittest.cc",
    "sessions/model_type_registry_unittest.cc",
    "sessions/nudge_tracker_unittest.cc",
    "sessions/status_controller_unittest.cc",
    "syncable/directory_backing_store_unittest.cc",
    "syncable/directory_unittest.cc",
    "syncable/directory_unittest.h",
    "syncable/entry_kernel_unittest.cc",
    "syncable/model_type_unittest.cc",
    "syncable/nigori_util_unittest.cc",
    "syncable/parent_child_index_unittest.cc",
    "syncable/syncable_enum_conversions_unittest.cc",
    "syncable/syncable_id_unittest.cc",
    "syncable/syncable_unittest.cc",
    "syncable/syncable_util_unittest.cc",
    "util/cryptographer_unittest.cc",
    "util/data_type_histogram_unittest.cc",
    "util/get_session_name_unittest.cc",
    "util/nigori_unittest.cc",
    "util/protobuf_unittest.cc",
  ]

  configs += [ "//build/config:precompiled_headers" ]

  data = [
    "//chrome/test/data/sync/",
    "//net/tools/testserver/",
    "//third_party/pyftpdlib/",
    "//third_party/pywebsocket/",
    "//third_party/tlslite/",
    "$root_out_dir/pyproto/google/",
  ]

  deps = [
    ":test_support_sync_core",
    ":test_support_sync_internal_api",
    "//base",
    "//base/test:run_all_unittests",
    "//google_apis",
    "//google_apis:test_support",
    "//net",
    "//net:test_support",
    "//sql",
    "//sql:test_support",
    "//sync",
    "//sync/protocol",
    "//testing/gmock",
    "//testing/gtest",
    "//third_party/leveldatabase",
    "//third_party/protobuf:protobuf_lite",
    "//third_party/zlib",
  ]

  if (is_android) {
    isolate_file = "sync_unit_tests.isolate"
  }

  if (is_chromeos) {
    # Required by get_session_name_unittest.cc on Chrome OS.
    deps += [ "//chromeos" ]
  }

  if (is_ios) {
    sources -= [ "internal_api/http_bridge_unittest.cc" ]
  }

  defines = [ "SYNC_TEST" ]
}

# GYP version: sync/sync_tests.gypi:test_support_sync_fake_server
static_library("test_support_sync_fake_server") {
  testonly = true
  sources = [
    "test/fake_server/bookmark_entity.cc",
    "test/fake_server/bookmark_entity.h",
    "test/fake_server/bookmark_entity_builder.cc",
    "test/fake_server/bookmark_entity_builder.h",
    "test/fake_server/entity_builder_factory.cc",
    "test/fake_server/entity_builder_factory.h",
    "test/fake_server/fake_server.cc",
    "test/fake_server/fake_server.h",
    "test/fake_server/fake_server_entity.cc",
    "test/fake_server/fake_server_entity.h",
    "test/fake_server/fake_server_http_post_provider.cc",
    "test/fake_server/fake_server_http_post_provider.h",
    "test/fake_server/fake_server_network_resources.cc",
    "test/fake_server/fake_server_network_resources.h",
    "test/fake_server/fake_server_verifier.cc",
    "test/fake_server/fake_server_verifier.h",
    "test/fake_server/permanent_entity.cc",
    "test/fake_server/permanent_entity.h",
    "test/fake_server/sessions_hierarchy.cc",
    "test/fake_server/sessions_hierarchy.h",
    "test/fake_server/tombstone_entity.cc",
    "test/fake_server/tombstone_entity.h",
    "test/fake_server/unique_client_entity.cc",
    "test/fake_server/unique_client_entity.h",
  ]

  deps = [
    "//base",
    "//net",
    "//sync",
    "//testing/gtest",
    "//url",
  ]

  public_deps = [
    "//third_party/protobuf:protobuf_lite",
  ]

  configs += [ "//build/config/compiler:wexit_time_destructors" ]
}

# GYP version: sync/sync_tests.gypi:test_support_sync_testserver
static_library("test_support_sync_testserver") {
  testonly = true
  sources = [
    "test/local_sync_test_server.cc",
    "test/local_sync_test_server.h",
  ]

  configs += [ "//build/config/compiler:wexit_time_destructors" ]

  public_deps = [
    "//base",
    "//net:test_support",
  ]
  deps = [
    ":sync",
    # The sync test server uses Python modules generated by the sync protos.
    #  '../third_party/protobuf/protobuf.gyp:py_proto',  # TODO(GYP)
  ]
}

if (!is_ios) {
  # GYP version: sync/sync_tests.gypi:run_sync_testserver
  executable("run_sync_testserver") {
    testonly = true
    sources = [
      "tools/testserver/run_sync_testserver.cc",
    ]

    deps = [
      ":test_support_sync_testserver",
      "//base",
      "//base/test:test_support",
      "//build/config/sanitizers:deps",
      "//net:test_support",
      "//testing/gtest",
    ]
  }
}

if (is_android) {
  import("//build/config/android/rules.gni")

  # GYP: //sync/sync_tests.gypi:fake_server_jni
  generate_jni("fake_server_jni") {
    testonly = true
    jni_package = "sync/test/fake_server"
    sources = [
      "//chrome/android/sync_shell/javatests/src/org/chromium/chrome/browser/sync/FakeServerHelper.java",
    ]
  }

  _test_support_sync_prepared_protos_dir =
      "$root_gen_dir/test_support_sync_proto_java_prepare/"
  action("test_support_sync_proto_java_prepare") {
    script = "//sync/protocol/prepare_protos_for_java_tests.py"
    inputs = sync_protocol_sources
    outputs = process_file_template(
            sync_protocol_sources,
            [ "$_test_support_sync_prepared_protos_dir/{{source_file_part}}" ])
    args = [
      "--output_dir",
      rebase_path(_test_support_sync_prepared_protos_dir, root_build_dir),
    ]
    args += rebase_path(sync_protocol_sources, root_build_dir)
  }

  # GYP: //sync/sync_tests.gypi:test_support_sync_proto_java
  proto_java_library("test_support_sync_proto_java") {
    proto_path = _test_support_sync_prepared_protos_dir
    sources = get_target_outputs(":test_support_sync_proto_java_prepare")
    deps = [
      ":test_support_sync_proto_java_prepare",
    ]
  }

  # GYP: //sync/sync_tests.gypi:sync_java_test_support
  android_library("sync_java_test_support") {
    testonly = true
    deps = [
      "android:sync_java",
      "//base:base_java",
      "//base:base_java_test_support",
      "//third_party/jsr-305:jsr_305_javalib",
    ]
    DEPRECATED_java_in_dir = "test/android/javatests/src"
  }

  # GYP: //sync/sync_tests.gypi:test_support_sync_fake_server_android
  static_library("test_support_sync_fake_server_android") {
    testonly = true
    sources = [
      "test/fake_server/android/fake_server_helper_android.cc",
      "test/fake_server/android/fake_server_helper_android.h",
    ]
    deps = [
      ":fake_server_jni",
      ":sync_core",
      ":test_support_sync_fake_server",
      "//base",
      "//sync/protocol:protocol",
      "//testing/gtest",
      "//url:url",
    ]
  }
}
