public async Task OnGetAsync_GivenCountTaskReturnsNoItems_ThenCoverageIsSetCorrectly() { //Arrange ApiResponse <TestScenario> scenario = new ApiResponse <TestScenario>(HttpStatusCode.OK, new TestScenario()); IScenariosApiClient apiClient = CreateScenariosClient(); apiClient .GetCurrentTestScenarioById(Arg.Is(Scenarioid)) .Returns(scenario); ProviderTestsSearchResultViewModel viewModel = new ProviderTestsSearchResultViewModel(); ITestResultsSearchService resultsService = CreateResultsService(); resultsService .PerformProviderTestResultsSearch(Arg.Any <SearchRequestViewModel>()) .Returns(viewModel); ITestEngineApiClient testEngineApiClient = CreateTestEngineClient(); testEngineApiClient .GetTestResultCounts(Arg.Any <TestScenarioResultCountsRequestModel>()) .Returns(new ApiResponse <IEnumerable <TestScenarioResultCounts> >(HttpStatusCode.OK, Enumerable.Empty <TestScenarioResultCounts>())); ISpecsApiClient specsApiClient = CreateSpecsClient(); specsApiClient .GetSpecificationSummary(Arg.Any <string>()) .Returns(new ApiResponse <Clients.SpecsClient.Models.SpecificationSummary>(HttpStatusCode.OK, new Clients.SpecsClient.Models.SpecificationSummary())); ViewProviderTestResultsPageModel pageModel = CreatePageModel( resultsService, testEngineApiClient, scenariosApiClient: apiClient, specsApiClient: specsApiClient); //Act IActionResult result = await pageModel.OnGetAsync(Scenarioid, null, ""); //Assert result .Should() .BeOfType <PageResult>() .Which .Should() .NotBeNull(); await testEngineApiClient .Received(1) .GetTestResultCounts(Arg.Any <TestScenarioResultCountsRequestModel>()); pageModel .TestCoverage .Should() .Be(0); }
public async Task OnGetAsync_GivenCountTaskReturnsNullContent_ThenErrorIsReturned() { //Arrange ApiResponse <TestScenario> scenario = new ApiResponse <TestScenario>(HttpStatusCode.OK, new TestScenario()); IScenariosApiClient apiClient = CreateScenariosClient(); apiClient .GetCurrentTestScenarioById(Arg.Is(Scenarioid)) .Returns(scenario); ProviderTestsSearchResultViewModel viewModel = new ProviderTestsSearchResultViewModel(); ITestResultsSearchService resultsService = CreateResultsService(); resultsService .PerformProviderTestResultsSearch(Arg.Any <SearchRequestViewModel>()) .Returns(viewModel); ITestEngineApiClient testEngineApiClient = CreateTestEngineClient(); testEngineApiClient .GetTestResultCounts(Arg.Any <TestScenarioResultCountsRequestModel>()) .Returns(new ApiResponse <IEnumerable <TestScenarioResultCounts> >(HttpStatusCode.OK, null)); ViewProviderTestResultsPageModel pageModel = CreatePageModel(resultsService, testEngineApiClient, scenariosApiClient: apiClient); //Act IActionResult result = await pageModel.OnGetAsync(Scenarioid, null, ""); //Assert result .Should() .BeOfType <InternalServerErrorResult>() .Which .Value .Should() .Be("Count Task result content was null"); await testEngineApiClient .Received(1) .GetTestResultCounts(Arg.Any <TestScenarioResultCountsRequestModel>()); }