Пример #1
0
        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);
        }
Пример #2
0
        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);
        }
Пример #3
0
        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);
        }