コード例 #1
0
        public void Then_The_Fields_Are_Correctly_Mapped(
            int ukprn,
            string sectorSubjectArea,
            int overallCohort,
            int overallAchievementRate)
        {
            //Arrange
            var source = new NationalAchievementRateOverallCsv
            {
                SectorSubjectArea      = sectorSubjectArea,
                OverallCohort          = overallCohort.ToString(),
                OverallAchievementRate = overallAchievementRate.ToString(),
                Age = "16-18",
                ApprenticeshipLevel = "4+"
            };

            //Act
            var actual = (NationalAchievementRateOverallImport)source;

            //Assert
            actual.SectorSubjectArea.Should().Be(sectorSubjectArea);
            actual.OverallCohort.Should().Be(overallCohort);
            actual.OverallAchievementRate.Should().Be(overallAchievementRate);
            actual.ApprenticeshipLevel.Should().Be(ApprenticeshipLevel.FourPlus);
            actual.Age.Should().Be(Age.SixteenToEighteen);
        }
        public async Task Then_The_Import_Table_Is_Cleared_And_Data_Loaded_From_Csv_And_Filtered(
            string filePath,
            string content,
            string newFilePath,
            NationalAchievementRateOverallCsv item1,
            NationalAchievementRateOverallCsv item2,
            NationalAchievementRateOverallCsv item3,
            List <NationalAchievementRateOverallCsv> downloadData,
            [Frozen] Mock <INationalAchievementRatesPageParser> pageParser,
            [Frozen] Mock <IDataDownloadService> service,
            [Frozen] Mock <IImportAuditRepository> repository,
            [Frozen] Mock <INationalAchievementRateOverallImportRepository> importRepository,
            [Frozen] Mock <IZipArchiveHelper> zipHelper,
            NationalAchievementRatesOverallImportService importService)
        {
            //Arrange
            downloadData = downloadData.Select(c => {
                c.InstitutionType = "All Institution Type";
                c.Age             = "All Age";
                return(c);
            }).ToList();
            item1.SectorSubjectArea = "All Sector Subject Area  Tier 2";
            item1.Age             = "All Age";
            item2.Age             = "All Age";
            item2.InstitutionType = "Other";
            item3.Age             = "16";
            item3.InstitutionType = "All Institution Type";
            downloadData.Add(item1);
            downloadData.Add(item2);
            downloadData.Add(item3);
            service.Setup(x => x.GetFileStream(newFilePath))
            .ReturnsAsync(new MemoryStream(Encoding.UTF8.GetBytes(content)));
            pageParser.Setup(x => x.GetCurrentDownloadFilePath()).ReturnsAsync(newFilePath);
            repository.Setup(x => x.GetLastImportByType(ImportType.NationalAchievementRatesOverall))
            .ReturnsAsync((ImportAudit)null);
            zipHelper.Setup(x =>
                            x.ExtractModelFromCsvFileZipStream <NationalAchievementRateOverallCsv>(It.IsAny <Stream>(),
                                                                                                   Constants.NationalAchievementRatesOverallCsvFileName)).Returns(downloadData);

            //Act
            await importService.ImportData();

            //Assert
            importRepository.Verify(x => x.DeleteAll(), Times.Once);
            importRepository.Verify(x =>
                                    x.InsertMany(It.Is <List <NationalAchievementRateOverallImport> >(c => c.Count.Equals(downloadData.Count - 3))));
        }
コード例 #3
0
        public void Then_If_The_Overall_Values_Are_Not_Numeric_Null_Is_Stored(int ukprn,
                                                                              string sectorSubjectArea,
                                                                              int overallCohort,
                                                                              int overallAchievementRate)
        {
            //Arrange
            var source = new NationalAchievementRateOverallCsv
            {
                SectorSubjectArea      = sectorSubjectArea,
                OverallCohort          = "*",
                OverallAchievementRate = "-",
                Age = "16-18",
                ApprenticeshipLevel = "4+"
            };

            //Act
            var actual = (NationalAchievementRateOverallImport)source;

            //Assert
            actual.OverallCohort.Should().BeNull();
            actual.OverallAchievementRate.Should().BeNull();
        }