blob: 312827757bfd4cf88ee6d391fd3526f7364488de [file] [log] [blame]
# Copyright 2020 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.
if (is_android) {
import("//build/config/android/config.gni")
import("//build/config/android/rules.gni")
}
source_set("internal") {
sources = [
"config.cc",
"config.h",
"proto_conversions.cc",
"proto_conversions.h",
"store.h",
"tutorial_fetcher.cc",
"tutorial_fetcher.h",
"tutorial_group.cc",
"tutorial_group.h",
"tutorial_manager.h",
"tutorial_manager_impl.cc",
"tutorial_manager_impl.h",
"tutorial_service_impl.cc",
"tutorial_service_impl.h",
"tutorial_store.cc",
"tutorial_store.h",
]
public_deps = [ "//components/image_fetcher/core" ]
deps = [
"//base",
"//chrome/browser/video_tutorials:public",
"//chrome/browser/video_tutorials/proto",
"//components/leveldb_proto",
"//content/public/browser",
]
if (is_android) {
sources += [
"android/tutorial_conversion_bridge.cc",
"android/tutorial_conversion_bridge.h",
"android/video_tutorial_service_bridge.cc",
"android/video_tutorial_service_bridge.h",
]
deps += [ ":jni_headers" ]
}
}
if (is_android) {
android_library("java") {
visibility = [
":*",
"//chrome/android:chrome_all_java",
]
sources = [
"android/java/src/org/chromium/chrome/browser/video_tutorials/PlaybackStateObserver.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/VideoTutorialServiceFactory.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/VideoTutorialUtils.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/bridges/TutorialConversionBridge.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/bridges/VideoTutorialServiceBridge.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/iph/TryNowTrackerImpl.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/iph/VideoIPHCoordinatorImpl.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/iph/VideoIPHProperties.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/iph/VideoIPHView.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/languages/LanguageItemProperties.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/languages/LanguageItemViewHolder.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/languages/LanguagePickerCoordinator.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/languages/LanguagePickerMediator.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/languages/LanguagePickerProperties.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/languages/LanguagePickerView.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/list/TutorialCardProperties.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/list/TutorialCardViewBinder.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/list/TutorialListCoordinatorImpl.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/list/TutorialListMediator.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/player/VideoPlayerCoordinatorImpl.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/player/VideoPlayerMediator.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/player/VideoPlayerProperties.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/player/VideoPlayerURLBuilder.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/player/VideoPlayerView.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/player/VideoPlayerViewBinder.java",
]
deps = [
":java_resources",
"//base:base_java",
"//chrome/browser/flags:java",
"//chrome/browser/image_fetcher:java",
"//chrome/browser/profiles/android:java",
"//chrome/browser/video_tutorials:java",
"//components/browser_ui/widget/android:java",
"//components/embedder_support/android:content_view_java",
"//components/embedder_support/android:web_contents_delegate_java",
"//components/thin_webview:factory_java",
"//components/thin_webview:java",
"//content/public/android:content_java",
"//services/media_session/public/cpp/android:media_session_java",
"//third_party/androidx:androidx_annotation_annotation_java",
"//third_party/androidx:androidx_annotation_annotation_java",
"//third_party/androidx:androidx_core_core_java",
"//third_party/androidx:androidx_recyclerview_recyclerview_java",
"//third_party/gif_player:gif_player_java",
"//ui/android:ui_java",
]
resources_package = "org.chromium.chrome.browser.video_tutorials"
annotation_processor_deps = [ "//base/android/jni_generator:jni_processor" ]
}
android_resources("java_resources") {
sources = [
"android/java/res/drawable/circular_media_button_background.xml",
"android/java/res/layout/language_card.xml",
"android/java/res/layout/language_picker.xml",
"android/java/res/layout/video_player_controls.xml",
"android/java/res/layout/video_player_loading.xml",
"android/java/res/layout/video_tutorial_large_card.xml",
]
deps = [
"//chrome/browser/ui/android/strings:ui_strings_grd",
"//chrome/browser/video_tutorials:java_resources",
"//components/browser_ui/widget/android:java_resources",
"//ui/android:ui_java_resources",
]
}
generate_jni("jni_headers") {
visibility = [
":*",
"//chrome/browser",
]
sources = [
"android/java/src/org/chromium/chrome/browser/video_tutorials/VideoTutorialServiceFactory.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/bridges/TutorialConversionBridge.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/bridges/VideoTutorialServiceBridge.java",
]
}
java_library("junit") {
# Skip platform checks since Robolectric depends on requires_android targets.
bypass_platform_checks = true
testonly = true
sources = [
"android/java/src/org/chromium/chrome/browser/video_tutorials/PlaybackStateObserverUnitTest.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/languages/LanguagePickerMediatorUnitTest.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/metrics/VideoTutorialMetricsUnitTest.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/player/VideoPlayerMediatorUnitTest.java",
]
deps = [
":java",
"//base:base_java",
"//base:base_junit_test_support",
"//chrome/browser/video_tutorials:java",
"//chrome/browser/video_tutorials:test_support_java",
"//content/public/android:content_java",
"//services/media_session/public/cpp/android:media_session_java",
"//third_party/android_deps:robolectric_all_java",
"//third_party/hamcrest:hamcrest_core_java",
"//third_party/junit",
"//third_party/mockito:mockito_java",
"//ui/android:ui_java",
]
}
android_library("javatests") {
testonly = true
sources = [
"android/java/src/org/chromium/chrome/browser/video_tutorials/iph/VideoIPHTest.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/languages/LanguagePickerTest.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/list/TutorialListCoordinatorTest.java",
"android/java/src/org/chromium/chrome/browser/video_tutorials/player/VideoPlayerViewBinderTest.java",
]
deps = [
":java",
"//base:base_java",
"//base:base_java_test_support",
"//chrome/browser/flags:java",
"//chrome/browser/video_tutorials:java",
"//chrome/browser/video_tutorials:test_support_java",
"//chrome/test/android:chrome_java_test_support",
"//components/thin_webview:java",
"//content/public/test/android:content_java_test_support",
"//third_party/android_deps:espresso_java",
"//third_party/android_support_test_runner:rules_java",
"//third_party/android_support_test_runner:runner_java",
"//third_party/androidx:androidx_annotation_annotation_java",
"//third_party/androidx:androidx_recyclerview_recyclerview_java",
"//third_party/androidx:androidx_test_runner_java",
"//third_party/gif_player:gif_player_java",
"//third_party/hamcrest:hamcrest_core_java",
"//third_party/junit",
"//third_party/mockito:mockito_java",
"//ui/android:ui_java",
"//ui/android:ui_java_test_support",
]
}
}
source_set("unit_tests") {
testonly = true
sources = [
"config_unittest.cc",
"proto_conversions_unittest.cc",
"tutorial_fetcher_unittest.cc",
"tutorial_group_unittest.cc",
"tutorial_manager_impl_unittest.cc",
"tutorial_store_unittest.cc",
]
deps = [
":internal",
"//base",
"//base/test:test_support",
"//chrome/browser/video_tutorials:public",
"//chrome/browser/video_tutorials/proto",
"//chrome/browser/video_tutorials/test:test_lib",
"//components/leveldb_proto",
"//components/leveldb_proto:test_support",
"//components/prefs:test_support",
"//services/network:test_support",
"//testing/gmock",
"//testing/gtest",
]
}