アプリとの Play Age Signals API(ベータ版)のインテグレーションをテストするには、年齢シグナル アーティファクトで利用可能な
FakeAgeSignalsManager 実装を使用します。
FakeAgeSignalsManager 実装を使用すると、API の動作をシミュレートできます。
FakeAgeSignalsManager は、アプリの動作を確認するための単体テストまたは統合テストでのみ使用することを目的としています。インテグレーションをテストするには、
AgeSignalsManagerインスタンスをFakeAgeSignalsManagerインスタンスに置き換えます。
次の例では、確認済みの成人ユーザーのレスポンスをシミュレートしています。
Kotlin
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 */ }
Java
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 */);
次の例では、13 ~ 17 歳の管理対象ユーザーのレスポンスをシミュレートしています。
Kotlin
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 */ }
Java
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 */);
次の例では、カスタム 年齢範囲が設定された申告済みユーザーのレスポンスをシミュレートしています。
Kotlin
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 */ }
Java
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 */)
次の例では、13 ~ 17 歳の管理対象ユーザーで、以前に承認された大幅な変更がない場合に、大幅な変更の承認が保留中のレスポンスをシミュレートしています。
Kotlin
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 */ }
Java
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 */)
次の例では、13 ~ 17 歳の管理対象ユーザーで、2025 年 2 月 1 日から有効な大幅な変更を含め、それまでの大幅な変更がすべて承認されている場合に、大幅な変更 承認が保留中のレスポンスをシミュレートしています。
Kotlin
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 */ }
Java
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 */);
次の例では、13 ~ 17 歳の管理対象ユーザーで、2025 年 2 月 1 日から有効な大幅な変更を含め、それまでの大幅な変更がすべて承認されている場合に、大幅な変更の承認が拒否されたレスポンスをシミュレートしています。
Kotlin
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 */ }
Java
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 */);
次の例では、不明なユーザー ステータスのレスポンスをシミュレートしています。
Kotlin
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 */ }
Java
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 ユーザー ステータス値のレスポンスをシミュレートしています。
Kotlin
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 */ }
Java
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 */)
次の例では、ネットワーク エラーコードを含むレスポンスをシミュレートしています。
Kotlin
val manager = FakeAgeSignalsManager() manager.setNextAgeSignalsException( AgeSignalsException(AgeSignalsErrorCode.NETWORK_ERROR) ) manager.checkAgeSignals(AgeSignalsRequest.builder().build()) .addOnSuccessListener { /* handle success case */ } .addOnFailureListener { /* handle failure case */ }
Java
FakeAgeSignalsManager manager = new FakeAgeSignalsManager(); manager.setNextAgeSignalsException( new AgeSignalsException(AgeSignalsErrorCode.NETWORK_ERROR)); manager.checkAgeSignals(AgeSignalsRequest.builder().build()) .addOnSuccessListener(/* handle success case */) .addOnFailureListener(/* handle failure case */);