public void RedirectToSubmissionsPage() { //Arrange var mockedView = new Mock <IPublishView>(); mockedView.Setup(v => v.Model).Returns(new PublishViewModel()); var mockedPageService = new Mock <IPageService>(); var pagePresenterUnderTest = new PublishPresenter(mockedView.Object, mockedPageService.Object); var mockedHttpContext = new Mock <HttpContextBase>(); var mockedHttpResponseBase = new Mock <HttpResponseBase>(); pagePresenterUnderTest.HttpContext = mockedHttpContext.Object; mockedHttpContext.Setup(x => x.Response).Returns(mockedHttpResponseBase.Object); //Act mockedView.Raise(v => v.OnDismissPage += null, new PageEventArgs("")); //Assert mockedHttpResponseBase.Verify(x => x.Redirect("~/submissions"), Times.Once); }
public void CallPublishPageMethodOfPageService() { //Arrange var mockedView = new Mock <IPublishView>(); mockedView.Setup(v => v.Model).Returns(new PublishViewModel()); var mockedPageService = new Mock <IPageService>(); var pagePresenterUnderTest = new PublishPresenter(mockedView.Object, mockedPageService.Object); var mockedHttpContext = new Mock <HttpContextBase>(); var mockedHttpResponseBase = new Mock <HttpResponseBase>(); pagePresenterUnderTest.HttpContext = mockedHttpContext.Object; mockedHttpContext.Setup(x => x.Response).Returns(mockedHttpResponseBase.Object); //Act mockedView.Raise(v => v.OnPublishPage += null, new PublishEventArgs("", "")); //Assert mockedPageService.Verify(x => x.PublishPage(It.IsAny <string>(), It.IsAny <string>()), Times.Once); }
public void RedirectToPublishedPage() { //Arrange var mockedView = new Mock <IPublishView>(); mockedView.Setup(v => v.Model).Returns(new PublishViewModel()); var mockedPageService = new Mock <IPageService>(); var pagePresenterUnderTest = new PublishPresenter(mockedView.Object, mockedPageService.Object); var mockedHttpContext = new Mock <HttpContextBase>(); var mockedHttpResponseBase = new Mock <HttpResponseBase>(); pagePresenterUnderTest.HttpContext = mockedHttpContext.Object; mockedHttpContext.Setup(x => x.Response).Returns(mockedHttpResponseBase.Object); string title = "test-title"; //Act mockedView.Raise(v => v.OnPublishPage += null, new PublishEventArgs(title, "")); //Assert mockedHttpResponseBase.Verify(x => x.Redirect(string.Format("~/page?title={0}", title)), Times.Once); }
public void SetViewModelContentCorrectly() { //Arrange var mockedView = new Mock <IPublishView>(); mockedView.Setup(v => v.Model).Returns(new PublishViewModel()); var mockedPageService = new Mock <IPageService>(); var publishPresenterUnderTest = new PublishPresenter(mockedView.Object, mockedPageService.Object); string expectedContent = "edit content"; var page = new SotnWiki.Models.Page() { Content = expectedContent }; mockedPageService.Setup(x => x.GetSubmissionByTitle(It.IsAny <string>())).Returns(page); //Act mockedView.Raise(v => v.OnPageGetContent += null, new PageEventArgs("")); //Assert Assert.AreEqual(expectedContent, mockedView.Object.Model.Content); }
public void SetHttpResponseTo404WhenPageIsNotFound() { //Arrange var mockedView = new Mock <IPublishView>(); mockedView.Setup(v => v.Model).Returns(new PublishViewModel()); var mockedPageService = new Mock <IPageService>(); var publishPresenterUnderTest = new PublishPresenter(mockedView.Object, mockedPageService.Object); mockedPageService.Setup(x => x.GetPageByTitle(It.IsAny <string>())).Returns((SotnWiki.Models.Page)null); var mockedHttpContext = new Mock <HttpContextBase>(); var mockedHttpResponseBase = new Mock <HttpResponseBase>(); publishPresenterUnderTest.HttpContext = mockedHttpContext.Object; mockedHttpContext.Setup(x => x.Response).Returns(mockedHttpResponseBase.Object); mockedHttpResponseBase.SetupSet(x => x.StatusCode = 404).Verifiable(); mockedHttpResponseBase.SetupSet(x => x.Status = "404 not found").Verifiable(); //Act mockedView.Raise(v => v.OnPageGetContent += null, new PageEventArgs("")); //Assert mockedHttpResponseBase.Verify(); }