示例#1
0
 private void DeleteChildCategory(DAL.Entities.Category category)
 {
     _context.Categories.Remove(category);
     foreach (var childCategory in category.ChildCategories)
     {
         DeleteChildCategory(childCategory);
     }
 }
示例#2
0
        public async Task DeleteCategoryAsync(int categoryId)
        {
            var categories = await _context.Categories.ToListAsync();

            DAL.Entities.Category category = categories.First(c => c.Id == categoryId);
            if (category != null)
            {
                _context.Categories.Remove(category);
                foreach (var child in category.ChildCategories)
                {
                    DeleteChildCategory(child);
                }
                await _context.SaveChangesAsync();
            }
        }
        public CategoriesControllerTests()
        {
            var category = new DAL.Entities.Category {
                Id = 1, Name = "test", Description = "testDesc"
            };

            ServiceMock = new Mock <ICategoryService>();
            ServiceMock.Setup(s => s.GetAllCategoriesAsync()).Returns(Task.FromResult(new List <DAL.Entities.Category> {
                category
            }));
            ServiceMock.Setup(s => s.CreateCategoryAsync(It.IsAny <DAL.Entities.Category>())).Returns(Task.FromResult(category));
            ServiceMock.Setup(s => s.UpdateCategoryAsync(It.IsAny <DAL.Entities.Category>())).Returns(Task.FromResult(category));

            LoggerMock = new Mock <ILogger <CategoriesController> >();

            MapperMock = new Mock <IMapper>();

            Controller = new CategoriesController(ServiceMock.Object, MapperMock.Object, LoggerMock.Object);
        }