public async Task DeleteUserRoleAsync() { using (var context = new AdminIdentityDbContext(_dbContextOptions)) { var testUserManager = GetTestUserManager(context); var testRoleManager = GetTestRoleManager(context); var mapper = GetMapper(); var identityRepository = GetIdentityRepository(context, testUserManager, testRoleManager, mapper); var localizerIdentityResource = new IdentityServiceResources(); var identityService = GetIdentityService(identityRepository, localizerIdentityResource, mapper); //Generate random new user var userDto = IdentityDtoMock <string> .GenerateRandomUser(); await identityService.CreateUserAsync(userDto); //Get new user var user = await context.Users.Where(x => x.UserName == userDto.UserName).SingleOrDefaultAsync(); userDto.Id = user.Id; var newUserDto = await identityService.GetUserAsync(userDto.Id.ToString()); //Assert new user userDto.Should().BeEquivalentTo(newUserDto); //Generate random new role var roleDto = IdentityDtoMock <string> .GenerateRandomRole(); await identityService.CreateRoleAsync(roleDto); //Get new role var role = await context.Roles.Where(x => x.Name == roleDto.Name).SingleOrDefaultAsync(); roleDto.Id = role.Id; var newRoleDto = await identityService.GetRoleAsync(roleDto.Id.ToString()); //Assert new role roleDto.Should().BeEquivalentTo(newRoleDto); var userRoleDto = IdentityDtoMock <string> .GenerateRandomUserRole <RoleDto <string> >(roleDto.Id, userDto.Id); await identityService.CreateUserRoleAsync(userRoleDto); //Get new role var userRole = await context.UserRoles.Where(x => x.RoleId == roleDto.Id && x.UserId == userDto.Id).SingleOrDefaultAsync(); userRole.Should().NotBeNull(); await identityService.DeleteUserRoleAsync(userRoleDto); //Get deleted role var userRoleDeleted = await context.UserRoles.Where(x => x.RoleId == roleDto.Id && x.UserId == userDto.Id).SingleOrDefaultAsync(); userRoleDeleted.Should().BeNull(); } }
public async Task AddUserAsync() { using (var context = new AdminIdentityDbContext(_dbContextOptions)) { var testUserManager = GetTestUserManager(context); var testRoleManager = GetTestRoleManager(context); var mapper = GetMapper(); var identityRepository = GetIdentityRepository(context, testUserManager, testRoleManager, mapper); var localizerIdentityResource = new IdentityServiceResources(); var identityService = GetIdentityService(identityRepository, localizerIdentityResource, mapper); //Generate random new user var userDto = IdentityDtoMock <string> .GenerateRandomUser(); await identityService.CreateUserAsync(userDto); //Get new user var user = await context.Users.Where(x => x.UserName == userDto.UserName).SingleOrDefaultAsync(); userDto.Id = user.Id; var newUserDto = await identityService.GetUserAsync(userDto.Id.ToString()); //Assert new user userDto.Should().BeEquivalentTo(newUserDto); } }
public async Task AddRoleAsync() { using (var context = new AdminIdentityDbContext(_dbContextOptions)) { var testUserManager = GetTestUserManager(context); var testRoleManager = GetTestRoleManager(context); var mapper = GetMapper(); var identityRepository = GetIdentityRepository(context, testUserManager, testRoleManager, mapper); var localizerIdentityResource = new IdentityServiceResources(); var identityService = GetIdentityService(identityRepository, localizerIdentityResource, mapper); //Generate random new role var roleDto = IdentityDtoMock <string> .GenerateRandomRole(); await identityService.CreateRoleAsync(roleDto); //Get new role var role = await context.Roles.Where(x => x.Name == roleDto.Name).SingleOrDefaultAsync(); roleDto.Id = role.Id; var newRoleDto = await identityService.GetRoleAsync(roleDto.Id.ToString()); //Assert new role roleDto.ShouldBeEquivalentTo(newRoleDto); } }
public async Task AddUserAsync() { using (var context = new AdminDbContext(_dbContextOptions, _storeOptions, _operationalStore)) { var testUserManager = GetTestUserManager(context); var testRoleManager = GetTestRoleManager(context); IIdentityRepository identityRepository = new IdentityRepository(context, testUserManager, testRoleManager); var localizerIdentityResource = new IdentityServiceResources(); IIdentityService identityService = new IdentityService(identityRepository, localizerIdentityResource); //Generate random new user var userDto = IdentityDtoMock.GenerateRandomUser(Guid.NewGuid()); await identityService.CreateUserAsync(userDto); //Get new user var user = await context.Users.Where(x => x.UserName == userDto.UserName).SingleOrDefaultAsync(); userDto.Id = user.Id; var newUserDto = await identityService.GetUserAsync(userDto); //Assert new user userDto.Should().BeEquivalentTo(newUserDto); } }
public async Task AddRoleAsync() { using (var context = new AdminDbContext(_dbContextOptions, _storeOptions, _operationalStore)) { var testUserManager = GetTestUserManager(context); var testRoleManager = GetTestRoleManager(context); IIdentityRepository identityRepository = new IdentityRepository(context, testUserManager, testRoleManager); var localizerIdentityResource = new IdentityServiceResources(); IIdentityService identityService = new IdentityService(identityRepository, localizerIdentityResource); //Generate random new role var roleDto = IdentityDtoMock.GenerateRandomRole(Guid.NewGuid()); await identityService.CreateRoleAsync(roleDto); //Get new role var role = await context.Roles.Where(x => x.Name == roleDto.Name).SingleOrDefaultAsync(); roleDto.Id = role.Id; var newRoleDto = await identityService.GetRoleAsync(roleDto); //Assert new role roleDto.ShouldBeEquivalentTo(newRoleDto); } }
public async Task DeleteUserRoleAsync() { using (var context = new AdminDbContext(_dbContextOptions, _storeOptions, _operationalStore)) { var testUserManager = GetTestUserManager(context); var testRoleManager = GetTestRoleManager(context); IIdentityRepository identityRepository = new IdentityRepository(context, testUserManager, testRoleManager); var localizerIdentityResource = new IdentityServiceResources(); IIdentityService identityService = new IdentityService(identityRepository, localizerIdentityResource); //Generate random new user var userDto = IdentityDtoMock.GenerateRandomUser(Guid.NewGuid()); await identityService.CreateUserAsync(userDto); //Get new user var user = await context.Users.Where(x => x.UserName == userDto.UserName).SingleOrDefaultAsync(); userDto.Id = user.Id; var newUserDto = await identityService.GetUserAsync(userDto); //Assert new user userDto.ShouldBeEquivalentTo(newUserDto); //Generate random new role var roleDto = IdentityDtoMock.GenerateRandomRole(Guid.NewGuid()); await identityService.CreateRoleAsync(roleDto); //Get new role var role = await context.Roles.Where(x => x.Name == roleDto.Name).SingleOrDefaultAsync(); roleDto.Id = role.Id; var newRoleDto = await identityService.GetRoleAsync(roleDto); //Assert new role roleDto.ShouldBeEquivalentTo(newRoleDto); var userRoleDto = IdentityDtoMock.GenerateRandomUserRole(roleDto.Id.Value, userDto.Id.Value); await identityService.CreateUserRoleAsync(userRoleDto); //Get new role var userRole = await context.UserRoles.Where(x => x.RoleId == roleDto.Id && x.UserId == userDto.Id).SingleOrDefaultAsync(); userRole.Should().NotBeNull(); await identityService.DeleteUserRoleAsync(userRoleDto); //Get deleted role var userRoleDeleted = await context.UserRoles.Where(x => x.RoleId == roleDto.Id && x.UserId == userDto.Id).SingleOrDefaultAsync(); userRoleDeleted.Should().BeNull(); } }
public async Task DeleteUserProviderAsync() { using (var context = new AdminIdentityDbContext(_dbContextOptions)) { var testUserManager = GetTestUserManager(context); var testRoleManager = GetTestRoleManager(context); var mapper = GetMapper(); var identityRepository = GetIdentityRepository(context, testUserManager, testRoleManager, mapper); var localizerIdentityResource = new IdentityServiceResources(); var identityService = GetIdentityService(identityRepository, localizerIdentityResource, mapper); //Generate random new user var userDto = IdentityDtoMock <string> .GenerateRandomUser(); await identityService.CreateUserAsync(userDto); //Get new user var user = await context.Users.Where(x => x.UserName == userDto.UserName).SingleOrDefaultAsync(); userDto.Id = user.Id; var newUserDto = await identityService.GetUserAsync(userDto.Id.ToString()); //Assert new user userDto.Should().BeEquivalentTo(newUserDto); var userProvider = IdentityMock.GenerateRandomUserProviders(Guid.NewGuid().ToString(), Guid.NewGuid().ToString(), newUserDto.Id); //Add new user login await context.UserLogins.AddAsync(userProvider); await context.SaveChangesAsync(); //Get added user provider var addedUserProvider = await context.UserLogins.Where(x => x.ProviderKey == userProvider.ProviderKey && x.LoginProvider == userProvider.LoginProvider).SingleOrDefaultAsync(); addedUserProvider.Should().NotBeNull(); var userProviderDto = IdentityDtoMock <string> .GenerateRandomUserProviders(userProvider.ProviderKey, userProvider.LoginProvider, userProvider.UserId); await identityService.DeleteUserProvidersAsync(userProviderDto); //Get deleted user provider var deletedUserProvider = await context.UserLogins.Where(x => x.ProviderKey == userProvider.ProviderKey && x.LoginProvider == userProvider.LoginProvider).SingleOrDefaultAsync(); deletedUserProvider.Should().BeNull(); } }
public async Task RemoveRoleClaimAsync() { using (var context = new AdminIdentityDbContext(_dbContextOptions)) { var testUserManager = GetTestUserManager(context); var testRoleManager = GetTestRoleManager(context); var mapper = GetMapper(); var identityRepository = GetIdentityRepository(context, testUserManager, testRoleManager, mapper); var localizerIdentityResource = new IdentityServiceResources(); var identityService = GetIdentityService(identityRepository, localizerIdentityResource, mapper); //Generate random new role var roleDto = IdentityDtoMock <string> .GenerateRandomRole(); await identityService.CreateRoleAsync(roleDto); //Get new role var role = await context.Roles.Where(x => x.Name == roleDto.Name).SingleOrDefaultAsync(); roleDto.Id = role.Id; var newRoleDto = await identityService.GetRoleAsync(roleDto.Id.ToString()); //Assert new role roleDto.Should().BeEquivalentTo(newRoleDto); //Generate random new role claim var roleClaimDto = IdentityDtoMock <string> .GenerateRandomRoleClaim(0, roleDto.Id); await identityService.CreateRoleClaimsAsync(roleClaimDto); //Get new role claim var roleClaim = await context.RoleClaims.Where(x => x.ClaimType == roleClaimDto.ClaimType && x.ClaimValue == roleClaimDto.ClaimValue).SingleOrDefaultAsync(); roleClaimDto.ClaimId = roleClaim.Id; var newRoleClaimDto = await identityService.GetRoleClaimAsync(roleDto.Id.ToString(), roleClaimDto.ClaimId); //Assert new role roleClaimDto.Should().BeEquivalentTo(newRoleClaimDto, options => options.Excluding(o => o.RoleName)); await identityService.DeleteRoleClaimsAsync(roleClaimDto); var roleClaimToDelete = await context.RoleClaims.Where(x => x.ClaimType == roleClaimDto.ClaimType && x.ClaimValue == roleClaimDto.ClaimValue).SingleOrDefaultAsync(); //Assert removed role claim roleClaimToDelete.Should().BeNull(); } }
public async Task RemoveRoleClaimAsync() { using (var context = new AdminDbContext(_dbContextOptions, _storeOptions, _operationalStore)) { var testUserManager = GetTestUserManager(context); var testRoleManager = GetTestRoleManager(context); IIdentityRepository identityRepository = new IdentityRepository(context, testUserManager, testRoleManager); var localizerIdentityResource = new IdentityServiceResources(); IIdentityService identityService = new IdentityService(identityRepository, localizerIdentityResource); //Generate random new role var roleDto = IdentityDtoMock.GenerateRandomRole(Guid.NewGuid()); await identityService.CreateRoleAsync(roleDto); //Get new role var role = await context.Roles.Where(x => x.Name == roleDto.Name).SingleOrDefaultAsync(); roleDto.Id = role.Id; var newRoleDto = await identityService.GetRoleAsync(roleDto); //Assert new role roleDto.Should().BeEquivalentTo(newRoleDto); //Generate random new role claim var roleClaimDto = IdentityDtoMock.GenerateRandomRoleClaim(0, roleDto.Id); await identityService.CreateRoleClaimsAsync(roleClaimDto); //Get new role claim var roleClaim = await context.RoleClaims.Where(x => x.ClaimType == roleClaimDto.ClaimType && x.ClaimValue == roleClaimDto.ClaimValue).SingleOrDefaultAsync(); roleClaimDto.ClaimId = roleClaim.Id; var newRoleClaimDto = await identityService.GetRoleClaimAsync(roleDto.Id, roleClaimDto.ClaimId); //Assert new role roleClaimDto.Should().BeEquivalentTo(newRoleClaimDto); await identityService.DeleteRoleClaimsAsync(roleClaimDto); var roleClaimToDelete = await context.RoleClaims.Where(x => x.ClaimType == roleClaimDto.ClaimType && x.ClaimValue == roleClaimDto.ClaimValue).SingleOrDefaultAsync(); //Assert removed role claim roleClaimToDelete.Should().BeNull(); } }
public async Task DeleteUserClaimAsync() { using (var context = new AdminIdentityDbContext(_dbContextOptions)) { var testUserManager = GetTestUserManager(context); var testRoleManager = GetTestRoleManager(context); var mapper = GetMapper(); var identityRepository = GetIdentityRepository(context, testUserManager, testRoleManager, mapper); var localizerIdentityResource = new IdentityServiceResources(); var identityService = GetIdentityService(identityRepository, localizerIdentityResource, mapper); //Generate random new user var userDto = IdentityDtoMock <string> .GenerateRandomUser(); await identityService.CreateUserAsync(userDto); //Get new user var user = await context.Users.Where(x => x.UserName == userDto.UserName).SingleOrDefaultAsync(); userDto.Id = user.Id; var newUserDto = await identityService.GetUserAsync(userDto.Id.ToString()); //Assert new user userDto.ShouldBeEquivalentTo(newUserDto); //Generate random new user claim var userClaimDto = IdentityDtoMock <string> .GenerateRandomUserClaim(0, userDto.Id); await identityService.CreateUserClaimsAsync(userClaimDto); //Get new user claim var claim = await context.UserClaims.Where(x => x.ClaimType == userClaimDto.ClaimType && x.ClaimValue == userClaimDto.ClaimValue).SingleOrDefaultAsync(); userClaimDto.ClaimId = claim.Id; var newUserClaim = await identityService.GetUserClaimAsync(userDto.Id.ToString(), claim.Id); //Assert new user claim userClaimDto.ShouldBeEquivalentTo(newUserClaim); await identityService.DeleteUserClaimsAsync(userClaimDto); //Get deleted user claim var deletedClaim = await context.UserClaims.Where(x => x.ClaimType == userClaimDto.ClaimType && x.ClaimValue == userClaimDto.ClaimValue).SingleOrDefaultAsync(); deletedClaim.Should().BeNull(); } }
RoleClaimsDto <RoleClaimDto <string>, string>, UserClaimDto <string>, RoleClaimDto <string> > GetIdentityService(AdminIdentityDbContext context) { var testUserManager = GetTestUserManager(context); var testRoleManager = GetTestRoleManager(context); var mapper = GetMapper(); var identityRepository = GetIdentityRepository(context, testUserManager, testRoleManager, mapper); var localizerIdentityResource = new IdentityServiceResources(); var auditLoggerMock = new Mock <IAuditEventLogger>(); var auditLogger = auditLoggerMock.Object; var identityService = GetIdentityService(identityRepository, localizerIdentityResource, mapper, auditLogger); return(identityService); }
public async Task AddUserClaimAsync() { using (var context = new AdminDbContext(_dbContextOptions)) { var testUserManager = GetTestUserManager(context); var testRoleManager = GetTestRoleManager(context); IIdentityRepository identityRepository = new IdentityRepository(context, testUserManager, testRoleManager); var localizerIdentityResource = new IdentityServiceResources(); IIdentityService identityService = new IdentityService(identityRepository, localizerIdentityResource); //Generate random new user var userDto = IdentityDtoMock.GenerateRandomUser(0); await identityService.CreateUserAsync(userDto); //Get new user var user = await context.Users.Where(x => x.UserName == userDto.UserName).SingleOrDefaultAsync(); userDto.Id = user.Id; var newUserDto = await identityService.GetUserAsync(userDto); //Assert new user userDto.ShouldBeEquivalentTo(newUserDto); //Generate random new user claim var userClaimDto = IdentityDtoMock.GenerateRandomUserClaim(0, userDto.Id); await identityService.CreateUserClaimsAsync(userClaimDto); //Get new user claim var claim = await context.UserClaims.Where(x => x.ClaimType == userClaimDto.ClaimType && x.ClaimValue == userClaimDto.ClaimValue).SingleOrDefaultAsync(); userClaimDto.ClaimId = claim.Id; var newUserClaim = await identityService.GetUserClaimAsync(userDto.Id, claim.Id); //Assert new user claim userClaimDto.ShouldBeEquivalentTo(newUserClaim); } }
public async Task UpdateRoleAsync() { using (var context = new AdminIdentityDbContext(_dbContextOptions)) { var testUserManager = GetTestUserManager(context); var testRoleManager = GetTestRoleManager(context); var mapper = GetMapper(); var identityRepository = GetIdentityRepository(context, testUserManager, testRoleManager, mapper); var localizerIdentityResource = new IdentityServiceResources(); var identityService = GetIdentityService(identityRepository, localizerIdentityResource, mapper); //Generate random new role var roleDto = IdentityDtoMock <string> .GenerateRandomRole(); await identityService.CreateRoleAsync(roleDto); //Get new role var role = await context.Roles.Where(x => x.Name == roleDto.Name).SingleOrDefaultAsync(); roleDto.Id = role.Id; var newRoleDto = await identityService.GetRoleAsync(roleDto.Id.ToString()); //Assert new role roleDto.Should().BeEquivalentTo(newRoleDto); //Detached the added item context.Entry(role).State = EntityState.Detached; //Generete new role with added item id var roleDtoForUpdate = IdentityDtoMock <string> .GenerateRandomRole(role.Id); //Update role await identityService.UpdateRoleAsync(roleDtoForUpdate); var updatedRole = await identityService.GetRoleAsync(roleDtoForUpdate.Id.ToString()); //Assert updated role roleDtoForUpdate.Should().BeEquivalentTo(updatedRole); } }
public async Task UpdateUserAsync() { using (var context = new AdminIdentityDbContext(_dbContextOptions)) { var testUserManager = GetTestUserManager(context); var testRoleManager = GetTestRoleManager(context); var mapper = GetMapper(); var identityRepository = GetIdentityRepository(context, testUserManager, testRoleManager, mapper); var localizerIdentityResource = new IdentityServiceResources(); var identityService = GetIdentityService(identityRepository, localizerIdentityResource, mapper); //Generate random new user var userDto = IdentityDtoMock <string> .GenerateRandomUser(); await identityService.CreateUserAsync(userDto); //Get new user var user = await context.Users.Where(x => x.UserName == userDto.UserName).SingleOrDefaultAsync(); userDto.Id = user.Id; var newUserDto = await identityService.GetUserAsync(userDto.Id.ToString()); //Assert new user userDto.ShouldBeEquivalentTo(newUserDto); //Detached the added item context.Entry(user).State = EntityState.Detached; //Generete new user with added item id var userDtoForUpdate = IdentityDtoMock <string> .GenerateRandomUser(user.Id); //Update user await identityService.UpdateUserAsync(userDtoForUpdate); var updatedUser = await identityService.GetUserAsync(userDtoForUpdate.Id.ToString()); //Assert updated user userDtoForUpdate.ShouldBeEquivalentTo(updatedUser); } }
public async Task DeleteRoleAsync() { using (var context = new AdminDbContext(_dbContextOptions, _storeOptions, _operationalStore)) { var testUserManager = GetTestUserManager(context); var testRoleManager = GetTestRoleManager(context); var mapper = GetMapper(); var identityRepository = GetIdentityRepository(context, testUserManager, testRoleManager, mapper); var localizerIdentityResource = new IdentityServiceResources(); var identityService = GetIdentityService(identityRepository, localizerIdentityResource, mapper); //Generate random new role var roleDto = IdentityDtoMock <int> .GenerateRandomRole(0); await identityService.CreateRoleAsync(roleDto); //Get new role var role = await context.Roles.Where(x => x.Name == roleDto.Name).SingleOrDefaultAsync(); roleDto.Id = role.Id; var newRoleDto = await identityService.GetRoleAsync(roleDto.Id.ToString()); //Assert new role roleDto.ShouldBeEquivalentTo(newRoleDto); //Remove role await identityService.DeleteRoleAsync(newRoleDto); //Try Get Removed role var removeRole = await context.Roles.Where(x => x.Id == role.Id) .SingleOrDefaultAsync(); //Assert removed role removeRole.Should().BeNull(); } }
public async Task DeleteUserAsync() { using (var context = new AdminDbContext(_dbContextOptions)) { var testUserManager = GetTestUserManager(context); var testRoleManager = GetTestRoleManager(context); IIdentityRepository identityRepository = new IdentityRepository(context, testUserManager, testRoleManager); var localizerIdentityResource = new IdentityServiceResources(); IIdentityService identityService = new IdentityService(identityRepository, localizerIdentityResource); //Generate random new user var userDto = IdentityDtoMock.GenerateRandomUser(0); await identityService.CreateUserAsync(userDto); //Get new user var user = await context.Users.Where(x => x.UserName == userDto.UserName).SingleOrDefaultAsync(); userDto.Id = user.Id; var newUserDto = await identityService.GetUserAsync(userDto); //Assert new user userDto.ShouldBeEquivalentTo(newUserDto); //Remove user await identityService.DeleteUserAsync(newUserDto); //Try Get Removed user var removeUser = await context.Users.Where(x => x.Id == user.Id) .SingleOrDefaultAsync(); //Assert removed user removeUser.Should().BeNull(); } }