public TestScenarioResultsPageModel(ITestScenarioResultsService testScenarioResultsService, ISpecsApiClient specsApiClient, ILogger logger, IMapper mapper) { Guard.ArgumentNotNull(testScenarioResultsService, nameof(testScenarioResultsService)); Guard.ArgumentNotNull(mapper, nameof(mapper)); Guard.ArgumentNotNull(specsApiClient, nameof(specsApiClient)); Guard.ArgumentNotNull(logger, nameof(logger)); _testScenarioResultsService = testScenarioResultsService; _mapper = mapper; _specsApiClient = specsApiClient; _logger = logger; }
private static TestScenarioResultsPageModel CreatePageModel( ITestScenarioResultsService resultsService = null, ISpecsApiClient specsApiClient = null, ILogger logger = null , IMapper mapper = null) { return(new TestScenarioResultsPageModel( resultsService ?? CreateScenarioResultsService(), specsApiClient ?? CreateSpecsApiClient(), logger ?? CreateLogger(), mapper ?? MappingHelper.CreateFrontEndMapper())); }
public async Task TestScenarioResults_OnGetAsync_WhenRequestedWithDefaultOptions_ThenPageIsReturned() { // Arrange ISpecsApiClient specsApiClient = CreateSpecsApiClient(); ITestScenarioResultsService testScenarioResultsService = CreateScenarioResultsService(); List <Reference> fundingPeriods = new List <Reference> { new Reference("1617", "2016/2017"), new Reference("1718", "2017/2018"), new Reference("1819", "2018/2019") }; TestScenarioResultsPageModel pageModel = CreatePageModel(testScenarioResultsService, specsApiClient); specsApiClient .GetFundingPeriods() .Returns(new ApiResponse <IEnumerable <Reference> >(HttpStatusCode.OK, fundingPeriods)); TestScenarioResultViewModel testScenarioResultViewModel = new TestScenarioResultViewModel() { Specifications = new List <ReferenceViewModel>() { new ReferenceViewModel("spec1", "Specification 1"), new ReferenceViewModel("spec2", "Specification 2"), new ReferenceViewModel("spec3", "Specification 3"), }, TestResults = new List <TestScenarioResultItemViewModel>() { new TestScenarioResultItemViewModel() { Id = "ts1", Name = "Test Scenario 1", Passes = 5, Failures = 10, LastUpdatedDate = new DateTime(2018, 1, 5, 7, 8, 9), }, } }; testScenarioResultsService .PerformSearch(Arg.Any <TestScenarioResultRequestViewModel>()) .Returns(testScenarioResultViewModel); // Act IActionResult result = await pageModel.OnGetAsync(null, null, null, null); // Assert result .Should() .NotBeNull() .And .BeOfType <PageResult>(); pageModel .FundingPeriods .Should() .BeEquivalentTo(new List <SelectListItem>() { new SelectListItem() { Text = "2016/2017", Value = "1617", }, new SelectListItem() { Text = "2017/2018", Value = "1718", }, new SelectListItem() { Text = "2018/2019", Value = "1819", }, }); pageModel.SearchResults.Should().NotBeNull(); pageModel .SearchResults .Should() .BeEquivalentTo(testScenarioResultViewModel); }
public TestScenarioResultController(ITestScenarioResultsService testScenarioResultsService) { Guard.ArgumentNotNull(testScenarioResultsService, nameof(testScenarioResultsService)); _testScenarioResultsService = testScenarioResultsService; }