public async Task CanFindById() { await userStore.CreateAsync(testUser, default(CancellationToken)); var result = await userStore.FindByIdAsync(testUser.Id, default(CancellationToken)); Assert.True(testUser.PropertiesEqual(result)); }
public async Task SqlUserStoreMethodsThrowWhenDisposedTest() { var store = new MongoUserStore(Container.MongoRepository.Context); store.Dispose(); await Assert.ThrowsAsync <ObjectDisposedException>(async() => await store.AddClaimsAsync(null, null)); await Assert.ThrowsAsync <ObjectDisposedException>(async() => await store.AddLoginAsync(null, null)); await Assert.ThrowsAsync <ObjectDisposedException>(async() => await store.AddToRoleAsync(null, null)); await Assert.ThrowsAsync <ObjectDisposedException>(async() => await store.GetClaimsAsync(null)); await Assert.ThrowsAsync <ObjectDisposedException>(async() => await store.GetLoginsAsync(null)); await Assert.ThrowsAsync <ObjectDisposedException>(async() => await store.GetRolesAsync(null)); await Assert.ThrowsAsync <ObjectDisposedException>(async() => await store.IsInRoleAsync(null, null)); await Assert.ThrowsAsync <ObjectDisposedException>(async() => await store.RemoveClaimsAsync(null, null)); await Assert.ThrowsAsync <ObjectDisposedException>(async() => await store.RemoveLoginAsync(null, null, null)); await Assert.ThrowsAsync <ObjectDisposedException>( async() => await store.RemoveFromRoleAsync(null, null)); await Assert.ThrowsAsync <ObjectDisposedException>(async() => await store.RemoveClaimsAsync(null, null)); await Assert.ThrowsAsync <ObjectDisposedException>(async() => await store.ReplaceClaimAsync(null, null, null)); await Assert.ThrowsAsync <ObjectDisposedException>(async() => await store.FindByLoginAsync(null, null)); await Assert.ThrowsAsync <ObjectDisposedException>(async() => await store.FindByIdAsync(null)); await Assert.ThrowsAsync <ObjectDisposedException>(async() => await store.FindByNameAsync(null)); await Assert.ThrowsAsync <ObjectDisposedException>(async() => await store.CreateAsync(null)); await Assert.ThrowsAsync <ObjectDisposedException>(async() => await store.UpdateAsync(null)); await Assert.ThrowsAsync <ObjectDisposedException>(async() => await store.DeleteAsync(null)); await Assert.ThrowsAsync <ObjectDisposedException>( async() => await store.SetEmailConfirmedAsync(null, true)); await Assert.ThrowsAsync <ObjectDisposedException>(async() => await store.GetEmailConfirmedAsync(null)); await Assert.ThrowsAsync <ObjectDisposedException>( async() => await store.SetPhoneNumberConfirmedAsync(null, true)); await Assert.ThrowsAsync <ObjectDisposedException>( async() => await store.GetPhoneNumberConfirmedAsync(null)); }
public async Task CreateAsync_ShouldCreateUser() { // ARRANGE MongoIdentityUser user; using (var userStore = new MongoUserStore <MongoIdentityUser>(options) as IUserStore <MongoIdentityUser>) { user = new MongoIdentityUser(TestUtils.RandomString(10)); await userStore.CreateAsync(user, CancellationToken.None); var retrievedUser = await userStore.FindByIdAsync(user.Id, CancellationToken.None); Assert.NotNull(retrievedUser); Assert.Equal(user.UserName, retrievedUser.UserName); Assert.Equal(user.NormalizedUserName, retrievedUser.NormalizedUserName); } }
public async Task MongoIdentityUser_CanBeSavedAndRetrieved_WhenItBecomesTheSubclass() { var username = TestUtils.RandomString(10); var countryName = TestUtils.RandomString(10); var loginProvider = TestUtils.RandomString(5); var providerKey = TestUtils.RandomString(5); var displayName = TestUtils.RandomString(5); var myCustomThing = TestUtils.RandomString(10); var user = new MyIdentityUser(username) { MyCustomThing = myCustomThing }; user.AddClaim(new Claim(ClaimTypes.Country, countryName)); user.AddLogin(new MongoUserLogin(new UserLoginInfo(loginProvider, providerKey, displayName))); using (var dbProvider = MongoDbServerTestUtils.CreateDatabase()) { var store = new MongoUserStore <MyIdentityUser>(dbProvider.Database); // ACT, ASSERT var result = await store.CreateAsync(user, CancellationToken.None); Assert.True(result.Succeeded); // ACT, ASSERT var retrievedUser = await store.FindByIdAsync(user.Id, CancellationToken.None); Assert.NotNull(retrievedUser); Assert.Equal(username, retrievedUser.UserName); Assert.Equal(myCustomThing, retrievedUser.MyCustomThing); var countryClaim = retrievedUser.Claims.FirstOrDefault(x => x.ClaimType == ClaimTypes.Country); Assert.NotNull(countryClaim); Assert.Equal(countryName, countryClaim.ClaimValue); var retrievedLoginProvider = retrievedUser.Logins.FirstOrDefault(x => x.LoginProvider == loginProvider); Assert.NotNull(retrievedLoginProvider); Assert.Equal(providerKey, retrievedLoginProvider.ProviderKey); Assert.Equal(displayName, retrievedLoginProvider.ProviderDisplayName); } }
public async Task MongoIdentityUser_ShouldSaveAndRetrieveTheFutureOccuranceCorrectly() { var lockoutEndDate = new DateTime(2017, 2, 1, 0, 0, 0, DateTimeKind.Utc).AddTicks(8996910); var user = new MyIdentityUser(TestUtils.RandomString(10)); user.LockUntil(lockoutEndDate); using (var store = new MongoUserStore <MyIdentityUser>(options)) { // ACT var result = await store.CreateAsync(user, CancellationToken.None); // ASSERT Assert.True(result.Succeeded); var retrievedUser = await store.FindByIdAsync(user.Id, CancellationToken.None); Assert.Equal(user.LockoutEndDate, retrievedUser.LockoutEndDate); } }