Ejemplo n.º 1
0
        public async Task GetTrolleyTotal()
        {
            // Arrange
            var trolleyRequest = new TrolleyRequest
            {
                Products = new List <ProductRequest>
                {
                    new ProductRequest
                    {
                        Name  = "Test A",
                        Price = 14
                    }
                },
                Specials = new List <SpecialRequest>
                {
                    new SpecialRequest
                    {
                        Quantities = new List <QuantityRequest>
                        {
                            new QuantityRequest
                            {
                                Name     = "Test B",
                                Quantity = 1
                            }
                        }
                    }
                },
                Quantities = new List <QuantityRequest>
                {
                    new QuantityRequest
                    {
                        Name       = "Test C"
                        , Quantity = 1
                    }
                }
            };

            _trolleyService.GetTrolleyTotalAsync(trolleyRequest).Returns(Task.FromResult(14m));

            // Act
            var actionResult = await _controller.GetTrolleyTotal(trolleyRequest);

            var result = actionResult.Result as OkObjectResult;
            var total  = (decimal)result.Value;

            // Assert
            Assert.IsAssignableFrom <decimal>(total);
            Assert.Equal(14, total);
        }