Aby przetestować integrację interfejsu Play Age Signals API (beta) z aplikacją, użyj implementacji
FakeAgeSignalsManager dostępnej w artefakcie sygnałów dotyczących wieku.
Implementacja FakeAgeSignalsManager umożliwia symulowanie działania interfejsu API.
Implementacja FakeAgeSignalsManager jest przeznaczona wyłącznie do testów jednostkowych lub integracyjnych, które mają potwierdzić działanie aplikacji. Aby przetestować integrację, zastąp instancję
AgeSignalsManager instancją FakeAgeSignalsManager.
Poniższy przykład symuluje odpowiedź dla zweryfikowanej osoby dorosłej:
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 */);
Poniższy przykład symuluje odpowiedź dla nadzorowanego użytkownika w wieku od 13 do 17 lat:
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 */);
Poniższy przykład symuluje odpowiedź dla zadeklarowanego użytkownika z niestandardowym przedziałem wiekowym od 13 do 15 lat:
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 */)
Poniższy przykład symuluje odpowiedź dla nadzorowanego użytkownika w wieku od 13 do 17 lat, w przypadku którego oczekuje się zatwierdzenia istotnej zmiany, a żadna wcześniejsza istotna zmiana nie została zatwierdzona:
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 */)
Poniższy przykład symuluje odpowiedź dla nadzorowanego użytkownika w wieku od 13 do 17 lat, w przypadku którego oczekuje się zatwierdzenia istotnej zmiany, a wszystkie istotne zmiany zostały zatwierdzone do 1 lutego 2025 r. włącznie:
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 */);
Poniższy przykład symuluje odrzucenie zatwierdzenia istotnej zmiany w przypadku nadzorowanego użytkownika w wieku od 13 do 17 lat, w przypadku którego wszystkie istotne zmiany zostały zatwierdzone do 1 lutego 2025 r. włącznie:
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 */);
Poniższy przykład symuluje odpowiedź dla nieznanego stanu użytkownika:
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 */);
Poniższy przykład symuluje odpowiedź dla wartości stanu użytkownika 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 */)
Poniższy przykład symuluje odpowiedź z kodem błędu sieci:
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 */);