public async Task GetFundingPeriodById_GivenFundingPeriodWasNotFound_ReturnsNotFound() { // Arrange const string fundingPeriodId = "fp-1"; ILogger logger = CreateLogger(); IPolicyRepository policyRepository = CreatePolicyRepository(); policyRepository .GetFundingPeriodById(Arg.Is(fundingPeriodId)) .Returns((FundingPeriod)null); FundingPeriodService fundingPeriodService = CreateFundingPeriodService(logger: logger, policyRepository: policyRepository); // Act IActionResult result = await fundingPeriodService.GetFundingPeriodById(fundingPeriodId); // Assert result .Should() .BeOfType <NotFoundResult>(); logger .Received(1) .Error(Arg.Is($"No funding period was returned for funding period id: '{fundingPeriodId}'")); }
public async Task GetFundingPeriodById__GivenFundingStreamnWasFound_ReturnsSuccess() { // Arrange const string fundingPeriodId = "fp-1"; FundingPeriod fundingPeriod = new FundingPeriod { Id = fundingPeriodId }; IPolicyRepository policyRepository = CreatePolicyRepository(); policyRepository .GetFundingPeriodById(Arg.Is(fundingPeriodId)) .Returns(fundingPeriod); FundingPeriodService fundingPeriodService = CreateFundingPeriodService(policyRepository: policyRepository); // Act IActionResult result = await fundingPeriodService.GetFundingPeriodById(fundingPeriodId); // Assert result .Should() .BeOfType <OkObjectResult>() .Which .Value .Should() .Be(fundingPeriod); }
public async Task GetFundingPeriodById_GivenFundingStreamIdDoesNotExist_ReturnsBadRequest(string fundingStreamId) { // Arrange ILogger logger = CreateLogger(); FundingPeriodService fundingPeriodService = CreateFundingPeriodService(logger: logger); // Act IActionResult result = await fundingPeriodService.GetFundingPeriodById(fundingStreamId); // Assert result .Should() .BeOfType <BadRequestObjectResult>() .Which .Value .Should() .Be("Null or empty funding period id provided"); logger .Received(1) .Error(Arg.Is("No funding period id was provided to GetFundingPeriodById")); }