public void AddGraduation_Post_Test() { // Act var uow = new UnitOfWorkFakeFactory().Uow.Object; var paramUser = new GraduationModel() { ObtainingDateTime = new DateTime(2010, 9, 1), Texts = new List <TextModel>() { new TextModel() { Language = uow.LanguagesRepository.Get().ToList()[0], Value = "Graduation.fr" }, new TextModel() { Language = uow.LanguagesRepository.Get().ToList()[1], Value = "Graduation.en" } } }; var expected = paramUser.ToDto(uow.LanguagesRepository.Get().ToList()); expected.Id = uow.GradesRepository.Get().Count() + 1; var nbGrades = uow.GradesRepository.Get().ToList().Count; var result = new IntroductionController(uow).AddGraduation(paramUser) as RedirectToRouteResult; // Assert Assert.IsNotNull(result); Assert.AreEqual(result.RouteValues["Action"], nameof(IntroductionController.ShowGraduations)); Assert.AreEqual(nbGrades + 1, uow.GradesRepository.Get().Count()); AssertExtension.PropertyValuesAreEquals(expected, uow.GradesRepository.Get().Last()); }
public ActionResult AddGraduation(GraduationModel model) { if (ModelState.IsValid) { _uow.GradesRepository.Insert(model.ToDto(_uow.LanguagesRepository.Get().ToList())); _uow.Save(); return(RedirectToAction(nameof(ShowGraduations))); } return(RedirectToAction(nameof(AddGraduation))); }
public void Should_Transform_GraduationModel_To_Graduation() { var expected = new Grade() { Id = 1, ObtainingDateTime = new DateTime(2000, 1, 1), Texts = new List <Text>() { new Text() { Language = _languages[0], Value = "txt1" }, new Text() { Language = _languages[1], Value = "txt2" } } }; var act = new GraduationModel() { ObtainingDateTime = new DateTime(2000, 1, 1), Texts = new List <TextModel>() { new TextModel() { Language = _languages[0], Value = "txt1" }, new TextModel() { Language = _languages[1], Value = "txt2" } } }; Assert.AreEqual(expected.ObtainingDateTime, act.ToDto(_languages).ObtainingDateTime); AssertExtension.CompareIEnumerable(expected.Texts, act.ToDto(_languages).Texts, (x, y) => x.Language == y.Language && x.Value == y.Value); }