Exemplo n.º 1
0
        public void Should_Save_EditSeoViewModel_And_Return_Success_Flag()
        {
            Mock <IRedirectService>   redirectService        = new Mock <IRedirectService>();
            Mock <IPageService>       pageService            = new Mock <IPageService>();
            Mock <ISitemapService>    sitemapService         = new Mock <ISitemapService>();
            Mock <ISecurityService>   securityService        = new Mock <ISecurityService>();
            Mock <IUrlService>        urlService             = new Mock <IUrlService>();
            Mock <SavePageSeoCommand> savePageSeoCommandMock = new Mock <SavePageSeoCommand>(redirectService.Object, pageService.Object, sitemapService.Object, urlService.Object);

            savePageSeoCommandMock.SetupGet(x => x.SecurityService).Returns(securityService.Object);
            savePageSeoCommandMock.Setup(f => f.Execute(It.IsAny <EditSeoViewModel>())).Returns(new EditSeoViewModel()).Verifiable();

            SeoController seoController = new SeoController();

            seoController.CommandResolver = GetMockedCommandResolver(mock =>
            {
                mock.Setup(resolver => resolver.ResolveCommand <SavePageSeoCommand>(It.IsAny <ICommandContext>())).Returns(() => savePageSeoCommandMock.Object);
            });

            ActionResult result = seoController.EditSeo(new EditSeoViewModel());

            Assert.IsNotNull(result);
            Assert.IsInstanceOf <JsonResult>(result);

            JsonResult viewResult = (JsonResult)result;

            Assert.IsNotNull(viewResult.Data);

            Assert.IsInstanceOf <WireJson>(viewResult.Data);
            WireJson wireJson = (WireJson)viewResult.Data;

            Assert.IsTrue(wireJson.Success);

            savePageSeoCommandMock.Verify(f => f.Execute(It.IsAny <EditSeoViewModel>()), Times.Once());
        }
Exemplo n.º 2
0
        public void Should_Try_To_Save_EditSeoViewModel_And_Return_Error_Flag()
        {
            SeoController seoController = new SeoController();

            seoController.ModelState.AddModelError("PageTitle", "Page title required.");

            ActionResult result = seoController.EditSeo(new EditSeoViewModel());

            Assert.IsNotNull(result);
            Assert.IsInstanceOf <JsonResult>(result);

            JsonResult viewResult = (JsonResult)result;

            Assert.IsNotNull(viewResult.Data);

            Assert.IsInstanceOf <WireJson>(viewResult.Data);
            WireJson wireJson = (WireJson)viewResult.Data;

            Assert.IsFalse(wireJson.Success);
        }