# Copyright 2015 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//build/config/chromeos/ui_mode.gni")
component("prefs") {
sources = [
"command_line_pref_store.cc",
"command_line_pref_store.h",
"default_pref_store.cc",
"default_pref_store.h",
"in_memory_pref_store.cc",
"in_memory_pref_store.h",
"json_pref_store.cc",
"json_pref_store.h",
"overlay_user_pref_store.cc",
"overlay_user_pref_store.h",
"persistent_pref_store.cc",
"persistent_pref_store.h",
"pref_change_registrar.cc",
"pref_change_registrar.h",
"pref_filter.h",
"pref_member.cc",
"pref_member.h",
"pref_name_set.h",
"pref_notifier.h",
"pref_notifier_impl.cc",
"pref_notifier_impl.h",
"pref_observer.h",
"pref_registry.cc",
"pref_registry.h",
"pref_registry_simple.cc",
"pref_registry_simple.h",
"pref_service.cc",
"pref_service.h",
"pref_service_factory.cc",
"pref_service_factory.h",
"pref_store.cc",
"pref_store.h",
"pref_value_map.cc",
"pref_value_map.h",
"pref_value_store.cc",
"pref_value_store.h",
"prefs_export.h",
"scoped_user_pref_update.cc",
"scoped_user_pref_update.h",
"segregated_pref_store.cc",
"segregated_pref_store.h",
"transparent_unordered_string_map.h",
"value_map_pref_store.cc",
"value_map_pref_store.h",
"wrap_with_prefix_pref_store.cc",
"wrap_with_prefix_pref_store.h",
"writeable_pref_store.cc",
"writeable_pref_store.h",
]
defines = [ "COMPONENTS_PREFS_IMPLEMENTATION" ]
deps = [ "//build:chromeos_buildflags" ]
public_deps = [ "//base" ]
if (is_android) {
sources += [
"android/pref_service_android.cc",
"android/pref_service_android.h",
]
deps += [ "android:jni_headers" ]
}
}
static_library("test_support") {
testonly = true
sources = [
"mock_pref_change_callback.cc",
"mock_pref_change_callback.h",
"pref_store_observer_mock.cc",
"pref_store_observer_mock.h",
"pref_test_utils.cc",
"pref_test_utils.h",
"testing_pref_service.cc",
"testing_pref_service.h",
"testing_pref_store.cc",
"testing_pref_store.h",
]
public_deps = [ ":prefs" ]
deps = [
"//base",
"//base/test:test_support",
"//testing/gmock",
"//testing/gtest",
]
}
source_set("unit_tests") {
testonly = true
sources = [
"default_pref_store_unittest.cc",
"in_memory_pref_store_unittest.cc",
"json_pref_store_unittest.cc",
"overlay_user_pref_store_unittest.cc",
"persistent_pref_store_unittest.cc",
"persistent_pref_store_unittest.h",
"pref_change_registrar_unittest.cc",
"pref_member_unittest.cc",
"pref_notifier_impl_unittest.cc",
"pref_service_unittest.cc",
"pref_value_map_unittest.cc",
"pref_value_store_unittest.cc",
"scoped_user_pref_update_unittest.cc",
"segregated_pref_store_unittest.cc",
"wrap_with_prefix_pref_store_unittest.cc",
]
deps = [
":test_support",
"//base",
"//base/test:test_support",
"//testing/gmock",
"//testing/gtest",
]
}