コード例 #1
0
        public void SetHttpResponseTo404WhenContentSubmissionIsNotFound()
        {
            //Arrange
            var mockedView = new Mock <IPublishEditView>();

            mockedView.Setup(v => v.Model).Returns(new PublishEditViewModel());
            var mockedPageService = new Mock <IPageService>();
            var mockedContentSubmissionService = new Mock <IContentSubmissionService>();
            var pagePresenterUnderTest         = new PublishEditPresenter(mockedView.Object, mockedPageService.Object, mockedContentSubmissionService.Object);

            mockedPageService.Setup(x => x.GetPageByTitle(It.IsAny <string>())).Returns((SotnWiki.Models.Page)null);
            mockedContentSubmissionService.Setup(x => x.GetPageContentSubmissionById(It.IsAny <Guid>())).Returns((PageContentSubmission)null);
            var mockedHttpContext      = new Mock <HttpContextBase>();
            var mockedHttpResponseBase = new Mock <HttpResponseBase>();

            pagePresenterUnderTest.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 IdEventArgs(Guid.NewGuid(), ""));

            //Assert
            mockedHttpResponseBase.Verify();
        }
コード例 #2
0
        public void CallPublishEditMEthodOfContentSubmissionService()
        {
            //Arrange
            var mockedView = new Mock <IPublishEditView>();

            mockedView.Setup(v => v.Model).Returns(new PublishEditViewModel());
            var mockedPageService = new Mock <IPageService>();
            var mockedContentSubmissionService = new Mock <IContentSubmissionService>();
            var pagePresenterUnderTest         = new PublishEditPresenter(mockedView.Object, mockedPageService.Object, mockedContentSubmissionService.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.OnSubmitPageEdit += null, new PublishEditEventArgs("title", "content", Guid.NewGuid()));

            //Assert
            mockedContentSubmissionService.Verify(x => x.PublishEdit(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <Guid>()), Times.Once);
        }
コード例 #3
0
        public void RedirectToTheParentPageOfTheContentSubmission()
        {
            //Arrange
            var mockedView = new Mock <IPublishEditView>();

            mockedView.Setup(v => v.Model).Returns(new PublishEditViewModel());
            var mockedPageService = new Mock <IPageService>();
            var mockedContentSubmissionService = new Mock <IContentSubmissionService>();
            var pagePresenterUnderTest         = new PublishEditPresenter(mockedView.Object, mockedPageService.Object, mockedContentSubmissionService.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.OnSubmitPageEdit += null, new PublishEditEventArgs(title, "content", Guid.NewGuid()));

            //Assert
            mockedHttpResponseBase.Verify(x => x.Redirect(string.Format("~/page?title={0}", title)), Times.Once);
        }
コード例 #4
0
        public void SetViewModelHtmlCorrectly()
        {
            //Arrange
            var mockedView = new Mock <IPublishEditView>();

            mockedView.Setup(v => v.Model).Returns(new PublishEditViewModel());
            var    mockedPageService = new Mock <IPageService>();
            var    mockedContentSubmissionService = new Mock <IContentSubmissionService>();
            var    defaultPresenterUnderTest      = new PublishEditPresenter(mockedView.Object, mockedPageService.Object, mockedContentSubmissionService.Object);
            string expectedTitle     = "page title";
            string expectedContent   = "edit content";
            var    contentSubmission = new PageContentSubmission()
            {
                Content = expectedContent
            };

            mockedContentSubmissionService.Setup(x => x.GetPageContentSubmissionById(It.IsAny <Guid>())).Returns(contentSubmission);

            //Act
            mockedView.Raise(v => v.OnPageGetContent += null, new IdEventArgs(Guid.NewGuid(), expectedTitle));

            //Assert
            Assert.AreEqual(expectedContent, mockedView.Object.Model.Content);
        }