public void Details_When_No_Region_Found() { // arrange var serviceMock = new Mock <IRegionService>(MockBehavior.Strict); var tempDataMock = new Mock <ITempDataDictionary>(); var controller = new RegionController(serviceMock.Object) { TempData = tempDataMock.Object }; int id = 1; serviceMock.Setup(s => s.GetByIdAsync(id)).ReturnsAsync((RegionDetailsServiceModel)null); // act var result = controller.Details(id); // assert Assert.IsAssignableFrom <RedirectToActionResult>(result.Result); var actionName = (result.Result as RedirectToActionResult)?.ActionName; Assert.True(actionName != null && actionName.Equals(nameof(RegionController.All), StringComparison.InvariantCultureIgnoreCase)); serviceMock.VerifyAll(); }
public void DetailsWithReturnOfOneRegions() { var mockRepo = new Mock <IRegionService>(); var Id = 1; var inputModel = GetTestRegions().SingleOrDefault(x => x.RegionId == Id); mockRepo.Setup(repo => repo.GetDetail(Id)).Returns(inputModel); var logger = Mock.Of <ILogger <RegionController> >(); var controller = new RegionController(logger, mockRepo.Object); var result = controller.Details(Id); var viewResult = Assert.IsType <ViewResult>(result); Assert.NotNull(viewResult); var model = Assert.IsAssignableFrom <RegionModel>(viewResult.ViewData.Model); Assert.Equal(model, inputModel); }
public void Details_When_Region_Found() { // arrange var serviceMock = new Mock <IRegionService>(MockBehavior.Strict); var controller = new RegionController(serviceMock.Object); int id = 1; var serviceResult = new RegionDetailsServiceModel(); serviceMock.Setup(s => s.GetByIdAsync(id)).ReturnsAsync(serviceResult); // act var result = controller.Details(id); // assert Assert.IsAssignableFrom <ViewResult>(result.Result); var model = (result.Result as ViewResult)?.Model; Assert.True(model != null); Assert.IsAssignableFrom <RegionDetailsServiceModel>(model); Assert.True((RegionDetailsServiceModel)model == serviceResult); serviceMock.VerifyAll(); }