//Johan //Tetiana : forbedre og forenkle metode //add category public bool AddCategory(CategorySubmitDTO c) { try { //if category exists return false var cat = _dbContext.Categories.FirstOrDefault(x => x.Category_name == c.CategoryName && x.Deleted == 0); if (cat != null) { return(false); } var category = new Categories(); category.Category_type_Id = c.CategoryType; category.Category_name = c.CategoryName; var undercatTodb = new Undercategory() { Undercategory_name = c.SubcategoryName }; category.Undercategory.Add(undercatTodb); var instruks = new Instruks_Veiledning() { Inskruks_beskrivelse = c.Instruction }; undercatTodb.Instruks_Veiledning = instruks; _dbContext.Categories.Add(category); _dbContext.SaveChanges(); return(true); } catch (Exception e) { throw; } }
public void DeleteSubcategory_deletes_subcategory() { var und1 = new Undercategory { Id = 22, Instruks_Veiledning = new Instruks_Veiledning { Id = 15, Inskruks_beskrivelse = "Text original 3" } }; var und2 = new Undercategory { Id = 33, Instruks_Veiledning = new Instruks_Veiledning { Id = 16, Inskruks_beskrivelse = "Text original 5" } }; var underCategories = new List <Undercategory> { und1, und2 }.AsQueryable(); var catMock = new Mock <DbSet <Undercategory> >(); catMock.As <IQueryable <Undercategory> >().Setup(m => m.Provider).Returns(underCategories.Provider); catMock.As <IQueryable <Undercategory> >().Setup(m => m.Expression).Returns(underCategories.Expression); catMock.As <IQueryable <Undercategory> >().Setup(m => m.ElementType).Returns(underCategories.ElementType); catMock.As <IQueryable <Undercategory> >().Setup(m => m.GetEnumerator()).Returns(() => underCategories.GetEnumerator()); var instruksMock = new Mock <DbSet <Instruks_Veiledning> >(); var dbMock = new Mock <SvarbotDbSys>(); dbMock.Setup(x => x.Undercategory).Returns(catMock.Object); dbMock.Setup(x => x.Instruks_Veiledning).Returns(instruksMock.Object); var dalObject = new AdminDAL(dbMock.Object); dalObject.DeleteSubcategory(22); catMock.Verify(x => x.Remove(It.Is <Undercategory>(u => u.Id == 22)), Times.Once); instruksMock.Verify(x => x.Remove(It.Is <Instruks_Veiledning>(i => i.Id == 15)), Times.Once); }
//Johan //add subcategory public void AddSubcategory(int categoryId, string name, string instruction) { try { var sub = new Undercategory() { Category_Id = categoryId, Undercategory_name = name, }; sub.Instruks_Veiledning = new Instruks_Veiledning { Inskruks_beskrivelse = instruction }; _dbContext.Undercategory.Add(sub); _dbContext.SaveChanges(); } catch (Exception e) { throw; } }
public void UpdateInstruction_updates_instrutionText_of_undercategory() { var und1 = new Undercategory { Id = 111, Instruks_Veiledning = new Instruks_Veiledning { Inskruks_beskrivelse = "Text original 1" } }; var und2 = new Undercategory { Id = 222, Instruks_Veiledning = new Instruks_Veiledning { Inskruks_beskrivelse = "Text original 2" } }; var underCategories = new List <Undercategory> { und1, und2 }.AsQueryable(); var catMock = new Mock <DbSet <Undercategory> >(); catMock.As <IQueryable <Undercategory> >().Setup(m => m.Provider).Returns(underCategories.Provider); catMock.As <IQueryable <Undercategory> >().Setup(m => m.Expression).Returns(underCategories.Expression); catMock.As <IQueryable <Undercategory> >().Setup(m => m.ElementType).Returns(underCategories.ElementType); catMock.As <IQueryable <Undercategory> >().Setup(m => m.GetEnumerator()).Returns(() => underCategories.GetEnumerator()); var dbMock = new Mock <SvarbotDbSys>(); dbMock.Setup(x => x.Undercategory).Returns(catMock.Object); var dalObject = new AdminDAL(dbMock.Object); dalObject.UpdateInstruction(222, "New Text 2"); Assert.AreEqual(und2.Instruks_Veiledning.Inskruks_beskrivelse, "New Text 2"); }