public void GetSkillsPartialView_ReturnPartialView_WithCorrectModel() { //Arrange var technologies = new List <Technology>() { new Technology(), new Technology() }; var technologyLogicMock = new Mock <ITechnologyLogic>(); technologyLogicMock.Setup(logic => logic.GetTechnologiesToShowInAboutMePage()).Returns(technologies); var aboutMeLogicMock = new Mock <IAboutMeLogic>(); AboutMeController controllerUnderTests = new AboutMeController(aboutMeLogicMock.Object, technologyLogicMock.Object); //Act var result = controllerUnderTests.GetSkillsPartialView(); //Assert var partialViewResult = Assert.IsType <PartialViewResult>(result); var model = Assert.IsType <List <Technology> >(partialViewResult.Model); Assert.Equal(technologies.Count, model.Count); }
public AboutMeControllerTests() { IQueryable <AboutMe> aboutMes = _aboutMe.AsQueryable(); _mockSet.As <IQueryable <AboutMe> >().Setup(m => m.Provider).Returns(aboutMes.Provider); _mockSet.As <IQueryable <AboutMe> >().Setup(m => m.Expression).Returns(aboutMes.Expression); _mockSet.As <IQueryable <AboutMe> >().Setup(m => m.ElementType).Returns(aboutMes.ElementType); _mockSet.As <IQueryable <AboutMe> >().Setup(m => m.GetEnumerator()).Returns(() => aboutMes.GetEnumerator()); _mockSet.Setup(d => d.Add(It.IsAny <AboutMe>())).Callback <AboutMe>((s) => _aboutMe.Add(s)); _mockSet.Setup(d => d.Remove(It.IsAny <AboutMe>())).Callback <AboutMe>((s) => _aboutMe.Remove(s)); _dbMock.Setup(x => x.SaveChanges()).Returns(1).Verifiable(); _dbMock.Setup(x => x.AboutMe).Returns(_mockSet.Object); IRepository <AboutMe, int> repository = new AboutMeRepository(_dbMock.Object); _controller = new AboutMeController(repository); Mapper.Initialize(config => { config.CreateMap <AboutMeViewModel, AboutMe>().ReverseMap(); config.CreateMap <ContactViewModel, Contact>().ReverseMap(); config.CreateMap <UpdateViewModel, ApplicationUser>().ReverseMap(); }); }
public void GetTechnologiesToShowInAboutMePage() { var modelToReturn = new List <Technology>() { new Technology(), new Technology() }; //Arrange var technologyLogicMock = new Mock <ITechnologyLogic>(); technologyLogicMock.Setup(logic => logic.GetTechnologiesToShowInAboutMePage()).Returns(modelToReturn); var aboutMeLogicMock = new Mock <IAboutMeLogic>(); AboutMeController controllerUnderTests = new AboutMeController(aboutMeLogicMock.Object, technologyLogicMock.Object); //Act var result = controllerUnderTests.GetTechnologiesToShowInAboutMePage(); //Assert var jsonResult = Assert.IsType <string>(result); var technologies = JsonConvert.DeserializeObject <List <Technology> >(jsonResult); Assert.Equal(modelToReturn.Count, technologies.Count); }
public async Task Index_ReturnsAViewResult_WithAboutMeModel() { //Arrange var technologyLogicMock = new Mock <ITechnologyLogic>(); var aboutMeLogicMock = new Mock <IAboutMeLogic>(); var modelToReturn = new AboutMe() { AboutMeId = 1, ImageLink = "link", Title = "Title", Text = "Text" }; aboutMeLogicMock.Setup(logic => logic.GetAboutMeAsync()).ReturnsAsync(modelToReturn); AboutMeController controllerUnderTests = new AboutMeController(aboutMeLogicMock.Object, technologyLogicMock.Object); //Act var result = await controllerUnderTests.Index(); //Assert var viewResult = Assert.IsType <ViewResult>(result); var returnedModel = Assert.IsAssignableFrom <AboutMe>(viewResult.ViewData.Model); ComparisonResult res = MyComparer.Compare(modelToReturn, returnedModel); Assert.True(res.AreEqual); }
public async Task Index_RedirectToErrorPage_WhenModelIsNull() { //Arrange var technologyLogicMock = new Mock <ITechnologyLogic>(); var aboutMeLogicMock = new Mock <IAboutMeLogic>(); aboutMeLogicMock.Setup(logic => logic.GetAboutMeAsync()).ReturnsAsync((AboutMe)null); AboutMeController controllerUnderTests = new AboutMeController(aboutMeLogicMock.Object, technologyLogicMock.Object); //Act var result = await controllerUnderTests.Index(); //Assert var viewResult = Assert.IsType <ViewResult>(result); Assert.Equal("Error", viewResult.ViewName); }
public void GetSkillsPartialView_ReturnPartialView_WithEmptyModel_WhenLogicReturnNull() { //Arrange var technologyLogicMock = new Mock <ITechnologyLogic>(); technologyLogicMock.Setup(logic => logic.GetTechnologiesToShowInAboutMePage()).Returns((List <Technology>)null); var aboutMeLogicMock = new Mock <IAboutMeLogic>(); AboutMeController controllerUnderTests = new AboutMeController(aboutMeLogicMock.Object, technologyLogicMock.Object); //Act var result = controllerUnderTests.GetSkillsPartialView(); //Assert var partialViewResult = Assert.IsType <PartialViewResult>(result); var model = Assert.IsType <List <Technology> >(partialViewResult.Model); Assert.Empty(model); }
public async Task Update_ShouldReturnSuccess_WhenSelectedTechnologiesAreNotNull_AndAboutMeIsNotNull() { //Arrange var technologyLogicMock = new Mock <ITechnologyLogic>(); technologyLogicMock.Setup(logic => logic.UpdateShowInAboutMeTechnologiesAsync(It.IsAny <List <int> >())).ReturnsAsync(true); var aboutMeLogicMock = new Mock <IAboutMeLogic>(); aboutMeLogicMock.Setup(logic => logic.UpdateAboutMeAsync(It.IsAny <AboutMe>())).ReturnsAsync(true); AboutMeController controllerUnderTests = new AboutMeController(aboutMeLogicMock.Object, technologyLogicMock.Object); //Act var result = await controllerUnderTests.Update(new AboutMe(), new List <int>()); //Assert var jsonResult = Assert.IsType <JsonResult>(result); dynamic jsonResultData = jsonResult.Data; Assert.Equal(jsonResultData.success, true); }