@@ -141,13 +141,12 @@ public void testDeleteNonExistingUser() throws Exception {
141
141
@ Test
142
142
public void testCreateUserWithParams () throws Exception {
143
143
RandomUser randomUser = RandomUser .create ();
144
- String randomPhoneNumber = randomPhoneNumber ();
145
144
try {
146
- UserRecord user = createUser (randomUser .uid , randomPhoneNumber , randomUser .email );
145
+ UserRecord user = createUser (randomUser .uid , randomUser . phone , randomUser .email );
147
146
assertEquals (randomUser .uid , user .getUid ());
148
147
assertEquals ("Random User" , user .getDisplayName ());
149
148
assertEquals (randomUser .email , user .getEmail ());
150
- assertEquals (randomPhoneNumber , user .getPhoneNumber ());
149
+ assertEquals (randomUser . phone , user .getPhoneNumber ());
151
150
assertEquals ("https://example.com/photo.png" , user .getPhotoUrl ());
152
151
assertTrue (user .isEmailVerified ());
153
152
assertFalse (user .isDisabled ());
@@ -169,24 +168,22 @@ public void testCreateUserWithParams() throws Exception {
169
168
@ Test
170
169
public void testLookupUserByPhone () throws Exception {
171
170
RandomUser randomUser1 = RandomUser .create ();
172
- String phoneNumber1 = null ;
173
171
RandomUser randomUser2 = RandomUser .create ();
174
- String randomPhoneNumber2 = randomPhoneNumber ();
175
172
RandomUser randomUser3 = RandomUser .create ();
176
- String randomPhoneNumber3 = randomPhoneNumber ();
177
173
try {
178
174
UserRecord user1 = createUser (
179
175
randomUser1 .uid , /* phoneNumber= */ null , randomUser1 .email );
180
176
UserRecord user2 = createUser (
181
- randomUser2 .uid , randomPhoneNumber2 , randomUser2 .email );
177
+ randomUser2 .uid , randomUser2 . phone , randomUser2 .email );
182
178
UserImportResult user3 = importUser (
183
- randomUser3 .uid , randomPhoneNumber3 , randomUser3 .email , "google.com" );
179
+ randomUser3 .uid , randomUser3 .phone , randomUser3 .email ,
180
+ "google.com" , randomUser3 .uid + "_google.com" );
184
181
185
- UserRecord lookedUpRecord = auth .getUserByPhoneNumberAsync (randomPhoneNumber2 ).get ();
186
- assertEquals (lookedUpRecord .getUid (), randomUser2 . uid );
182
+ UserRecord lookedUpRecord = auth .getUserByPhoneNumberAsync (randomUser2 . phone ).get ();
183
+ assertEquals (randomUser2 . uid , lookedUpRecord .getUid ());
187
184
188
- lookedUpRecord = auth .getUserByPhoneNumberAsync (randomPhoneNumber3 ).get ();
189
- assertEquals (lookedUpRecord .getUid (), randomUser3 . uid );
185
+ lookedUpRecord = auth .getUserByPhoneNumberAsync (randomUser3 . phone ).get ();
186
+ assertEquals (randomUser3 . uid , lookedUpRecord .getUid ());
190
187
} finally {
191
188
auth .deleteUserAsync (randomUser1 .uid ).get ();
192
189
auth .deleteUserAsync (randomUser2 .uid ).get ();
@@ -197,22 +194,20 @@ public void testLookupUserByPhone() throws Exception {
197
194
@ Test
198
195
public void testLookupUserByFederatedId () throws Exception {
199
196
RandomUser randomUser1 = RandomUser .create ();
200
- String phoneNumber1 = null ;
201
197
RandomUser randomUser2 = RandomUser .create ();
202
- String randomPhoneNumber2 = randomPhoneNumber ();
203
198
RandomUser randomUser3 = RandomUser .create ();
204
- String randomPhoneNumber3 = randomPhoneNumber ();
205
199
try {
206
200
UserRecord user1 = createUser (
207
201
randomUser1 .uid , /* phoneNumber= */ null , randomUser1 .email );
208
202
UserRecord user2 = createUser (
209
- randomUser2 .uid , randomPhoneNumber2 , randomUser2 .email );
203
+ randomUser2 .uid , randomUser2 . phone , randomUser2 .email );
210
204
UserImportResult user3 = importUser (
211
- randomUser3 .uid , randomPhoneNumber3 , randomUser3 .email , "google.com" );
205
+ randomUser3 .uid , randomUser3 .phone , randomUser3 .email ,
206
+ "google.com" , randomUser3 .uid + "_google.com" );
212
207
213
208
UserRecord lookedUpRecord = auth .getUserByFederatedIdAsync (
214
209
randomUser3 .uid + "_google.com" , "google.com" ).get ();
215
- assertEquals (lookedUpRecord .getUid (), randomUser3 . uid );
210
+ assertEquals (randomUser3 . uid , lookedUpRecord .getUid ());
216
211
assertEquals (2 , lookedUpRecord .getProviderData ().length );
217
212
List <String > providers = new ArrayList <>();
218
213
for (UserInfo provider : lookedUpRecord .getProviderData ()) {
@@ -224,10 +219,9 @@ public void testLookupUserByFederatedId() throws Exception {
224
219
try {
225
220
// Verify that lookup by federated identifier does not accept "phone".
226
221
lookedUpRecord = auth .getUserByFederatedIdAsync (
227
- randomPhoneNumber3 , "phone" ).get ();
222
+ randomUser3 . phone , "phone" ).get ();
228
223
fail ("No error thrown for non-federated provider" );
229
- } catch (IllegalArgumentException ignored ) {
230
- // expected
224
+ } catch (IllegalArgumentException expected ) {
231
225
}
232
226
} finally {
233
227
auth .deleteUserAsync (randomUser1 .uid ).get ();
@@ -258,19 +252,18 @@ public void testUserLifecycle() throws Exception {
258
252
259
253
// Update user
260
254
RandomUser randomUser = RandomUser .create ();
261
- String phone = randomPhoneNumber ();
262
255
UpdateRequest request = userRecord .updateRequest ()
263
256
.setDisplayName ("Updated Name" )
264
257
.setEmail (randomUser .email )
265
- .setPhoneNumber (phone )
258
+ .setPhoneNumber (randomUser . phone )
266
259
.setPhotoUrl ("https://example.com/photo.png" )
267
260
.setEmailVerified (true )
268
261
.setPassword ("secret" );
269
262
userRecord = auth .updateUserAsync (request ).get ();
270
263
assertEquals (uid , userRecord .getUid ());
271
264
assertEquals ("Updated Name" , userRecord .getDisplayName ());
272
265
assertEquals (randomUser .email , userRecord .getEmail ());
273
- assertEquals (phone , userRecord .getPhoneNumber ());
266
+ assertEquals (randomUser . phone , userRecord .getPhoneNumber ());
274
267
assertEquals ("https://example.com/photo.png" , userRecord .getPhotoUrl ());
275
268
assertTrue (userRecord .isEmailVerified ());
276
269
assertFalse (userRecord .isDisabled ());
@@ -656,7 +649,6 @@ private UserRecord createUser(
656
649
String uid ,
657
650
@ Nullable String phoneNumber ,
658
651
@ Nullable String email ) throws Exception {
659
- RandomUser randomUser = RandomUser .create ();
660
652
CreateRequest user = new CreateRequest ()
661
653
.setUid (uid )
662
654
.setDisplayName ("Random User" )
@@ -676,7 +668,8 @@ private UserImportResult importUser(
676
668
String uid ,
677
669
@ Nullable String phoneNumber ,
678
670
@ Nullable String email ,
679
- String providerId ) throws Exception {
671
+ String providerId ,
672
+ String providerUid ) throws Exception {
680
673
ImportUserRecord .Builder builder = ImportUserRecord .builder ()
681
674
.setUid (uid )
682
675
.setDisabled (false )
@@ -685,7 +678,7 @@ private UserImportResult importUser(
685
678
.addUserProvider (
686
679
UserProvider .builder ()
687
680
.setProviderId (providerId )
688
- .setUid (uid + "_" + providerId )
681
+ .setUid (providerUid )
689
682
.build ());
690
683
if (phoneNumber != null ) {
691
684
builder .setPhoneNumber (phoneNumber );
@@ -713,15 +706,6 @@ private Map<String, String> parseLinkParameters(String link) throws Exception {
713
706
return result ;
714
707
}
715
708
716
- private String randomPhoneNumber () {
717
- Random random = new Random ();
718
- StringBuilder builder = new StringBuilder ("+1" );
719
- for (int i = 0 ; i < 10 ; i ++) {
720
- builder .append (random .nextInt (10 ));
721
- }
722
- return builder .toString ();
723
- }
724
-
725
709
private String signInWithCustomToken (String customToken ) throws IOException {
726
710
GenericUrl url = new GenericUrl (VERIFY_CUSTOM_TOKEN_URL + "?key="
727
711
+ IntegrationTestUtils .getApiKey ());
@@ -805,17 +789,25 @@ private void checkRecreate(String uid) throws Exception {
805
789
private static class RandomUser {
806
790
private final String uid ;
807
791
private final String email ;
792
+ private final String phone ;
808
793
809
- private RandomUser (String uid , String email ) {
794
+ private RandomUser (String uid , String email , String phone ) {
810
795
this .uid = uid ;
811
796
this .email = email ;
797
+ this .phone = phone ;
812
798
}
813
799
814
800
static RandomUser create () {
815
801
final String uid = UUID .randomUUID ().toString ().replaceAll ("-" , "" );
816
802
final String email = ("test" + uid .substring (0 , 12 ) + "@example."
817
803
+ uid .substring (12 ) + ".com" ).toLowerCase ();
818
- return new RandomUser (uid , email );
804
+ Random random = new Random ();
805
+ StringBuilder builder = new StringBuilder ("+1" );
806
+ for (int i = 0 ; i < 10 ; i ++) {
807
+ builder .append (random .nextInt (10 ));
808
+ }
809
+ final String phone = builder .toString ();
810
+ return new RandomUser (uid , email , phone );
819
811
}
820
812
}
821
813
}
0 commit comments