r236 - in trunk/coser-business/src: main/resources/fr/ifremer/coser/data main/resources/i18n test/java/fr/ifremer/coser/services
Author: chatellier Date: 2010-11-18 12:16:11 +0000 (Thu, 18 Nov 2010) New Revision: 236 Log: Ajout d'un controle pour les classe de longueur Modified: trunk/coser-business/src/main/resources/fr/ifremer/coser/data/Length-error-validation.xml trunk/coser-business/src/main/resources/i18n/coser-business_en_GB.properties trunk/coser-business/src/main/resources/i18n/coser-business_fr_FR.properties trunk/coser-business/src/test/java/fr/ifremer/coser/services/ValidationServiceTest.java Modified: trunk/coser-business/src/main/resources/fr/ifremer/coser/data/Length-error-validation.xml =================================================================== --- trunk/coser-business/src/main/resources/fr/ifremer/coser/data/Length-error-validation.xml 2010-11-18 12:15:08 UTC (rev 235) +++ trunk/coser-business/src/main/resources/fr/ifremer/coser/data/Length-error-validation.xml 2010-11-18 12:16:11 UTC (rev 236) @@ -65,6 +65,10 @@ <message>length attribute is not a valid double</message> </field-validator> </field> + <validator type="coserExpression"> + <param name="expression"><![CDATA[lengthAsString.contains(".00") || lengthAsString.contains(".50")]]></param> + <message>coser.business.control.error.invalidLengthLengthStep</message> + </validator> <field name="numberAsString"> <field-validator type="checkDouble"> <param name="notAvailable">NA</param> Modified: trunk/coser-business/src/main/resources/i18n/coser-business_en_GB.properties =================================================================== --- trunk/coser-business/src/main/resources/i18n/coser-business_en_GB.properties 2010-11-18 12:15:08 UTC (rev 235) +++ trunk/coser-business/src/main/resources/i18n/coser-business_en_GB.properties 2010-11-18 12:16:11 UTC (rev 236) @@ -40,6 +40,7 @@ coser.business.control.error.incompleteHaulDataCatch= coser.business.control.error.incompleteHaulDataLength= coser.business.control.error.incompleteHaulSpeciesData= +coser.business.control.error.invalidLengthLengthStep= coser.business.control.error.minObservationCount= coser.business.control.error.minObservationCountDetail= coser.business.control.error.noCatchNumberWithWeight= Modified: trunk/coser-business/src/main/resources/i18n/coser-business_fr_FR.properties =================================================================== --- trunk/coser-business/src/main/resources/i18n/coser-business_fr_FR.properties 2010-11-18 12:15:08 UTC (rev 235) +++ trunk/coser-business/src/main/resources/i18n/coser-business_fr_FR.properties 2010-11-18 12:16:11 UTC (rev 236) @@ -40,6 +40,7 @@ coser.business.control.error.incompleteHaulDataCatch=Certains couples Annee|Trait ne sont pas pr\u00E9sents dans les captures coser.business.control.error.incompleteHaulDataLength=Certains couples Annee|Trait ne sont pas pr\u00E9sents dans les tailles coser.business.control.error.incompleteHaulSpeciesData=Certains couples Annee|Trait|Espece ne sont pas pr\u00E9sents dans les captures +coser.business.control.error.invalidLengthLengthStep=Pas de longeur invalide (autoris\u00E9 centim\u00E8tre et demi-centim\u00E8tre) coser.business.control.error.minObservationCount=Nombre minimal d'observation non atteint coser.business.control.error.minObservationCountDetail=Nombre minimal d'observation non atteint (%s) \: %.2f coser.business.control.error.noCatchNumberWithWeight=Poids sp\u00E9cifi\u00E9, mais nombre non d\u00E9finit Modified: trunk/coser-business/src/test/java/fr/ifremer/coser/services/ValidationServiceTest.java =================================================================== --- trunk/coser-business/src/test/java/fr/ifremer/coser/services/ValidationServiceTest.java 2010-11-18 12:15:08 UTC (rev 235) +++ trunk/coser-business/src/test/java/fr/ifremer/coser/services/ValidationServiceTest.java 2010-11-18 12:16:11 UTC (rev 236) @@ -37,6 +37,7 @@ import fr.ifremer.coser.control.ValidationError; import fr.ifremer.coser.data.Catch; import fr.ifremer.coser.data.Haul; +import fr.ifremer.coser.data.Length; import fr.ifremer.coser.storage.DataStorage; import fr.ifremer.coser.storage.MemoryDataStorage; @@ -85,6 +86,19 @@ log.warn(errors); Assert.assertTrue(errors.isEmpty()); } + + /** + * Test la validation des valeurs NA pour les doubles. + */ + @Test + public void testLengthStep() { + Length myLength = new Length(); + // "Survey","Year","Haul","Species","Sex","Maturity","Length","Number","Weight","Age" + myLength.setData(new String[]{"1", "Test survey","1999","Test trait","Test sp","i","m","23.25", "3.00", "44.99", "12"}); + List<ValidationError> errors = validationService.validate(myLength, Category.LENGTH); + log.warn(errors); + Assert.assertEquals(1, errors.size()); + } /** * Test que certains double ont 5 decimales de définie.
participants (1)
-
chatellier@users.labs.libre-entreprise.org