Beispiel #1
0
        public async Task Then_If_Error_Then_Internal_Server_Error_Response(
            string productId,
            [Frozen] Mock <IMediator> mediator,
            [Greedy] ProductsController controller)
        {
            mediator.Setup(x => x.Send(It.IsAny <GetApiProductQuery>(),
                                       CancellationToken.None)).ThrowsAsync(new Exception());

            var actual = await controller.GetApiProduct(productId) as StatusCodeResult;

            Assert.IsNotNull(actual);
            actual.StatusCode.Should().Be((int)HttpStatusCode.InternalServerError);
        }
Beispiel #2
0
        public async Task Then_If_Null_Returned_Then_Not_Found_Result_Returned(
            string productId,
            GetApiProductQueryResult mediatorResult,
            [Frozen] Mock <IMediator> mediator,
            [Greedy] ProductsController controller)
        {
            mediator.Setup(x => x.Send(It.IsAny <GetApiProductQuery>(),
                                       CancellationToken.None)).ReturnsAsync(new GetApiProductQueryResult
            {
                Product = null
            });

            var actual = await controller.GetApiProduct(productId) as StatusCodeResult;

            Assert.IsNotNull(actual);
            actual.StatusCode.Should().Be((int)HttpStatusCode.NotFound);
        }
Beispiel #3
0
        public async Task Then_The_Request_Is_Handled_And_Data_Returned(
            string productId,
            GetApiProductQueryResult mediatorResult,
            [Frozen] Mock <IMediator> mediator,
            [Greedy] ProductsController controller)
        {
            mediator.Setup(x => x.Send(It.Is <GetApiProductQuery>(c =>
                                                                  c.ProductName.Equals(productId)
                                                                  ),
                                       CancellationToken.None)).ReturnsAsync(mediatorResult);

            var actual = await controller.GetApiProduct(productId) as OkObjectResult;

            Assert.IsNotNull(actual);
            var actualModel = actual.Value as ProductApiResponseItem;

            actualModel.Should().BeEquivalentTo(mediatorResult.Product);
        }