public async Task Create_WhenCalled_CreateCustomerInDbAndRedirectToIndex() { // Arrange var model = new RestaurantCreateViewModel { Name = "Serving You", Phone = "02 1111 2222", Email = "*****@*****.**", Description = "Fantastic Restaurant", Postcode = "2000", StateCode = "NSW", Unit = "1", Street = "Queen", Town = "Sydney", //DateCreated = new DateTime(2020, 11, 1) }; // Act var result = await controller.Create(model) as RedirectToActionResult; // Assert repository.Verify(r => r.Add(It.IsAny <Restaurant>()), Times.Once); unitOfWork.Verify(u => u.CompleteAsync(), Times.Once); Assert.That(result.ActionName, Is.EqualTo("index").IgnoreCase); }
public async Task Create_AddRestaurant_AddedRestaurantReturned() { // Arrange var newRestaurant = new RestaurantDto() { Name = Common.RestaurantName }; var resultRestaurant = new RestaurantDto() { Id = 1, Name = Common.RestaurantName }; var mock = new Mock <IRestaurantManagementService>(); mock.Setup(rmService => rmService.AddRestaurantAsync(It.IsAny <RestaurantDto>())) .Returns(Task.FromResult(resultRestaurant)); var loggerMock = new Mock <ILogger <RestaurantsController> >(); var controller = new RestaurantsController(mock.Object, loggerMock.Object); // Act var result = await controller.Create(newRestaurant); // Assert var actionResult = Assert.IsType <CreatedAtRouteResult>(result); Assert.Equal(resultRestaurant, actionResult?.Value); }
public void Create_Saves_Restaurant_When_Valid() { var db = new FakeOdeToFoodDb(); var controller = new RestaurantsController(db); controller.Create(new Restaurant()); Assert.AreEqual(1, db.Added.Count); Assert.AreEqual(true, db.Saved); }
public void Create_Does_Not_Save_Restaurant_When_Invalid() { var db = new FakeOdeToFoodDb(); var controller = new RestaurantsController(db); controller.ModelState.AddModelError("", "Invalid"); controller.Create(new Restaurant()); Assert.AreEqual(0, db.Added.Count); }
public void Create() { // Arrange RestaurantsController controller = new RestaurantsController(); // Act ViewResult result = controller.Create() as ViewResult; // Assert Assert.IsNotNull(result); }
public void TestRestaurantsCreate() { //Arrange FakeRestaurantRepository fakeRestaurantRepository = new FakeRestaurantRepository(); FakeReviewRepository fakeReviewRepository = new FakeReviewRepository(); RestaurantsController controller = new RestaurantsController(fakeRestaurantRepository, fakeReviewRepository); //Act var result = controller.Create() as ViewResult; //Assert Assert.IsNotNull(result); }
public void CreateTest() { //Arrange var mockControllerContext = new Mock <ControllerContext>(); var mockSession = new Mock <HttpSessionStateBase>(); mockSession.SetupGet(s => s["RoleId"]).Returns("2"); mockControllerContext.Setup(p => p.HttpContext.Session).Returns(mockSession.Object); RestaurantsController restaurantsController = new RestaurantsController(); restaurantsController.ControllerContext = mockControllerContext.Object; //Act RedirectToRouteResult redirectResult = (RedirectToRouteResult)restaurantsController.Create(); string result = redirectResult.RouteValues["action"].ToString(); //Assert Assert.AreEqual(result, "Login"); }
public async Task Create_AddRestaurantWithoutName_BadRequest() { // Arrange var newRestaurant = new RestaurantDto() { Name = null }; var mock = new Mock <IRestaurantManagementService>(); var loggerMock = new Mock <ILogger <RestaurantsController> >(); var controller = new RestaurantsController(mock.Object, loggerMock.Object); controller.ModelState.AddModelError("Name", "Required"); // Act var result = await controller.Create(newRestaurant); // Assert Assert.Equal(typeof(BadRequestObjectResult), result.GetType()); }
public async Task Create_AddRestaurantCityIdLessOne_BadRequest() { // Arrange var newRestaurant = new RestaurantDto() { Name = Common.RestaurantName, CityId = Common.BadCityId }; var mock = new Mock <IRestaurantManagementService>(); var loggerMock = new Mock <ILogger <RestaurantsController> >(); var controller = new RestaurantsController(mock.Object, loggerMock.Object); controller.ModelState.AddModelError("CityId", "MustMoreZero"); // Act var result = await controller.Create(newRestaurant); // Assert Assert.Equal(typeof(BadRequestObjectResult), result.GetType()); }