public void CreateTest() { var mockComSet = new Mock <DbSet <Component> >(); mockComSet.As <IQueryable <Component> >().Setup(m => m.Provider).Returns(Components.Provider); mockComSet.As <IQueryable <Component> >().Setup(m => m.Expression).Returns(Components.Expression); mockComSet.As <IQueryable <Component> >().Setup(m => m.ElementType).Returns(Components.ElementType); mockComSet.As <IQueryable <Component> >().Setup(m => m.GetEnumerator()).Returns(Components.GetEnumerator()); Mock <DatabaseContext> mockContext = new Mock <DatabaseContext>(); mockContext.Setup(x => x.Components).Returns(mockComSet.Object); var controller = new ComponentsController(mockContext.Object); var vModel = new CreateComponentViewmodel(); vModel.Component = new Component(); vModel.Component.ComponentName = "TEST"; vModel.SpecificComponentListAsJson = "[{'ComponentNumber':'1','SerieNr':'a','LoanInformation':null},{'ComponentNumber':'2','SerieNr':'b','LoanInformation':null}]"; var result = controller.Create(vModel); mockComSet.Verify(x => x.Add(It.IsAny <Component>()), Times.Exactly(1)); }
public void EditTest() { var mockComSet = new Mock <DbSet <Component> >(); mockComSet.As <IQueryable <Component> >().Setup(m => m.Provider).Returns(Components.Provider); mockComSet.As <IQueryable <Component> >().Setup(m => m.Expression).Returns(Components.Expression); mockComSet.As <IQueryable <Component> >().Setup(m => m.ElementType).Returns(Components.ElementType); mockComSet.As <IQueryable <Component> >().Setup(m => m.GetEnumerator()).Returns(Components.GetEnumerator()); Mock <DatabaseContext> mockContext = new Mock <DatabaseContext>(); mockContext.Setup(x => x.Components).Returns(mockComSet.Object); var controller = new ComponentsController(mockContext.Object); var vModel = new CreateComponentViewmodel(); vModel.Component = new Component(); vModel.Component.ComponentName = "TEST"; vModel.SpecificComponentListAsJson = "[{'ComponentNumber':'1','SerieNr':'a','LoanInformation':null},{'ComponentNumber':'2','SerieNr':'b','LoanInformation':null}]"; var result = controller.Edit(vModel) as RedirectToRouteResult; mockContext.Verify(x => x.SaveChanges(), Times.Exactly(1)); Assert.IsTrue(result.RouteValues.ContainsValue("Index")); }
public ActionResult Edit(CreateComponentViewmodel componentVm) { if (ModelState.IsValid) { if (componentVm.Image != null) { componentVm.Component.ImageMimeType = componentVm.Image.ContentType; componentVm.Component.Image = new byte[componentVm.Image.ContentLength]; componentVm.Image.InputStream.Read(componentVm.Component.Image, 0, componentVm.Image.ContentLength); } db.Entry(componentVm.Component).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(componentVm)); }
public ActionResult Create(CreateComponentViewmodel componentVm) { if (ModelState.IsValid) { componentVm.Component.SpecificComponent = new List <SpecificComponent>(); if (componentVm.SpecificComponentListAsJson != null) { componentVm.Component.SpecificComponent = new JavaScriptSerializer().Deserialize <List <SpecificComponent> >(componentVm.SpecificComponentListAsJson); } if (componentVm.Image != null) { componentVm.Component.ImageMimeType = componentVm.Image.ContentType; componentVm.Component.Image = new byte[componentVm.Image.ContentLength]; componentVm.Image.InputStream.Read(componentVm.Component.Image, 0, componentVm.Image.ContentLength); } db.Components.Add(componentVm.Component); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(componentVm)); }