public async Task GetPriceAsync_HasFlatPrice_RetrievesPricing()
        {
            var flatPricing = FlatCataloguePriceDtoBuilder.Create().Build();

            var priceResult = CreatePrice(flatPricing);

            _mockMediator.Setup(m =>
                                m.Send(It.Is <GetPriceByPriceIdQuery>(q => q.PriceId == _priceId), It.IsAny <CancellationToken>()))
            .ReturnsAsync(flatPricing);

            var response = await _controller.GetPriceAsync(_priceId);

            response.Value.Should().BeEquivalentTo(priceResult);
        }
        public async Task GetListAsync_HasSingleFlatPricing_RetrievesPricing()
        {
            var flatPricing        = FlatCataloguePriceDtoBuilder.Create().Build();
            var cataloguePriceList = new List <ICataloguePrice> {
                flatPricing
            };

            var priceResult = CreatePrices(cataloguePriceList);

            _mockMediator.Setup(m =>
                                m.Send(It.Is <GetPriceBySolutionIdQuery>(q => q.SolutionId == _solutionId), It.IsAny <CancellationToken>()))
            .ReturnsAsync(cataloguePriceList);

            var response = (await _controller.GetListAsync(_solutionId));

            response.Value.Should().BeEquivalentTo(priceResult);
        }
Exemple #3
0
        public async Task GetListByCatalogueItemId_HasMultipleFlatAndTieredPricing_RetrievesPricing()
        {
            var flatPricing        = FlatCataloguePriceDtoBuilder.Create().Build();
            var tieredPricing      = TieredCataloguePriceDtoBuilder.Create().Build();
            var cataloguePriceList = new List <ICataloguePrice> {
                flatPricing, tieredPricing
            };

            var priceResult = CreatePricesForQueryingByCatalogueItemId(cataloguePriceList);

            mockMediator
            .Setup(m => m.Send(It.Is <GetPricesQuery>(q => q.CatalogueItemId == SolutionId), It.IsAny <CancellationToken>()))
            .ReturnsAsync(cataloguePriceList);

            var response = await controller.GetPricesAsync(SolutionId);

            response.Value.Should().BeEquivalentTo(priceResult);
        }