# Copyright 2025 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/android/rules.gni") import("//third_party/jni_zero/jni_zero.gni") source_set("backend") { sources = [ "android_sms_otp_backend.cc", "android_sms_otp_backend.h", "android_sms_otp_fetch_dispatcher_bridge.cc", "android_sms_otp_fetch_dispatcher_bridge.h", "android_sms_otp_fetch_dispatcher_bridge_interface.h", "android_sms_otp_fetch_receiver_bridge.cc", "android_sms_otp_fetch_receiver_bridge.h", "android_sms_otp_fetch_receiver_bridge_interface.h", "sms_otp_retrieval_api_errors.h", "sms_otp_to_one_time_token_retrieval_error_converter.cc", "sms_otp_to_one_time_token_retrieval_error_converter.h", ] deps = [ ":jni_headers", "//base", "//components/keyed_service/core", "//components/one_time_tokens/core/browser", "//content/public/browser", ] } generate_jni("jni_headers") { visibility = [ ":*", "//chrome/browser", ] sources = [ "java/src/org/chromium/components/one_time_tokens/backend/sms/AndroidSmsOtpFetchDispatcherBridge.java", "java/src/org/chromium/components/one_time_tokens/backend/sms/AndroidSmsOtpFetchReceiverBridge.java", ] } android_library("java") { srcjar_deps = [ ":jni_headers" ] sources = [ "java/src/org/chromium/components/one_time_tokens/backend/sms/AndroidSmsOtpFetchDispatcherBridge.java", "java/src/org/chromium/components/one_time_tokens/backend/sms/AndroidSmsOtpFetchReceiverBridge.java", ] deps = [ "$google_play_services_package:google_play_services_basement_java", "//base:base_java", "//build/android:build_java", "//components/one_time_tokens/android/backend/common:java", "//components/one_time_tokens/android/backend/sms:sms_otp_fetching_interface_java", "//third_party/jni_zero:gendeps_java", "//third_party/jni_zero:jni_zero_java", ] resources_package = "org.chromium.components.one_time_tokens.android.backend.sms" } robolectric_binary("one_time_tokens_junit_tests") { enable_android_resources = false testonly = true sources = [ "java/junit/src/org/chromium/components/one_time_tokens/backend/sms/AndroidSmsOtpFetchDispatcherBridgeTest.java", "java/junit/src/org/chromium/components/one_time_tokens/backend/sms/AndroidSmsOtpFetchReceiverBridgeTest.java", ] deps = [ ":java", ":sms_otp_fetching_interface_java", "$google_play_services_package:google_play_services_basement_java", "//base:base_java", "//base:base_java_test_support", "//base:base_junit_test_support", "//components/one_time_tokens/android/backend/common:java", "//third_party/junit", "//ui/android:ui_java_test_support", ] } android_library("sms_otp_fetching_interface_java") { deps = [ "$google_play_services_package:google_play_services_basement_java", "//base:base_java", "//base:service_loader_java", ] sources = [ "java/src/org/chromium/components/one_time_tokens/backend/sms/AndroidSmsOtpFetcher.java", "java/src/org/chromium/components/one_time_tokens/backend/sms/AndroidSmsOtpFetcherFactory.java", "java/src/org/chromium/components/one_time_tokens/backend/sms/AndroidSmsOtpFetcherFactoryUpstreamImpl.java", ] } source_set("unit_tests") { testonly = true sources = [ "android_sms_otp_backend_unittest.cc", "sms_otp_to_one_time_token_retrieval_error_converter_unittest.cc", ] deps = [ ":backend", "//base/test:test_support", "//components/keyed_service/core", "//components/one_time_tokens/core/browser", "//content/public/browser", ] }