public async Task RestoreAsync_WithCategoryId_ShouldRestoreCategory() { // Arrange FitStoreDbContext database = this.Database; DatabaseHelper.SeedData(database); Category category = database.Categories.Find(firstDeletedCategoryId); foreach (Subcategory subcategory in category.Subcategories) { foreach (Supplement supplement in subcategory.Supplements) { supplement.Manufacturer.IsDeleted = true; supplement.Manufacturer.IsDeleted = false; foreach (Review review in supplement.Reviews) { review.IsDeleted.Should().Be(true); } foreach (Comment comment in supplement.Comments) { comment.IsDeleted.Should().Be(true); } } database.SaveChanges(); } IManagerCategoryService managerCategoryService = new ManagerCategoryService(database); // Act await managerCategoryService.RestoreAsync(firstDeletedCategoryId); // Assert category.IsDeleted.Should().Be(false); foreach (Subcategory subcategory in category.Subcategories) { subcategory.IsDeleted.Should().Be(false); foreach (Supplement supplement in subcategory.Supplements) { supplement.IsDeleted.Should().Be(false); foreach (Review review in supplement.Reviews) { review.IsDeleted.Should().Be(false); } foreach (Comment comment in supplement.Comments) { comment.IsDeleted.Should().Be(false); } } } }
public async Task IsCategoryModified_WithCategoryIdAndName_ShouldReturnFalse() { // Arrange FitStoreDbContext database = this.Database; DatabaseHelper.SeedData(database); IManagerCategoryService managerCategoryService = new ManagerCategoryService(database); // Act bool result = await managerCategoryService.IsCategoryModified(firstNotDeletedCategoryId, firstNotDeletedCategoryName); // Assert result.Should().Be(false); }
public async Task GetEditModelAsync_WithCategoryId_ShouldReturnValidServiceModel() { // Arrange FitStoreDbContext database = this.Database; DatabaseHelper.SeedData(database); IManagerCategoryService managerCategoryService = new ManagerCategoryService(database); // Act CategoryBasicServiceModel result = await managerCategoryService.GetEditModelAsync(firstNotDeletedCategoryId); // Assert result.Id.Should().Be(firstNotDeletedCategoryId); result.Name.Should().Be(firstNotDeletedCategoryName); }
public async Task CreateAsync_WithName_ShouldCreateNewCategory() { // Arrange FitStoreDbContext database = this.Database; IManagerCategoryService managerCategoryService = new ManagerCategoryService(database); // Act await managerCategoryService.CreateAsync(categoryName); // Assert Category category = database.Categories.Find(1); category.Id.Should().Be(1); category.Name.Should().Be(categoryName); }
public async Task EditAsync_WithCategoryIdAndName_ShouldEditCategory() { // Arrange FitStoreDbContext database = this.Database; DatabaseHelper.SeedData(database); IManagerCategoryService managerCategoryService = new ManagerCategoryService(database); // Act await managerCategoryService.EditAsync(firstNotDeletedCategoryId, categoryName); // Assert Category category = database.Categories.Find(firstNotDeletedCategoryId); category.Id.Should().Be(firstNotDeletedCategoryId); category.Name.Should().Be(categoryName); }
public async Task GetAllPagedListingAsync_WithSearchTokenAndIsDeletedTrue_ShouldReturnPagedDeletedCategories() { // Arrange FitStoreDbContext database = this.Database; DatabaseHelper.SeedData(database); IManagerCategoryService managerCategoryService = new ManagerCategoryService(database); // Act IEnumerable <CategoryAdvancedServiceModel> result = await managerCategoryService.GetAllPagedListingAsync(true, "category", page); // Assert result.Count().Should().Be(3); result.First().Id.Should().Be(firstDeletedCategoryId); result.First().Name.Should().Be(firstDeletedCategoryName); result.Last().Id.Should().Be(lastDeletedCategoryId); result.Last().Name.Should().Be(lastDeletedCategoryName); }
public async Task GetAllBasicListingWithAnySubcategoriesAsync_WithIsDeletedTrue_ShouldReturnAllDeletedCategories() { // Arrange FitStoreDbContext database = this.Database; DatabaseHelper.SeedData(database); IManagerCategoryService managerCategoryService = new ManagerCategoryService(database); // Act IEnumerable <CategoryBasicServiceModel> result = await managerCategoryService.GetAllBasicListingWithAnySubcategoriesAsync(true); // Assert result.Count().Should().Be(5); result.First().Id.Should().Be(firstDeletedCategoryId); result.First().Name.Should().Be(firstDeletedCategoryName); result.Last().Id.Should().Be(8); result.Last().Name.Should().Be("Category 8"); }
public async Task TotalCountAsync_WithSearchTokenAndIsDeletedFalse_ShouldReturnCategoriesCount() { // Arrange FitStoreDbContext database = this.Database; DatabaseHelper.SeedData(database); database.Categories.Add(new Category { Id = 100, Name = otherName }); database.SaveChanges(); IManagerCategoryService managerCategoryService = new ManagerCategoryService(database); // Act int result = await managerCategoryService.TotalCountAsync(false, otherName); // Assert result.Should().Be(1); }
public async Task DeleteAsync_WithCategoryId_ShouldDeleteCategory() { // Arrange FitStoreDbContext database = this.Database; DatabaseHelper.SeedData(database); IManagerCategoryService managerCategoryService = new ManagerCategoryService(database); // Act await managerCategoryService.DeleteAsync(firstNotDeletedCategoryId); // Assert Category category = database.Categories.Find(firstNotDeletedCategoryId); category.IsDeleted.Should().Be(true); foreach (Subcategory subcategory in category.Subcategories) { subcategory.IsDeleted.Should().Be(true); foreach (Supplement supplement in subcategory.Supplements) { supplement.IsDeleted.Should().Be(true); foreach (Review review in supplement.Reviews) { review.IsDeleted.Should().Be(true); } foreach (Comment comment in supplement.Comments) { comment.IsDeleted.Should().Be(true); } } } }