public void SetViewModelHtmlCorrectly()
        {
            //Arrange
            var mockedView = new Mock <IDefaultView>();

            mockedView.Setup(v => v.Model).Returns(new DefaultViewModel());
            var    mockedPageService         = new Mock <IPageService>();
            var    mockedConverter           = new Mock <IMarkupConverter>();
            var    defaultPresenterUnderTest = new DefaultPresenter(mockedView.Object, mockedPageService.Object, mockedConverter.Object);
            string expectedContent           = "<h1>";
            var    page = new SotnWiki.Models.Page()
            {
                Title   = "aa",
                Content = ".h1"
            };

            mockedConverter.Setup(x => x.ScriptToHtml(It.IsAny <string>())).Returns(expectedContent);
            mockedPageService.Setup(x => x.GetPageByTitle(It.IsAny <string>())).Returns(page);

            //Act
            mockedView.Raise(v => v.OnGetHomePage += null, EventArgs.Empty);

            //Assert
            Assert.AreEqual(expectedContent, mockedView.Object.Model.PageHtml);
        }
        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 SetViewModelTitleCorrectly()
        {
            //Arrange
            var mockedView = new Mock <IPageView>();

            mockedView.Setup(v => v.Model).Returns(new PageViewModel());
            var    mockedPageService      = new Mock <IPageService>();
            var    mockedConverter        = new Mock <IMarkupConverter>();
            var    pagePresenterUnderTest = new PagePresenter(mockedView.Object, mockedPageService.Object, mockedConverter.Object);
            string expectedTitle          = "page title";
            var    page = new SotnWiki.Models.Page()
            {
                Title = expectedTitle
            };

            mockedPageService.Setup(x => x.GetPageByTitle(It.IsAny <string>())).Returns(page);

            //Act
            mockedView.Raise(v => v.OnPageGetContent += null, new PageEventArgs(""));

            //Assert
            Assert.AreEqual(expectedTitle, mockedView.Object.Model.Title);
        }