コード例 #1
0
 private static void SetupMediator(GetArticleQueryResult <Domain.Content.Article> mediatorResult, Mock <IMediator> mockMediator, bool preview)
 {
     mockMediator.Setup(o => o.Send(It.Is <GetArticleQuery>(r =>
                                                            r.Hub == HubName &&
                                                            r.Slug == SlugName &&
                                                            r.Preview == preview), It.IsAny <CancellationToken>()))
     .ReturnsAsync(mediatorResult);
 }
コード例 #2
0
        public async Task And_Is_Preview_Then_Given_Valid_Hub_And_Slug_Then_The_Page_Is_Returned(
            GetArticleQueryResult <Domain.Content.Article> mediatorResult, [Frozen] Mock <IMediator> mockMediator,
            [Greedy] ArticleController controller)
        {
            SetupMediator(mediatorResult, mockMediator, true);

            var controllerResult = await InstantiateController <ViewResult>(controller, true);

            controllerResult.AssertThatTheObjectResultIsValid();
            controllerResult.AssertThatTheObjectValueIsValid <Page <Domain.Content.Article> >();
            controllerResult.AssertThatTheReturnedViewIsCorrect("~/Views/CMS/Article.cshtml");
        }
コード例 #3
0
        public async Task And_Given_Valid_Hub_And_Slug_Then_The_Page_Is_Returned(
            GetArticleQueryResult <Domain.Content.Article> mediatorResult, [Frozen] Mock <IMediator> mockMediator,
            [Greedy] ArticleController controller)
        {
            SetupMediator(mediatorResult, mockMediator, false);

            var controllerResult = await InstantiateController <ViewResult>(controller);

            controllerResult.AssertThatTheObjectResultIsValid();
            controllerResult.AssertThatTheObjectValueIsValid <Page <Domain.Content.Article> >();
            controllerResult.AssertThatTheReturnedViewIsCorrect("~/Views/CMS/Article.cshtml");
            mockMediator.Verify(o => o.Send(It.IsAny <GetSiteMapQuery>(), It.IsAny <CancellationToken>()), Times.Never);
        }