public void TestCreateGetReturnsViewWithExpectedValues2() { #region Arrange var surveys = new List<Survey>(); for (int i = 0; i < 3; i++) { surveys.Add(CreateValidEntities.Survey(i + 1)); } var categories = new List<Category>(); for (int i = 0; i < 4; i++) { categories.Add(CreateValidEntities.Category(i + 1)); categories[i].Survey = surveys[2]; categories[i].Rank = 10 - i; } categories[1].IsCurrentVersion = false; surveys[2].Categories = categories; var fakeSurveys = new FakeSurveys(); fakeSurveys.Records(0, SurveyRepository, surveys); #endregion Arrange #region Act var result = Controller.Create(3) .AssertViewRendered() .WithViewData<CategoryViewModel>(); #endregion Act #region Assert Assert.IsNotNull(result); Assert.AreEqual(3, result.Survey.Id); Assert.IsTrue(result.Category.IsTransient()); Assert.AreEqual(11, result.Category.Rank); #endregion Assert }
public void TestCreateGetRedirectsToIndexIfSurveyIdNotFound() { #region Arrange var fakeSurveys = new FakeSurveys(); fakeSurveys.Records(3, SurveyRepository); #endregion Arrange #region Act Controller.Create(4) .AssertActionRedirect() .ToAction<SurveyController>(a => a.Index()); #endregion Act #region Assert #endregion Assert }
public void TestCreateGetReturnsViewWithExpectedValues1() { #region Arrange var fakeSurveys = new FakeSurveys(); fakeSurveys.Records(3, SurveyRepository); #endregion Arrange #region Act var result = Controller.Create(3) .AssertViewRendered() .WithViewData<CategoryViewModel>(); #endregion Act #region Assert Assert.IsNotNull(result); Assert.AreEqual(3, result.Survey.Id); Assert.IsTrue(result.Category.IsTransient()); Assert.AreEqual(1, result.Category.Rank); #endregion Assert }
public void TestCreatePostRedirectsToEditWhenSuccessful() { #region Arrange var fakeSurveys = new FakeSurveys(); fakeSurveys.Records(3, SurveyRepository); var category = CreateValidEntities.Category(2); category.Survey = null; category.Rank = 999; #endregion Arrange #region Act Controller.Create(3, category) .AssertActionRedirect() .ToAction<CategoryController>(a => a.Edit(3)); #endregion Act #region Assert CategoryRepository.AssertWasCalled(a => a.EnsurePersistent(Arg<Category>.Is.Anything)); var args = (Category) CategoryRepository.GetArgumentsForCallsMadeOn(a => a.EnsurePersistent(Arg<Category>.Is.Anything))[0][0]; Assert.IsNotNull(args); Assert.AreEqual("Affirmation2", args.Affirmation); Assert.AreEqual("Encouragement2", args.Encouragement); Assert.AreEqual("Name2", args.Name); Assert.AreEqual(3, args.Survey.Id); Assert.IsFalse(args.IsActive); Assert.IsTrue(args.IsCurrentVersion); Assert.IsNull(args.PreviousVersion); Assert.AreEqual(DateTime.Now.Date, args.CreateDate.Date); Assert.AreEqual(DateTime.Now.Date, args.LastUpdate.Date); Assert.IsFalse(args.DoNotUseForCalculations); Assert.AreEqual(1, args.Rank); #endregion Assert }
public void TestCreatePostReturnsViewIfCategoryInvalid() { #region Arrange var fakeSurveys = new FakeSurveys(); fakeSurveys.Records(3, SurveyRepository); var category = CreateValidEntities.Category(2); category.Encouragement = null; //Force Fail category.Survey = null; category.Rank = 999; #endregion Arrange #region Act var result = Controller.Create(3, category) .AssertViewRendered() .WithViewData<CategoryViewModel>(); #endregion Act #region Assert Assert.IsNotNull(result); Controller.ModelState.AssertErrorsAre("The Encouragement field is required."); Assert.AreEqual(DateTime.Now.Date, result.Category.CreateDate.Date); Assert.AreEqual(DateTime.Now.Date, result.Category.LastUpdate.Date); Assert.AreEqual(3, result.Category.Survey.Id); Assert.AreNotEqual(999, result.Category.Rank); CategoryRepository.AssertWasNotCalled(a => a.EnsurePersistent(Arg<Category>.Is.Anything)); #endregion Assert }