public async Task CorrectInputToGettingByCategoryIdShouldReturnCorrectResult() { var builder = new DbContextOptionsBuilder <ApplicationDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()); var dbContext = new ApplicationDbContext(builder.Options); var categoriesRepository = new EfDeletableEntityRepository <Category>(dbContext); var subCategoriesRepository = new EfDeletableEntityRepository <SubCategory>(dbContext); var profile = new FamilyKitchenProfile(); var configuration = new MapperConfiguration(cfg => cfg.AddProfile(profile)); var mapper = new Mapper(configuration); var categoriesService = new CategoriesService(categoriesRepository, subCategoriesRepository, mapper); var category = new Category { Id = 2, Name = "Drinks", }; await categoriesRepository.AddAsync(category); await categoriesRepository.SaveChangesAsync(); await subCategoriesRepository.AddRangeAsync(new List <SubCategory> { new SubCategory { Id = 1, Name = "Alcohol", Category = category, }, new SubCategory { Id = 2, Name = "Water", Category = category, }, }); await subCategoriesRepository.SaveChangesAsync(); var categoryId = 2; var subCategories = (List <SubCategoryViewModel>)categoriesService.GetSubCategoriesByCategoryId(categoryId); Assert.Equal(2, subCategories.Count); }
public void AddUserToRoleShouldAddTheUserToTheRole() { var options = new DbContextOptionsBuilder <ApplicationDbContext>() .UseInMemoryDatabase(databaseName: Guid.NewGuid().ToString()) .Options; var userRepository = new EfDeletableEntityRepository <ApplicationUser>(new ApplicationDbContext(options)); var username = "******"; var users = new List <ApplicationUser> { new ApplicationUser { UserName = "******", }, new ApplicationUser { UserName = "******", }, new ApplicationUser { UserName = username, }, }; userRepository.AddRangeAsync(users); userRepository.SaveChangesAsync(); var store = new Mock <IUserStore <ApplicationUser> >(); var userManager = new Mock <UserManager <ApplicationUser> >(store.Object, null, null, null, null, null, null, null, null); userManager.Setup(m => m.FindByNameAsync(username)) .Returns(Task.FromResult <ApplicationUser>(users.FirstOrDefault(x => x.UserName == username))); var usersService = new UsersService(userRepository, userManager.Object); var role = "Admin"; var isUserAddInRole = usersService.AddUserToRole(username, role); Assert.True(isUserAddInRole); }