public async Task Then_Only_The_Items_In_The_Allowed_Place_Name_Descriptions_Are_Added( List <LocationApiItem> apiResponse, LocationApiItem apiFeature, LocationApiItem apiFeature1, [Frozen] Mock <INationalStatisticsLocationService> service, [Frozen] Mock <ILocationImportRepository> importRepository, LocationImportService importService) { apiResponse = SetValidPlaceNameDescription(apiResponse); apiFeature.Attributes.PlaceNameDescription = "test"; apiFeature1.Attributes.PlaceNameDescription = ""; apiResponse.Add(apiFeature); apiResponse.Add(apiFeature1); service.Setup(x => x.GetLocations()).ReturnsAsync(apiResponse); await importService.Import(); importRepository.Verify(x => x.DeleteAll(), Times.Once); importRepository.Verify( x => x.InsertMany( It.Is <List <Domain.Entities.LocationImport> >( c => c.Count.Equals(apiResponse.Count - 2))), Times.Once); }
public async Task Then_If_There_Are_Multiple_Matches_Then_Takes_Matching_LocationAuthorityDistrict_Matching_PlaceName( string expectedName, int locationId, List <LocationApiItem> apiResponse, LocationApiItem apiFeature, LocationApiItem apiFeature1, [Frozen] Mock <INationalStatisticsLocationService> service, [Frozen] Mock <ILocationImportRepository> importRepository, LocationImportService importService ) { expectedName = "z" + expectedName; apiFeature.Attributes.Id = locationId; apiFeature1.Attributes.Id = locationId; apiFeature.Attributes.LocalAuthorityDistrictDescription = "MD"; apiFeature1.Attributes.LocalAuthorityDistrictDescription = "MD"; apiFeature.Attributes.PlaceNameDescription = "BUA"; apiFeature1.Attributes.PlaceNameDescription = "BUA"; apiFeature.Attributes.LocationName = expectedName; apiFeature1.Attributes.LocationName = "Not valid"; apiFeature.Attributes.LocationAuthorityDistrict = expectedName; apiFeature1.Attributes.LocationAuthorityDistrict = "a Not Valid"; apiResponse.Add(apiFeature1); apiResponse.Add(apiFeature); service.Setup(x => x.GetLocations()).ReturnsAsync(apiResponse); await importService.Import(); importRepository.Verify( x => x.InsertMany( It.Is <List <Domain.Entities.LocationImport> >( c => c.TrueForAll(a => a.LocationName.Equals(expectedName)))), Times.Once); }
public async Task Then_The_Items_Are_Deleted_From_The_ImportRepository_And_Distinct_Location_Items_From_The_Api_Are_Added_To_The_Import_Repository( List <LocationApiItem> apiResponse, LocationApiItem apiFeature, [Frozen] Mock <INationalStatisticsLocationService> service, [Frozen] Mock <ILocationImportRepository> importRepository, LocationImportService importService) { apiResponse.Add(apiFeature); apiResponse.Add(apiFeature); apiResponse = SetValidPlaceNameDescription(apiResponse); service.Setup(x => x.GetLocations()).ReturnsAsync(apiResponse); await importService.Import(); importRepository.Verify(x => x.DeleteAll(), Times.Once); importRepository.Verify( x => x.InsertMany( It.Is <List <Domain.Entities.LocationImport> >( c => c.Count.Equals(apiResponse.Count - 1))), Times.Once); }