blob: b1007df9643094ddd034abbddd4341ac0c126f0e [file] [log] [blame]
# Copyright 2016 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/ui.gni")
import("//services/catalog/public/tools/catalog.gni")
import("//services/service_manager/public/tools/test/service_test.gni")
import("//testing/test.gni")
# One Big Target for services to register their unit test sources. This exists
# to avoid having to maintain a separate test binary for every service.
#
# To add tests for a new service, please define a "tests" source_set in the
# service subdirectory and add it as a dependency here. If your unit tests
# use the ServiceTest framework, you must also include corresponding catalog
# entries in the "service_unittests_catalog" target below.
service_test("service_unittests") {
deps = [
"//services/data_decoder:tests",
"//services/device:tests",
"//services/identity:tests",
"//services/preferences:tests",
"//services/resource_coordinator:tests",
"//services/shape_detection:tests",
]
if (use_aura) {
deps += [
"//services/ui/clipboard:tests",
"//services/ui/gpu:tests",
"//services/ui/ime:tests",
"//services/ui/input_devices:tests",
"//services/ui/public/cpp/tests",
"//services/ui/public/interfaces:tests",
]
if (is_linux && !is_chromeos) {
deps += [ "//services/ui/demo:tests" ]
}
}
if (is_android) {
deps += [
"//services/device:java",
# Some tests need to initialize V8.
"//v8:v8_external_startup_data_assets",
]
} else {
# NOTE: We do not currently support standalone service binaries on Android,
# so any tests which use the ServiceTest framework to connect to standalone
# services must be added here.
deps += [ "//services/video_capture:tests" ]
}
if (use_ozone && is_chromeos) {
deps += [ "//services/ui/display:tests" ]
}
test_runner = "//services/test:run_all_service_tests"
catalog = ":service_unittests_catalog"
}
catalog("service_unittests_catalog") {
testonly = true
catalog_deps = [
"//services/device:tests_catalog",
"//services/identity:tests_catalog",
"//services/preferences:tests_catalog",
"//services/resource_coordinator:tests_catalog",
"//services/video_capture:tests_catalog",
]
if (use_aura) {
catalog_deps += [
"//services/ui/clipboard:tests_catalog",
"//services/ui/gpu:tests_catalog",
"//services/ui/ime:tests_catalog",
]
if (is_linux && !is_chromeos) {
catalog_deps += [ "//services/ui/demo:tests_catalog" ]
}
}
}
if (is_android) {
junit_binary("service_junit_tests") {
java_files = [
"device/generic_sensor/android/junit/src/org/chromium/device/sensors/PlatformSensorAndProviderTest.java",
"device/nfc/android/junit/src/org/chromium/device/nfc/NFCTest.java",
"shape_detection/android/junit/src/org/chromium/shape_detection/SharedBufferUtilsTest.java",
]
deps = [
"$google_play_services_package:google_play_services_base_java",
"$google_play_services_package:google_play_services_basement_java",
"$google_play_services_package:google_play_services_vision_common_java",
"$google_play_services_package:google_play_services_vision_java",
"//base:base_java",
"//base:base_java_test_support",
"//device/generic_sensor:java",
"//device/generic_sensor/public/interfaces:interfaces_java",
"//mojo/public/java:bindings_java",
"//mojo/public/java:system_java",
"//services/device/nfc/android:java",
"//services/device/public/interfaces:interfaces_java",
"//services/device/public/java:nfc_java",
"//services/shape_detection:shape_detection_java",
"//third_party/android_tools:android_support_annotations_java",
]
}
}