আপনার Play Age Signals API (বিটা) ইন্টিগ্রেশন পরীক্ষা করুন

আপনার অ্যাপের সাথে প্লে এজ সিগন্যালস এপিআই (বিটা) ইন্টিগ্রেশন পরীক্ষা করতে, এজ সিগন্যালস আর্টিফ্যাক্টে উপলব্ধ FakeAgeSignalsManager ইমপ্লিমেন্টেশনটি ব্যবহার করুন। FakeAgeSignalsManager ইমপ্লিমেন্টেশনটি আপনাকে এপিআই-এর আচরণ অনুকরণ করতে দেয়।

FakeAgeSignalsManager শুধুমাত্র আপনার অ্যাপের আচরণ যাচাই করার জন্য ইউনিট বা ইন্টিগ্রেশন টেস্টের উদ্দেশ্যে তৈরি। আপনার ইন্টিগ্রেশন পরীক্ষা করতে, আপনার AgeSignalsManager ইনস্ট্যান্সটিকে একটি FakeAgeSignalsManager ইনস্ট্যান্স দিয়ে প্রতিস্থাপন করুন।

নিম্নলিখিত উদাহরণটি একজন যাচাইকৃত প্রাপ্তবয়স্কের প্রতিক্রিয়া অনুকরণ করে:

কোটলিন

val fakeVerifiedUser =
    AgeSignalsResult.builder()
        .setUserStatus(AgeSignalsVerificationStatus.VERIFIED)
        .setAgeLower(18)
        .build()
val manager = FakeAgeSignalsManager()
manager.setNextAgeSignalsResult(fakeVerifiedUser)
manager.checkAgeSignals(AgeSignalsRequest.builder().build())
    .addOnSuccessListener { /* handle success case */ }
    .addOnFailureListener { /* handle failure case */ }

জাভা

AgeSignalsResult fakeVerifiedUser =
    AgeSignalsResult.builder()
        .setUserStatus(AgeSignalsVerificationStatus.VERIFIED)
        .build();
FakeAgeSignalsManager manager = new FakeAgeSignalsManager();
manager.setNextAgeSignalsResult(fakeVerifiedUser);
manager.checkAgeSignals(AgeSignalsRequest.builder().build())
    .addOnSuccessListener(/* handle success case */)
    .addOnFailureListener(/* handle failure case */);

নিম্নলিখিত উদাহরণটি ১৩ থেকে ১৭ বছর বয়সী একজন তত্ত্বাবধানাধীন ব্যবহারকারীর প্রতিক্রিয়া অনুকরণ করে:

কোটলিন

val fakeSupervisedUser =
    AgeSignalsResult.builder()
        .setUserStatus(AgeSignalsVerificationStatus.SUPERVISED)
        .setAgeLower(13)
        .setAgeUpper(17)
        .setInstallId("fake_install_id")
        .build()
val manager = FakeAgeSignalsManager()
manager.setNextAgeSignalsResult(fakeSupervisedUser)
manager.checkAgeSignals(AgeSignalsRequest.builder().build())
    .addOnSuccessListener { /* handle success case */ }
    .addOnFailureListener { /* handle failure case */ }

জাভা

AgeSignalsResult fakeSupervisedUser =
    AgeSignalsResult.builder()
        .setUserStatus(AgeSignalsVerificationStatus.SUPERVISED)
        .setAgeLower(13)
        .setAgeUpper(17)
        .setInstallId("fake_install_id")
        .build();
FakeAgeSignalsManager manager = new FakeAgeSignalsManager();
manager.setNextAgeSignalsResult(fakeSupervisedUser);
manager.checkAgeSignals(AgeSignalsRequest.builder().build())
    .addOnSuccessListener(/* handle success case */)
    .addOnFailureListener(/* handle failure case */);

নিম্নলিখিত উদাহরণটি ১৩ থেকে ১৫ বছরের একটি নির্দিষ্ট বয়সসীমা সহ একজন ঘোষিত ব্যবহারকারীর প্রতিক্রিয়া অনুকরণ করে:

কোটলিন

val fakeDeclaredUserWithCustomAgeRange =
    AgeSignalsResult.builder()
        .setUserStatus(AgeSignalsVerificationStatus.DECLARED)
        .setAgeLower(13)
        .setAgeUpper(15)
        .setInstallId("fake_install_id")
        .build()
val manager = FakeAgeSignalsManager()
manager.setNextAgeSignalsResult(fakeDeclaredUserWithCustomAgeRange)
manager.checkAgeSignals(AgeSignalsRequest.builder().build())
    .addOnSuccessListener { /* handle success case */ }
    .addOnFailureListener { /* handle failure case */ }

জাভা

AgeSignalsResult fakeDeclaredUserWithCustomAgeRange =
    AgeSignalsResult.builder()
        .setUserStatus(AgeSignalsVerificationStatus.DECLARED)
        .setAgeLower(13)
        .setAgeUpper(15)
        .setInstallId("fake_install_id")
        .build();
FakeAgeSignalsManager manager = new FakeAgeSignalsManager();
manager.setNextAgeSignalsResult(fakeDeclaredUserWithCustomAgeRange);
manager
    .checkAgeSignals(AgeSignalsRequest.builder().build())
    .addOnSuccessListener(/* handle success case */)
    .addOnFailureListener(/* handle failure case */)

নিম্নলিখিত উদাহরণটি ১৩ থেকে ১৭ বছর বয়সী একজন তত্ত্বাবধানাধীন ব্যবহারকারীর জন্য একটি বিচারাধীন গুরুত্বপূর্ণ পরিবর্তন অনুমোদনের প্রতিক্রিয়া অনুকরণ করে, যার পূর্বে কোনো গুরুত্বপূর্ণ পরিবর্তন অনুমোদিত হয়নি:

কোটলিন

val fakeSupervisedApprovalPendingUser =
    AgeSignalsResult.builder()
        .setUserStatus(AgeSignalsVerificationStatus.SUPERVISED_APPROVAL_PENDING)
        .setAgeLower(13)
        .setAgeUpper(17)
        .setInstallId("fake_install_id")
        .build()
val manager = FakeAgeSignalsManager()
manager.setNextAgeSignalsResult(fakeSupervisedApprovalPendingUser)
manager.checkAgeSignals(AgeSignalsRequest.builder().build())
    .addOnSuccessListener { /* handle success case */ }
    .addOnFailureListener { /* handle failure case */ }

জাভা

AgeSignalsResult fakeSupervisedApprovalPendingUser =
    AgeSignalsResult.builder()
        .setUserStatus(AgeSignalsVerificationStatus.SUPERVISED_APPROVAL_PENDING)
        .setAgeLower(13)
        .setAgeUpper(17)
        .setInstallId("fake_install_id")
        .build();
FakeAgeSignalsManager manager = new FakeAgeSignalsManager();
manager.setNextAgeSignalsResult(fakeSupervisedApprovalPendingUser);
manager
    .checkAgeSignals(AgeSignalsRequest.builder().build())
    .addOnSuccessListener(/* handle success case */)
    .addOnFailureListener(/* handle failure case */)

নিম্নলিখিত উদাহরণটি ১৩ থেকে ১৭ বছর বয়সী একজন তত্ত্বাবধানাধীন ব্যবহারকারীর জন্য একটি বিচারাধীন গুরুত্বপূর্ণ পরিবর্তন অনুমোদনের প্রতিক্রিয়া অনুকরণ করে, যেখানে ২০২৫-০২-০১ তারিখ থেকে কার্যকর হওয়া গুরুত্বপূর্ণ পরিবর্তনটি সহ পূর্ববর্তী সমস্ত গুরুত্বপূর্ণ পরিবর্তন অনুমোদিত হয়েছে:

কোটলিন

val fakeSupervisedApprovalPendingUser =
    AgeSignalsResult.builder()
        .setUserStatus(AgeSignalsVerificationStatus.SUPERVISED_APPROVAL_PENDING)
        .setAgeLower(13)
        .setAgeUpper(17)
        .setMostRecentApprovalDate(
          Date.from(LocalDate.of(2025, 2, 1).atStartOfDay(ZoneOffset.UTC).toInstant())
        )
        .setInstallId("fake_install_id")
        .build()
val manager = FakeAgeSignalsManager()
manager.setNextAgeSignalsResult(fakeSupervisedApprovalPendingUser)
manager.checkAgeSignals(AgeSignalsRequest.builder().build())
    .addOnSuccessListener { /* handle success case */ }
    .addOnFailureListener { /* handle failure case */ }

জাভা

AgeSignalsResult fakeSupervisedApprovalPendingUser =
    AgeSignalsResult.builder()
        .setUserStatus(AgeSignalsVerificationStatus.SUPERVISED_APPROVAL_PENDING)
        .setAgeLower(13)
        .setAgeUpper(17)
        .setMostRecentApprovalDate(
          Date.from(LocalDate.of(2025, 2, 1).atStartOfDay(ZoneOffset.UTC).toInstant()))
        .setInstallId("fake_install_id")
        .build();
FakeAgeSignalsManager manager = new FakeAgeSignalsManager();
manager.setNextAgeSignalsResult(fakeSupervisedApprovalPendingUser);
manager.checkAgeSignals(AgeSignalsRequest.builder().build())
    .addOnSuccessListener(/* handle success case */)
    .addOnFailureListener(/* handle failure case */);

নিম্নলিখিত উদাহরণটি ১৩ থেকে ১৭ বছর বয়সী একজন তত্ত্বাবধানাধীন ব্যবহারকারীর জন্য একটি গুরুত্বপূর্ণ পরিবর্তনের অনুমোদন প্রত্যাখ্যানের ঘটনাকে অনুকরণ করে, যেখানে ২০২৫-০২-০১ তারিখ থেকে কার্যকর হওয়া গুরুত্বপূর্ণ পরিবর্তনটি সহ পূর্ববর্তী সমস্ত গুরুত্বপূর্ণ পরিবর্তন অনুমোদিত হয়েছে:

কোটলিন

val fakeSupervisedApprovalDeniedUser =
    AgeSignalsResult.builder()
        .setUserStatus(AgeSignalsVerificationStatus.SUPERVISED_APPROVAL_DENIED)
        .setAgeLower(13)
        .setAgeUpper(17)
        .setMostRecentApprovalDate(
          Date.from(LocalDate.of(2025, 2, 1).atStartOfDay(ZoneOffset.UTC).toInstant())
        )
        .setInstallId("fake_install_id")
        .build()
val manager = FakeAgeSignalsManager()
manager.setNextAgeSignalsResult(fakeSupervisedApprovalDeniedUser)
manager.checkAgeSignals(AgeSignalsRequest.builder().build())
    .addOnSuccessListener { /* handle success case */ }
    .addOnFailureListener { /* handle failure case */ }

জাভা

AgeSignalsResult fakeSupervisedApprovalDeniedUser =
    AgeSignalsResult.builder()
        .setUserStatus(AgeSignalsVerificationStatus.SUPERVISED_APPROVAL_DENIED)
        .setAgeLower(13)
        .setAgeUpper(17)
        .setMostRecentApprovalDate(
          Date.from(LocalDate.of(2025, 2, 1).atStartOfDay(ZoneOffset.UTC).toInstant()))
        .setInstallId("fake_install_id")
        .build();
FakeAgeSignalsManager manager = new FakeAgeSignalsManager();
manager.setNextAgeSignalsResult(fakeSupervisedApprovalDeniedUser);
manager.checkAgeSignals(AgeSignalsRequest.builder().build())
    .addOnSuccessListener(/* handle success case */)
    .addOnFailureListener(/* handle failure case */);

নিম্নলিখিত উদাহরণটি একজন অজানা ব্যবহারকারীর অবস্থার প্রতিক্রিয়া অনুকরণ করে:

কোটলিন

val fakeUnknownUser =
    AgeSignalsResult.builder().setUserStatus(AgeSignalsVerificationStatus.UNKNOWN).build()
val manager = FakeAgeSignalsManager()
manager.setNextAgeSignalsResult(fakeUnknownUser)
manager.checkAgeSignals(AgeSignalsRequest.builder().build())
    .addOnSuccessListener { /* handle success case */ }
    .addOnFailureListener { /* handle failure case */ }

জাভা

AgeSignalsResult fakeUnknownUser =
    AgeSignalsResult.builder().setUserStatus(AgeSignalsVerificationStatus.UNKNOWN).build();
FakeAgeSignalsManager manager = new FakeAgeSignalsManager();
manager.setNextAgeSignalsResult(fakeUnknownUser);
manager.checkAgeSignals(AgeSignalsRequest.builder().build())
    .addOnSuccessListener(/* handle success case */)
    .addOnFailureListener(/* handle failure case */);

নিম্নলিখিত উদাহরণটি ব্যবহারকারীর স্ট্যাটাস মান নাল null হলে তার প্রতিক্রিয়া অনুকরণ করে:

কোটলিন

val fakeNullUserStatus =
    AgeSignalsResult.builder()
        .setUserStatus(null)
        .build()
val manager = FakeAgeSignalsManager()
manager.setNextAgeSignalsResult(fakeNullUserStatus)
manager.checkAgeSignals(AgeSignalsRequest.builder().build())
    .addOnSuccessListener { /* handle success case */ }
    .addOnFailureListener { /* handle failure case */ }

জাভা

AgeSignalsResult fakeNullUserStatus =
    AgeSignalsResult.builder()
        .setUserStatus(null)
        .build();
FakeAgeSignalsManager manager = new FakeAgeSignalsManager();
manager.setNextAgeSignalsResult(fakeNullUserStatus);
manager
    .checkAgeSignals(AgeSignalsRequest.builder().build())
    .addOnSuccessListener(/* handle success case */)
    .addOnFailureListener(/* handle failure case */)

নিম্নলিখিত উদাহরণটি একটি নেটওয়ার্ক ত্রুটি কোড দিয়ে প্রতিক্রিয়াটি অনুকরণ করে:

কোটলিন

val manager = FakeAgeSignalsManager()
manager.setNextAgeSignalsException(
  AgeSignalsException(AgeSignalsErrorCode.NETWORK_ERROR)
)
manager.checkAgeSignals(AgeSignalsRequest.builder().build())
    .addOnSuccessListener { /* handle success case */ }
    .addOnFailureListener { /* handle failure case */ }

জাভা

FakeAgeSignalsManager manager = new FakeAgeSignalsManager();
manager.setNextAgeSignalsException(
    new AgeSignalsException(AgeSignalsErrorCode.NETWORK_ERROR));
manager.checkAgeSignals(AgeSignalsRequest.builder().build())
    .addOnSuccessListener(/* handle success case */)
    .addOnFailureListener(/* handle failure case */);