public async Task <IActionResult> OnGetAsync() { Spec = new FacilitySpec(); await PopulateSelectsAsync(); return(Page()); }
public async Task FacilityCount_DefaultSpec_ReturnsCountOfActiveFacilities() { using var repository = CreateRepositoryHelper().GetFacilityRepository(); var spec = new FacilitySpec(); var result = await repository.CountAsync(spec); var expected = RepositoryData.Facilities().Count(e => e.Active); result.Should().Be(expected); }
public async Task <IActionResult> OnGetSearchAsync(FacilitySpec spec, [FromQuery] int p = 1) { // Get the list of facilities matching the "Spec" criteria FacilityList = await _repository.GetFacilityPaginatedListAsync(spec, p, GlobalConstants.PageSize); Spec = spec; ShowResults = true; await PopulateSelectsAsync(); return(Page()); }
public async Task FacilityCount_WithDeleted_ReturnsCountOfAll() { using var repository = CreateRepositoryHelper().GetFacilityRepository(); var spec = new FacilitySpec() { ShowDeleted = true }; var result = await repository.CountAsync(spec); var expected = RepositoryData.Facilities().Count; result.Should().Be(expected); }
public async Task FacilityCount_ByMissingFacilityNumber_ReturnsZero() { const string facilityNumber = "zzz"; using var repository = CreateRepositoryHelper().GetFacilityRepository(); var spec = new FacilitySpec() { FacilityNumber = facilityNumber }; var result = await repository.CountAsync(spec); result.Should().Be(0); }
public async Task FacilityCount_ByMissingCounty_ReturnsZero() { const int countyId = 243; using var repository = CreateRepositoryHelper().GetFacilityRepository(); var spec = new FacilitySpec() { CountyId = countyId }; var result = await repository.CountAsync(spec); result.Should().Be(0); }
public async Task FacilitySearch_BeyondLastPage_ReturnsEmptyList() { using var repository = CreateRepositoryHelper().GetFacilityRepository(); var spec = new FacilitySpec() { ShowDeleted = true }; var result = await repository.GetFacilityPaginatedListAsync(spec, 999, 999); result.TotalCount.ShouldEqual(RepositoryData.Facilities().Count); result.Items.Count.ShouldEqual(0); result.PageNumber.ShouldEqual(999); result.TotalPages.ShouldEqual(1); }
// [InlineData("ghi")] Sqlite is case-sensitive by default public async Task FacilityCount_ByFacilityNumber_ReturnsCorrectCount(string facilityNumberSpec) { using var repository = CreateRepositoryHelper().GetFacilityRepository(); var spec = new FacilitySpec() { FacilityNumber = facilityNumberSpec }; var result = await repository.CountAsync(spec); var expected = RepositoryData.Facilities() .Count(e => e.FacilityNumber.ToLower().Contains(facilityNumberSpec.ToLower()) && e.Active); result.Should().Be(expected); }
public async Task FacilityCount_ByCounty_ReturnsCorrectCount() { const int countyId = 131; var spec = new FacilitySpec() { CountyId = countyId }; using var repository = CreateRepositoryHelper().GetFacilityRepository(); var result = await repository.CountAsync(spec); var expected = RepositoryData.Facilities() .Count(e => e.CountyId == countyId && e.Active); result.Should().Be(expected); }
public async Task FacilitySearch_Page2_ReturnsSecondPage() { using var repository = CreateRepositoryHelper().GetFacilityRepository(); var spec = new FacilitySpec() { ShowDeleted = true }; var result = await repository.GetFacilityPaginatedListAsync(spec, 2, 2); var expectedPages = (int)Math.Ceiling(RepositoryData.Facilities().Count / 2m); result.TotalCount.ShouldEqual(RepositoryData.Facilities().Count); result.Items.Count.ShouldEqual(2); result.PageNumber.ShouldEqual(2); result.TotalPages.ShouldEqual(expectedPages); }
public async Task FacilitySearch_ByMissingFacilityNumber_ReturnsEmpty() { const string facilityNumberSpec = "zzz"; using var repository = CreateRepositoryHelper().GetFacilityRepository(); var spec = new FacilitySpec() { FacilityNumber = facilityNumberSpec }; var result = await repository.GetFacilityPaginatedListAsync(spec, 1, 999); result.TotalCount.ShouldEqual(0); result.Items.Count.ShouldEqual(0); result.PageNumber.ShouldEqual(1); result.TotalPages.ShouldEqual(0); }
public async Task FacilitySearch_ByLocation_ReturnsCorrectList(string locationSpec) { using var repository = CreateRepositoryHelper().GetFacilityRepository(); var spec = new FacilitySpec() { Location = locationSpec, ShowDeleted = true }; var result = await repository.GetFacilityPaginatedListAsync(spec, 1, 999); var expectedCount = RepositoryData.Facilities().Count(e => e.Location.Contains(locationSpec)); result.TotalCount.ShouldEqual(expectedCount); result.Items.Count.ShouldEqual(expectedCount); result.PageNumber.ShouldEqual(1); result.TotalPages.ShouldEqual(1); }
public async Task FacilitySearch_WithDeleted_ReturnsAllFacilities() { using var repository = CreateRepositoryHelper().GetFacilityRepository(); var spec = new FacilitySpec() { ShowDeleted = true }; var result = await repository.GetFacilityPaginatedListAsync(spec, 1, 999); var expectedCount = RepositoryData.Facilities().Count; result.TotalCount.ShouldEqual(expectedCount); result.Items.Count.ShouldEqual(expectedCount); result.PageNumber.ShouldEqual(1); result.TotalPages.ShouldEqual(1); }
// [InlineData("ghi")] Sqlite is case-sensitive by default public async Task FacilitySearch_ByFacilityNumber_ReturnsCorrectList(string facilityNumberSpec) { using var repository = CreateRepositoryHelper().GetFacilityRepository(); var spec = new FacilitySpec() { FacilityNumber = facilityNumberSpec, ShowDeleted = true }; var result = await repository.GetFacilityPaginatedListAsync(spec, 1, 999); var expectedCount = RepositoryData.Facilities() .Count(e => e.FacilityNumber.ToLower().Contains(facilityNumberSpec.ToLower()) && e.Active); result.TotalCount.ShouldEqual(expectedCount); result.Items.Count.ShouldEqual(expectedCount); result.PageNumber.ShouldEqual(1); result.TotalPages.ShouldEqual(1); }
public async Task FacilitySearch_ByMissingCounty_ReturnsNone() { const int countySpec = 243; var spec = new FacilitySpec() { CountyId = countySpec, ShowDeleted = true }; using var repository = CreateRepositoryHelper().GetFacilityRepository(); var result = await repository.GetFacilityPaginatedListAsync(spec, 1, 999); var expectedCount = RepositoryData.Facilities().Count(e => e.CountyId == countySpec); result.TotalCount.ShouldEqual(expectedCount); result.Items.Count.ShouldEqual(expectedCount); result.PageNumber.ShouldEqual(1); result.TotalPages.ShouldEqual(0); }