|
14 | 14 |
|
15 | 15 | using System; |
16 | 16 | using System.Collections.Generic; |
| 17 | +using System.Linq; |
17 | 18 | using System.Net.Http; |
18 | 19 | using System.Text; |
19 | 20 | using System.Threading.Tasks; |
20 | | -using FirebaseAdmin; |
21 | 21 | using FirebaseAdmin.Auth; |
22 | 22 | using Google.Apis.Auth.OAuth2; |
23 | 23 | using Google.Apis.Util; |
@@ -288,32 +288,39 @@ await Assert.ThrowsAsync<FirebaseException>( |
288 | 288 | public async Task ListUsers() |
289 | 289 | { |
290 | 290 | var users = new List<string>(); |
291 | | - for (int i = 0; i < 3; i++) |
| 291 | + try |
292 | 292 | { |
293 | | - var user = await FirebaseAuth.DefaultInstance.CreateUserAsync(new UserRecordArgs() |
| 293 | + for (int i = 0; i < 3; i++) |
294 | 294 | { |
295 | | - Password = "password", |
296 | | - }); |
297 | | - users.Add(user.Uid); |
298 | | - } |
| 295 | + var user = await FirebaseAuth.DefaultInstance.CreateUserAsync(new UserRecordArgs() |
| 296 | + { |
| 297 | + Password = "password", |
| 298 | + }); |
| 299 | + users.Add(user.Uid); |
| 300 | + } |
299 | 301 |
|
300 | | - var pagedEnumerable = FirebaseAuth.DefaultInstance.ListUsersAsync(null); |
301 | | - var enumerator = pagedEnumerable.GetEnumerator(); |
| 302 | + var pagedEnumerable = FirebaseAuth.DefaultInstance.ListUsersAsync(null); |
| 303 | + var enumerator = pagedEnumerable.GetEnumerator(); |
302 | 304 |
|
303 | | - var listedUsers = new List<string>(); |
304 | | - while (await enumerator.MoveNext()) |
305 | | - { |
306 | | - var uid = enumerator.Current.Uid; |
307 | | - if (users.Contains(uid) && !listedUsers.Contains(uid)) |
| 305 | + var listedUsers = new List<string>(); |
| 306 | + while (await enumerator.MoveNext()) |
308 | 307 | { |
309 | | - listedUsers.Add(uid); |
310 | | - Assert.NotNull(enumerator.Current.PasswordHash); |
311 | | - Assert.NotNull(enumerator.Current.PasswordSalt); |
| 308 | + var uid = enumerator.Current.Uid; |
| 309 | + if (users.Contains(uid) && !listedUsers.Contains(uid)) |
| 310 | + { |
| 311 | + listedUsers.Add(uid); |
| 312 | + Assert.NotNull(enumerator.Current.PasswordHash); |
| 313 | + Assert.NotNull(enumerator.Current.PasswordSalt); |
| 314 | + } |
312 | 315 | } |
313 | | - } |
314 | 316 |
|
315 | | - Assert.Equal(3, listedUsers.Count); |
316 | | - users.ForEach(async (uid) => await FirebaseAuth.DefaultInstance.DeleteUserAsync(uid)); |
| 317 | + Assert.Equal(3, listedUsers.Count); |
| 318 | + } |
| 319 | + finally |
| 320 | + { |
| 321 | + var deleteTasks = users.Select((uid) => FirebaseAuth.DefaultInstance.DeleteUserAsync(uid)); |
| 322 | + await Task.WhenAll(deleteTasks); |
| 323 | + } |
317 | 324 | } |
318 | 325 |
|
319 | 326 | private static async Task<string> SignInWithCustomTokenAsync(string customToken) |
|
0 commit comments