Skip to content
Snippets Groups Projects
Commit a5bf1be6 authored by OURY Sarah's avatar OURY Sarah
Browse files

new TU

parent 2674e311
No related branches found
No related tags found
1 merge request!12[SOY] Operation non it
This commit is part of merge request !12. Comments created here will be created in the context of that merge request.
nomEquipementPhysique;modele;quantite;nomCourtDatacenter;dateAchat;dateRetrait;type;statut;paysDUtilisation;consoElecAnnuelle;utilisateur;nomSourceDonnee;nomEntite;nbCoeur;nbJourUtiliseAn;goTelecharge;modeUtilisation;tauxUtilisation
;P2719;1;dc_unknown;2021-03-30;2023-06-16;Monitor;In use;France;;;;MY ENTERPRISE;;365;;COPE;
nomItemNonIT;quantite;type;dureeDeVie;localisation;nomEntite;nomSourceDonnee;nomCourtDatacenter;description;consoElecAnnuelle
Batiment_datacenter_St_Malo;569;Monitor;53;France;DSI_St_MALO;VmWare_Datacenter_St_Malo;;;234
;569;Monitor;53;France;DSI_St_MALO;VmWare_Datacenter_St_Malo;Dc_test;;234
......@@ -119,6 +119,45 @@ class ImportDonneesEntreePortImplTest {
assertEquals("Le fichier CSV des Applications n'est pas trouvable.", resultImport.getKey().getErreurs().get(0));
}
@Test
void importOperationsNonIT_onIOException_shouldReturnReportWith1Error() throws IOException {
Mockito.when(fileToRead.getInputStream()).thenThrow(new IOException("Test"));
Pair<RapportImport, List<OperationNonIT>> resultImport = importDonneesEntreePort.importOperationsNonIT(null, null, null, fileToRead);
assertTrue(resultImport.getValue().isEmpty());
assertEquals("Le fichier CSV des opérations non IT n'est pas lisible par le système.", resultImport.getKey().getErreurs().get(0));
}
@Test
void importOperationsNonIT_onFileNotFoundException_shouldReturnReportWith1Error() throws IOException {
Mockito.when(fileToRead.getInputStream()).thenThrow(new FileNotFoundException("Test"));
Pair<RapportImport, List<OperationNonIT>> resultImport = importDonneesEntreePort.importOperationsNonIT(null, null, null, fileToRead);
assertTrue(resultImport.getValue().isEmpty());
assertEquals("Le fichier CSV des opérations non IT n'est pas trouvable.", resultImport.getKey().getErreurs().get(0));
}
/*
@Test
void importOperationsNonIT_with_TypeNotPresentInRefType_shouldReturnReportWith1Error() throws IOException {
Path path = Paths.get("../../../../../../../../resources/csv/unit/correspondanceRefEquipement.csv");
String name = "file.txt";
String contentType = "text/plain";
byte[] content = null;
try {
content = Files.readAllBytes(path);
} catch (final IOException e) {
}
File file = ResourceUtils.getFile("../../../../../../../../resources/csv/unit/correspondanceRefEquipement.csv");
MultipartFile csvOperationsNonIT = new MultipartFile(name, contentType, content);
Pair<RapportImport, List<OperationNonIT>> resultImport = importDonneesEntreePort.importOperationsNonIT("nomlot", null, "nomOrganisation", csvOperationsNonIT);
assertFalse(resultImport.getValue().isEmpty());
assertEquals("Le fichier CSV des opérations non IT n'est pas trouvable.", resultImport.getKey().getErreurs().get(0));
}*/
@Test
void importMessageries_onIOException_shouldReturnReportWith1Error() throws IOException {
Mockito.when(fileToRead.getInputStream()).thenThrow(new IOException("Test"));
......
......@@ -89,10 +89,11 @@ class ImportCSVControllerTest {
MockMultipartFile csvEquipements = new MockMultipartFile("csvEquipementEquipementNonVide.csv", fileEquipement);
MockMultipartFile csvEquipementsVirtuels = null;
MockMultipartFile csvApplications = null;
MockMultipartFile csvOperationsNonIT = null;
MockMultipartFile csvMessagerie = null;
MockMultipartFile csvEntite = null;
var exception = assertThrows(ResponseStatusException.class, () -> importCSVController.importInterneCSV("TEST", nomLot, "2023-01-01", csvDataCenters, csvEquipements, csvEquipementsVirtuels, csvApplications, csvMessagerie, csvEntite));
var exception = assertThrows(ResponseStatusException.class, () -> importCSVController.importInterneCSV("TEST", nomLot, "2023-01-01", csvDataCenters, csvEquipements, csvEquipementsVirtuels, csvApplications, csvOperationsNonIT, csvMessagerie, csvEntite));
assertEquals(HttpStatus.BAD_REQUEST, exception.getStatusCode());
assertEquals("Le nom du Lot ne peut être pas vide", exception.getReason());
......@@ -105,10 +106,11 @@ class ImportCSVControllerTest {
MockMultipartFile csvEquipements = new MockMultipartFile("csvEquipementEquipementNonVide.csv", fileEquipement);
MockMultipartFile csvEquipementsVirtuels = null;
MockMultipartFile csvApplications = null;
MockMultipartFile csvoperationNonIT = null;
MockMultipartFile csvMessagerie = null;
MockMultipartFile csvEntite = null;
var exception = assertThrows(ResponseStatusException.class, () -> importCSVController.importInterneCSV("test", "20230101", "TEST", csvDataCenters, csvEquipements, csvEquipementsVirtuels, csvApplications, csvMessagerie, csvEntite));
var exception = assertThrows(ResponseStatusException.class, () -> importCSVController.importInterneCSV("test", "20230101", "TEST", csvDataCenters, csvEquipements, csvEquipementsVirtuels, csvApplications, csvoperationNonIT, csvMessagerie, csvEntite));
assertEquals(HttpStatus.BAD_REQUEST, exception.getStatusCode());
assertEquals("La date du lot doit avoir le format yyyy-MM-dd", exception.getReason());
......
......@@ -8,6 +8,7 @@ import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.junit.jupiter.MockitoExtension;
import org.mte.numecoeval.expositiondonneesentrees.domain.model.EquipementPhysique;
import org.mte.numecoeval.expositiondonneesentrees.domain.model.OperationNonIT;
import org.mte.numecoeval.expositiondonneesentrees.domain.ports.output.ReferentielServicePort;
import org.mte.numecoeval.expositiondonneesentrees.infrastructure.config.MessageProperties;
......@@ -86,4 +87,16 @@ public class ErrorManagementServiceTest {
var actual = errorManagementService.checkEquipementPhysique(eq1, "");
assertFalse(actual.getKey().stream().anyMatch(ds -> "L'âge de l'équipement physical-eq-001 ne peut être calculé car sa date de retrait précède sa date d'achat".equals(ds)));
}
@Test
void importOperationNonIT_with_TypeNotInRefType_shouldReturnReportWith1Error() {
OperationNonIT eq1 = OperationNonIT.builder()
.nomItemNonIT("Batiment_datacenter_St_Malo")
.quantite(1.0)
.dureeDeVie(5.0)
.type("Monitor")
.localisation("France").build();
var actual = errorManagementService.checkOperationNonIT(eq1, eq1.getType());
}
}
nomItemNonIT;quantite;type;dureeDeVie;localisation;nomEntite;nomSourceDonnee;nomCourtDatacenter;description;consoElecAnnuelle
Batiment_datacenter_St_Malo;569;type_unknown;53;France;DSI_St_MALO;VmWare_Datacenter_St_Malo;Dc_test;;234
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment