public void Test_MultipleDossierNoRecords() { // given var dossiers = Dossiers_TestComplexLink1.GetDossiers(); dossiers[1].Records = null; var allComplexLinks = new List <string>() { "2" }; var mockDataservice = new Mock <IDataService>(); mockDataservice.Setup(t => t.GetAllDossiers()).Returns(dossiers); mockDataservice.Setup(t => t.GetComplexLinksWithMoreThanOneOccurence()).Returns(allComplexLinks); // when var complexlinkProcessor = new ComplexLinkProcessor(mockDataservice.Object); complexlinkProcessor.Process(); // then Assert.That(complexlinkProcessor.Error, Is.EqualTo(true)); var expectedError = "Complexlinknummer 2 is gekoppeld aan meerdere dossiers die geen van allen records bevatten: NL-0000-10000-2, NL-0000-10000-3. Er moet één dossier zijn met records.\r\n"; Assert.That(complexlinkProcessor.ErrorMessages.ToString(), Is.EqualTo(expectedError)); }
public void Test_HappyFlow() { // given var dossiers = Dossiers_TestComplexLink1.GetDossiers(); var allComplexLinks = new List <string>() { "2" }; var mockDataservice = new Mock <IDataService>(); mockDataservice.Setup(t => t.GetAllDossiers()).Returns(dossiers); mockDataservice.Setup(t => t.GetComplexLinksWithMoreThanOneOccurence()).Returns(allComplexLinks); // when var complexlinkProcessor = new ComplexLinkProcessor(mockDataservice.Object); complexlinkProcessor.Process(); // then Assert.That(complexlinkProcessor.Error, Is.EqualTo(false)); }
private void btImportFilesInDb_Click(object sender, EventArgs e) { if (!File.Exists(txtDossierLocation.Text)) { MessageBox.Show($"Dossier-file niet gevonden."); return; } if (!File.Exists(txtRecordBestandLocation.Text)) { MessageBox.Show($"Records-file niet gevonden."); return; } _dataservice.ClearDossiersAndRecords(); var importer = new Importer(_dataservice); if (!importer.CheckHealthyFieldmappings(_fieldmappingsDossiers) || !importer.CheckHealthyFieldmappings(_fieldmappingsRecords)) { MessageBox.Show("Niet alle velden zijn gemapped. Corrigeer dit eerst, in de tab 'Bestanden'. "); return; } Cursor.Current = Cursors.WaitCursor; using (var dossiers = new StreamReader(new FileStream(txtDossierLocation.Text, FileMode.Open, FileAccess.Read, FileShare.ReadWrite), Encoding.UTF7)) { importer.SaveDossiers(_fieldmappingsDossiers, dossiers); if (importer.Error) { txtErrorsDossiers.Text = importer.ErrorMessage + Environment.NewLine + importer.ErrorsImportDossiers; return; } } using (var records = new StreamReader(new FileStream(txtRecordBestandLocation.Text, FileMode.Open, FileAccess.Read, FileShare.ReadWrite), Encoding.UTF7)) { importer.SaveRecords(_fieldmappingsRecords, records); if (importer.Error) { txtErrorRecords.Text = importer.ErrorMessage + Environment.NewLine + importer.ErrorsImportRecords; } } txtErrorRecords.Text = importer.ErrorsImportRecords.ToString(); txtErrorsDossiers.Text = importer.ErrorsImportDossiers.ToString(); Cursor.Current = Cursors.Default; var msg = string.Empty; if (importer.Error) { MessageBox.Show($"De import is afgerond met errors."); } else { MessageBox.Show($"Import is succesvol. Dossiers: {importer.NrOfDossiers}, records: {importer.NrOfRecords}"); if (importer.ComplexLinksFound) { if (MessageBox.Show("Eer zijn dossiers met ComplexLinks gevonden. Klik op OK om door te gaan met het kopieren van records naar dossiers met een overeenkomende ComplexLink", "ComplexLinks", MessageBoxButtons.OKCancel) == DialogResult.OK) { var complexLinkProcessor = new ComplexLinkProcessor(_dataservice); complexLinkProcessor.Process(); if (complexLinkProcessor.Error) { txtErrorsDossiers.Text += complexLinkProcessor.ErrorMessages.ToString(); MessageBox.Show("Het kopiëren van de records naar dossiers met overeenkomstige ComplexLinknummers is afgerond met errors. "); } else { MessageBox.Show("Het kopiëren van records naar dossiers met overeenkomstige ComplexLinknummers is succesvol afgerond."); } } } } }