public async Task GetMappedCalculationsOfSpecificationTemplate_TemplateMappingExistsInCache_TemplateMappingItemsReturned() { //Arrange ILogger logger = CreateLogger(); string specificationId = "testSpecId"; string fundingStreamId = "testFundingStreamId"; List <TemplateMappingItem> templateMappingItems = new List <TemplateMappingItem>(); TemplateMapping templateMapping = new TemplateMapping() { FundingStreamId = fundingStreamId, SpecificationId = specificationId, TemplateMappingItems = templateMappingItems }; string cacheKey = $"{CacheKeys.TemplateMapping}{specificationId}-{fundingStreamId}"; ICacheProvider cacheProvider = CreateCacheProvider(); cacheProvider .GetAsync <TemplateMapping>(cacheKey) .Returns(templateMapping); CalculationService service = CreateCalculationService( logger: logger, cacheProvider: cacheProvider); // Act IActionResult result = await service.GetMappedCalculationsOfSpecificationTemplate(specificationId, fundingStreamId); // Assert TemplateMappingSummary expectedResult = new TemplateMappingSummary() { SpecificationId = specificationId, FundingStreamId = fundingStreamId, TemplateMappingItems = templateMappingItems, }; result .Should() .BeOfType <OkObjectResult>() .Which .Value .Should() .BeEquivalentTo(expectedResult); }
public async Task GetMappedCalculationsOfSpecificationTemplate_TemplateMappingExistsInCosmos_TemplateMappingItemsReturned() { //Arrange ILogger logger = CreateLogger(); string specificationId = "testSpecId"; string fundingStreamId = "testFundingStreamId"; List <TemplateMappingItem> templateMappingItems = new List <TemplateMappingItem>(); TemplateMapping templateMapping = new TemplateMapping() { FundingStreamId = fundingStreamId, SpecificationId = specificationId, TemplateMappingItems = templateMappingItems }; ICalculationsRepository calculationsRepository = CreateCalculationsRepository(); calculationsRepository .GetTemplateMapping(specificationId, fundingStreamId) .Returns(templateMapping); CalculationService service = CreateCalculationService( logger: logger, calculationsRepository: calculationsRepository); // Act IActionResult result = await service.GetMappedCalculationsOfSpecificationTemplate(specificationId, fundingStreamId); // Assert TemplateMappingSummary expectedResult = new TemplateMappingSummary() { SpecificationId = specificationId, FundingStreamId = fundingStreamId, TemplateMappingItems = templateMappingItems, }; result .Should() .BeOfType <OkObjectResult>() .Which .Value .Should() .BeEquivalentTo(expectedResult); }