[tutti] branch develop updated (3982fac -> 5882bfc)
This is an automated email from the git hooks/post-receive script. New change to branch develop in repository tutti. See http://git.codelutin.com/tutti.git from 3982fac refs #5997: [IMPORT] Améliorer la gestion des référentiels temporaires new 5882bfc strat fixing tests The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit 5882bfce850a3b79a50ff5beebfcf0605c2d0847 Author: Kevin Morin <morin@codelutin.com> Date: Tue Nov 4 12:05:05 2014 +0100 strat fixing tests Summary of changes: .../referential/GearPersistenceServiceImpl.java | 4 +- .../referential/PersonPersistenceServiceImpl.java | 3 +- .../referential/SpeciesPersistenceServiceImpl.java | 4 +- .../referential/VesselPersistenceServiceImpl.java | 4 +- .../referential/ReferentialImportService.java | 31 ++++++++------- .../tutti/service/referential/VesselModel.java | 2 - .../resources/i18n/tutti-service_en_GB.properties | 2 + .../resources/i18n/tutti-service_fr_FR.properties | 2 + .../referential/ReferentialImportServiceTest.java | 45 ++++++++++++---------- 9 files changed, 49 insertions(+), 48 deletions(-) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository tutti. See http://git.codelutin.com/tutti.git commit 5882bfce850a3b79a50ff5beebfcf0605c2d0847 Author: Kevin Morin <morin@codelutin.com> Date: Tue Nov 4 12:05:05 2014 +0100 strat fixing tests --- .../referential/GearPersistenceServiceImpl.java | 4 +- .../referential/PersonPersistenceServiceImpl.java | 3 +- .../referential/SpeciesPersistenceServiceImpl.java | 4 +- .../referential/VesselPersistenceServiceImpl.java | 4 +- .../referential/ReferentialImportService.java | 31 ++++++++------- .../tutti/service/referential/VesselModel.java | 2 - .../resources/i18n/tutti-service_en_GB.properties | 2 + .../resources/i18n/tutti-service_fr_FR.properties | 2 + .../referential/ReferentialImportServiceTest.java | 45 ++++++++++++---------- 9 files changed, 49 insertions(+), 48 deletions(-) diff --git a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/referential/GearPersistenceServiceImpl.java b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/referential/GearPersistenceServiceImpl.java index 0fefca1..7c43cdc 100644 --- a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/referential/GearPersistenceServiceImpl.java +++ b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/referential/GearPersistenceServiceImpl.java @@ -76,11 +76,9 @@ public class GearPersistenceServiceImpl extends ReferentialPersistenceServiceSup @Override public boolean isTemporaryGear(Gear entity) { - - Preconditions.checkState(isStatusTemporary(entity)); Preconditions.checkNotNull(entity.getId()); - return entity.getIdAsInt() < 0; + return isStatusTemporary(entity) && entity.getIdAsInt() < 0; } diff --git a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/referential/PersonPersistenceServiceImpl.java b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/referential/PersonPersistenceServiceImpl.java index 3f1ea12..d4d4886 100644 --- a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/referential/PersonPersistenceServiceImpl.java +++ b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/referential/PersonPersistenceServiceImpl.java @@ -68,10 +68,9 @@ public class PersonPersistenceServiceImpl extends ReferentialPersistenceServiceS @Override public boolean isTemporaryPerson(Person entity) { - Preconditions.checkState(isStatusTemporary(entity)); Preconditions.checkNotNull(entity.getId()); - return entity.getIdAsInt() < 0; + return isStatusTemporary(entity) && entity.getIdAsInt() < 0; } diff --git a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/referential/SpeciesPersistenceServiceImpl.java b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/referential/SpeciesPersistenceServiceImpl.java index 30fdb2e..94dd51e 100644 --- a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/referential/SpeciesPersistenceServiceImpl.java +++ b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/referential/SpeciesPersistenceServiceImpl.java @@ -131,11 +131,9 @@ public class SpeciesPersistenceServiceImpl extends ReferentialPersistenceService @Override public boolean isTemporarySpecies(Species entity) { - - Preconditions.checkState(isStatusTemporary(entity)); Preconditions.checkNotNull(entity.getId()); - return entity.getIdAsInt() < 0; + return isStatusTemporary(entity) && entity.getIdAsInt() < 0; } diff --git a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/referential/VesselPersistenceServiceImpl.java b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/referential/VesselPersistenceServiceImpl.java index a136745..f7ef5ad 100644 --- a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/referential/VesselPersistenceServiceImpl.java +++ b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/service/referential/VesselPersistenceServiceImpl.java @@ -117,11 +117,9 @@ public class VesselPersistenceServiceImpl extends ReferentialPersistenceServiceS @Override public boolean isTemporaryVessel(Vessel vessel) { - - Preconditions.checkState(isStatusTemporary(vessel)); Preconditions.checkNotNull(vessel.getId()); - return vessel.getId().startsWith(TemporaryDataHelper.TEMPORARY_NAME_PREFIX); + return isStatusTemporary(vessel) && vessel.getId().startsWith(TemporaryDataHelper.TEMPORARY_NAME_PREFIX); } diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/ReferentialImportService.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/ReferentialImportService.java index 2174971..ab57e9e 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/ReferentialImportService.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/ReferentialImportService.java @@ -60,6 +60,7 @@ import java.io.Reader; import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; +import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Set; @@ -200,12 +201,13 @@ public class ReferentialImportService extends AbstractTuttiService { List<Vessel> existingVessels = Lists.newArrayList(persistenceService.getAllFishingVessel()); existingVessels.addAll(persistenceService.getAllScientificVessel()); - Set<String> existingVesselRegistrationCodes = Sets.newHashSet(Iterables.transform(existingVessels, new Function<Vessel, String>() { - @Override - public String apply(Vessel input) { - return input.getRegistrationCode(); - } - })); +// Set<String> existingVesselInternationalRegistrationCodes = +// Sets.newHashSet(Iterables.transform(existingVessels, new Function<Vessel, String>() { +// @Override +// public String apply(Vessel input) { +// return input.getInternationalRegistrationCode(); +// } +// })); Map<String, Vessel> existingVesselsById = TuttiEntities.splitById(existingVessels); Set<String> existingVesselIds = new HashSet<>(existingVesselsById.keySet()); @@ -223,19 +225,20 @@ public class ReferentialImportService extends AbstractTuttiService { for (final VesselRow bean : importer) { String id = StringUtils.trimToNull(bean.getId()); - String registrationCode = bean.getRegistrationCode(); +// String internationalRegistrationCode = bean.getInternationalRegistrationCode(); Vessel vessel = existingVesselsById.get(id); boolean delete = BooleanUtils.isTrue(bean.getToDelete()); if (id != null && existingVesselIds.add(id)) { throw new IllegalArgumentException(t("tutti.service.referential.import.vessel.notExistingId.error", id)); - } else if (StringUtils.isBlank(registrationCode)) { - throw new IllegalArgumentException(t("tutti.service.referential.import.vessel.noRegistrationCode.error", id)); - - } else if (!delete && !existingVesselRegistrationCodes.add(registrationCode) && - (id == null || vessel != null && !vessel.getRegistrationCode().equals(registrationCode))) { - throw new IllegalArgumentException(t("tutti.service.referential.import.vessel.existingRegistrationCode.error", registrationCode)); +// } else if (StringUtils.isBlank(internationalRegistrationCode)) { +// throw new IllegalArgumentException(t("tutti.service.referential.import.vessel.noInternationalRegistrationCode.error", id)); +// +// } else if (!delete && !existingVesselInternationalRegistrationCodes.add(internationalRegistrationCode) && +// (id == null || vessel != null && !vessel.getRegistrationCode().equals(internationalRegistrationCode))) { +// throw new IllegalArgumentException(t("tutti.service.referential.import.vessel.existingInternationalRegistrationCode.error", +// internationalRegistrationCode)); } if (delete) { @@ -246,7 +249,7 @@ public class ReferentialImportService extends AbstractTuttiService { throw new IllegalArgumentException(t("tutti.service.referential.import.vessel.used.error", id)); } toDelete.add(id); - existingVesselRegistrationCodes.remove(registrationCode); +// existingVesselInternationalRegistrationCodes.remove(internationalRegistrationCode); } else { if (id == null) { diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/VesselModel.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/VesselModel.java index 061cfb2..b39b6c6 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/VesselModel.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/referential/VesselModel.java @@ -66,7 +66,6 @@ public class VesselModel extends TuttiCsvUtil.AbstractTuttiImportExportModel<Ves }); - newMandatoryColumn(VesselRow.PROPERTY_REGISTRATION_CODE); newMandatoryColumn(VesselRow.PROPERTY_NAME); newMandatoryColumn(VesselRow.PROPERTY_INTERNATIONAL_REGISTRATION_CODE); newMandatoryColumn(VesselRow.PROPERTY_SCIENTIFIC_VESSEL, Common.PRIMITIVE_BOOLEAN); @@ -75,7 +74,6 @@ public class VesselModel extends TuttiCsvUtil.AbstractTuttiImportExportModel<Ves // export definition newColumnForExport(VesselRow.PROPERTY_ID); - newColumnForExport(VesselRow.PROPERTY_REGISTRATION_CODE); newColumnForExport(VesselRow.PROPERTY_NAME); newColumnForExport(VesselRow.PROPERTY_INTERNATIONAL_REGISTRATION_CODE); newColumnForExport(VesselRow.PROPERTY_SCIENTIFIC_VESSEL, Common.PRIMITIVE_BOOLEAN); diff --git a/tutti-service/src/main/resources/i18n/tutti-service_en_GB.properties b/tutti-service/src/main/resources/i18n/tutti-service_en_GB.properties index d54161c..7cb64b6 100644 --- a/tutti-service/src/main/resources/i18n/tutti-service_en_GB.properties +++ b/tutti-service/src/main/resources/i18n/tutti-service_en_GB.properties @@ -240,7 +240,9 @@ tutti.service.referential.import.species.notExistingId.error= tutti.service.referential.import.species.used.error= tutti.service.referential.import.vessel.cannotDeleteWithoutId.error= tutti.service.referential.import.vessel.codePrefixMissing.error= +tutti.service.referential.import.vessel.existingInternationalRegistrationCode.error= tutti.service.referential.import.vessel.existingRegistrationCode.error= +tutti.service.referential.import.vessel.noInternationalRegistrationCode.error= tutti.service.referential.import.vessel.noRegistrationCode.error= tutti.service.referential.import.vessel.notExistingId.error= tutti.service.referential.import.vessel.used.error= diff --git a/tutti-service/src/main/resources/i18n/tutti-service_fr_FR.properties b/tutti-service/src/main/resources/i18n/tutti-service_fr_FR.properties index 5ea79ee..0a5adc0 100644 --- a/tutti-service/src/main/resources/i18n/tutti-service_fr_FR.properties +++ b/tutti-service/src/main/resources/i18n/tutti-service_fr_FR.properties @@ -220,7 +220,9 @@ tutti.service.referential.import.species.notExistingId.error=L'identifiant '%s' tutti.service.referential.import.species.used.error=L'espèce temporaire %s est utilisée dans l'application. Vous devez la remplacer pour pouvoir la supprimer. tutti.service.referential.import.vessel.cannotDeleteWithoutId.error=L'identifiant est obligatoire pour la suppression tutti.service.referential.import.vessel.codePrefixMissing.error=L'identifiant d'un navire temporaire doit commencer par %1$s \: %2$s +tutti.service.referential.import.vessel.existingInternationalRegistrationCode.error= tutti.service.referential.import.vessel.existingRegistrationCode.error=Le navire '%s' n'a pas été ajouté au référentiel car il est déjà présent +tutti.service.referential.import.vessel.noInternationalRegistrationCode.error= tutti.service.referential.import.vessel.noRegistrationCode.error=L'immatriculation est obligatoire tutti.service.referential.import.vessel.notExistingId.error=L'identifiant '%s' n'a pas été trouvé parmi les navires temporaires tutti.service.referential.import.vessel.used.error=Le navire temporaire %s est utilisé dans l'application. Vous devez le remplacer pour pouvoir le supprimer. diff --git a/tutti-service/src/test/java/fr/ifremer/tutti/service/referential/ReferentialImportServiceTest.java b/tutti-service/src/test/java/fr/ifremer/tutti/service/referential/ReferentialImportServiceTest.java index 65596e0..436cdb8 100644 --- a/tutti-service/src/test/java/fr/ifremer/tutti/service/referential/ReferentialImportServiceTest.java +++ b/tutti-service/src/test/java/fr/ifremer/tutti/service/referential/ReferentialImportServiceTest.java @@ -308,32 +308,35 @@ public class ReferentialImportServiceTest { Assert.assertEquals("International registration code S" + i, actual.getInternationalRegistrationCode()); Assert.assertTrue(actual.isScientificVessel()); } + + //uncomment this test if there are unicity conditions // try to reimport them - try { - service.importTemporaryVessel(file); - Assert.fail(); - } catch (IllegalArgumentException | ApplicationTechnicalException e) { - Assert.assertTrue(true); - } +// try { +// service.importTemporaryVessel(file); +// Assert.fail(); +// } catch (IllegalArgumentException | ApplicationTechnicalException e) { +// Assert.assertTrue(true); +// } // TODO test to replace a used vessel } - @Test - public void importDuplicateTemporaryVessel() throws Exception { - File file = new File(dataDirectory, "importVessel.csv"); - - Files.createParentDirs(file); - - Files.write(DUPLICATE_VESSEL_FILE_CONTENT, file, Charsets.UTF_8); - - try { - service.importTemporaryVessel(file); - Assert.fail(); - } catch (IllegalArgumentException | ApplicationTechnicalException e) { - // good duplicate vessel - } - } + //uncomment this test if there are unicity conditions +// @Test +// public void importDuplicateTemporaryVessel() throws Exception { +// File file = new File(dataDirectory, "importVessel.csv"); +// +// Files.createParentDirs(file); +// +// Files.write(DUPLICATE_VESSEL_FILE_CONTENT, file, Charsets.UTF_8); +// +// try { +// service.importTemporaryVessel(file); +// Assert.fail(); +// } catch (IllegalArgumentException | ApplicationTechnicalException e) { +// // good duplicate vessel +// } +// } @Test public void importTemporaryPerson() throws Exception { -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
participants (1)
-
codelutin.com scm