public async Task CheckGettingAllUsersWithRoleStylistAsync() { ApplicationDbContext db = GetDb(); var repository = new EfDeletableEntityRepository <ApplicationUser>(db); var rolesRepository = new EfDeletableEntityRepository <ApplicationRole>(db); var service = new StylistsService( repository, rolesRepository, this.procedureStylistsRepository.Object, this.proceduresRepository.Object, this.cloudinaryService.Object); var firstStylist = new ApplicationUser() { Id = "1", Email = "*****@*****.**" }; var secondStylist = new ApplicationUser() { Id = "2", Email = "*****@*****.**" }; var thirdStylist = new ApplicationUser() { Id = "3", Email = "*****@*****.**" }; var role = new ApplicationRole() { Id = "1", Name = GlobalConstants.StylistRoleName, }; await db.Users.AddAsync(firstStylist); await db.Users.AddAsync(secondStylist); await db.Users.AddAsync(thirdStylist); await db.Roles.AddAsync(role); await db.SaveChangesAsync(); await service.AddRoleStylistAsync(firstStylist.Email); await service.AddRoleStylistAsync(secondStylist.Email); await service.AddRoleStylistAsync(thirdStylist.Email); var stylists = await service.GetAllAsync <TestStylistModel>(); Assert.Equal(3, stylists.Count()); Assert.Contains(firstStylist.Roles, r => r.RoleId == role.Id); Assert.Contains(secondStylist.Roles, r => r.RoleId == role.Id); Assert.Contains(thirdStylist.Roles, r => r.RoleId == role.Id); }
public async Task CheckAddingRoleToExistingNonStylistAsync() { ApplicationDbContext db = GetDb(); var repository = new EfDeletableEntityRepository <ApplicationUser>(db); var rolesRepository = new EfDeletableEntityRepository <ApplicationRole>(db); var service = new StylistsService( repository, rolesRepository, this.procedureStylistsRepository.Object, this.proceduresRepository.Object, this.cloudinaryService.Object); var role = new ApplicationRole() { Id = "1", Name = GlobalConstants.StylistRoleName, }; await db.Roles.AddAsync(role); await db.SaveChangesAsync(); var stylistId = await service.AddRoleStylistAsync("*****@*****.**"); Assert.Null(stylistId); }
public async Task CheckSearchingStylistByCategoryAsync() { ApplicationDbContext db = GetDb(); var repository = new EfDeletableEntityRepository <ApplicationUser>(db); var rolesRepository = new EfDeletableEntityRepository <ApplicationRole>(db); var service = new StylistsService( repository, rolesRepository, this.procedureStylistsRepository.Object, this.proceduresRepository.Object, this.cloudinaryService.Object); var firstCategory = new Category() { Id = "1", Name = "Hair", }; var secondCategory = new Category() { Id = "2", Name = "Makeup", }; var firstStylist = new ApplicationUser() { Id = "1", Email = "*****@*****.**", CategoryId = firstCategory.Id }; var secondStylist = new ApplicationUser() { Id = "2", Email = "*****@*****.**", CategoryId = firstCategory.Id }; var thirdStylist = new ApplicationUser() { Id = "3", Email = "*****@*****.**", CategoryId = secondCategory.Id }; var role = new ApplicationRole() { Id = "1", Name = GlobalConstants.StylistRoleName, }; await db.Users.AddAsync(firstStylist); await db.Users.AddAsync(secondStylist); await db.Users.AddAsync(thirdStylist); await db.Categories.AddAsync(firstCategory); await db.Categories.AddAsync(secondCategory); await db.Roles.AddAsync(role); await db.SaveChangesAsync(); await service.AddRoleStylistAsync(firstStylist.Email); await service.AddRoleStylistAsync(secondStylist.Email); await service.AddRoleStylistAsync(thirdStylist.Email); var stylists = await service.SearchByCategoryAsync <TestStylistModel>(firstCategory.Id); Assert.Equal(2, stylists.Count()); }