public void Create_Event_Build_ViewModel_Fail() { //Arrange A.CallTo(() => PersonRepo.GetAll()).Returns(null); var contoller = new EventController(RepositoryFactory, EventService, UserService, NotifyService); //Act var result = contoller.Create() as ViewResult; //Assert Assert.AreEqual(result.ViewBag.StatusMessage, Constants.BASE_BUILD_VIEW_FAIL); }
public void Create_Event_Fail() { //Arrange var contoller = new EventController(RepositoryFactory, EventService, UserService, NotifyService); //Act var result = contoller.Create(new EditEventViewModel()) as RedirectToRouteResult; //Assert Assert.AreEqual(result.RouteValues["action"], "Index"); Assert.AreEqual(result.RouteValues["controller"], "Home"); Assert.AreEqual(result.RouteValues["message"].ToString(), "SaveModelFailed"); }
public void Create_Event_Build_ViewModel_Success() { //Arrange var thePerson = new Person { PersonId = 1, UserName = "******", FirstName = "Joe", LastName = "Smith", MyRegisteredFriends = new List<Person>(), MyUnRegisteredFriends = new List<PendingInvitation>(), MyFoodItems = new List<FoodItem>(), MyGames = new List<Game>() }; A.CallTo(() => UserService.GetCurrentUserId("")).Returns(1); A.CallTo(() => PersonRepo.GetAll()).Returns(new List<Person> { thePerson }.AsQueryable()); var contoller = new EventController(RepositoryFactory, EventService, UserService, NotifyService); //Act var result = contoller.Create() as ViewResult; //Assert Assert.AreEqual(result.ViewBag.StatusMessage, null); }
public void Create_Event_ModelState_Not_Valid() { //Arrange var viewModel = new EditEventViewModel(); var contoller = new EventController(RepositoryFactory, EventService, UserService, NotifyService); var modelBinder = new ModelBindingContext { ModelMetadata = ModelMetadataProviders.Current.GetMetadataForType(() => viewModel, viewModel.GetType()), ValueProvider = new NameValueCollectionValueProvider(new NameValueCollection(), CultureInfo.InvariantCulture) }; var binder = new DefaultModelBinder().BindModel(new ControllerContext(), modelBinder); contoller.ModelState.Clear(); contoller.ModelState.Merge(modelBinder.ModelState); //Act var result = contoller.Create(viewModel) as ViewResult; //Assert Assert.AreEqual(result.ViewData.ModelState.Count, 6); Assert.IsFalse(result.ViewData.ModelState.IsValid); }
public void Create_Event_Success() { //Arrange var viewModel = GetTestEventViewModel(); var expectedDataModel = GetTestEventDataModel(); var contoller = new EventController(RepositoryFactory, EventService, UserService, NotifyService); A.CallTo(() => PersonRepo.GetAll()).Returns(new List<Person> {new Person {PersonId = 1}}.AsQueryable()); //Act var result = contoller.Create(viewModel) as RedirectToRouteResult; //Assert //That the data model being passed to the repository is what we expect. A.CallTo(() => EventRepo.Insert(A<Event>._)).MustHaveHappened(); A.CallTo(() => EventRepo.SubmitChanges()).MustHaveHappened(); //That the route values are what we expect. Assert.AreEqual(result.RouteValues["action"], "Index"); Assert.AreEqual(result.RouteValues["controller"], "Home"); Assert.AreEqual(result.RouteValues["message"].ToString(), "SaveModelSuccess"); }