r2572 - in isis-fish/trunk/src: main/java/fr/ifremer/isisfish/datastore test/java/fr/ifremer/isisfish/datastore test/resources test/resources/fr test/resources/fr/ifremer test/resources/fr/ifremer/isisfish test/resources/fr/ifremer/isisfish/datastore
Author: chatellier Date: 2009-09-02 11:04:38 +0000 (Wed, 02 Sep 2009) New Revision: 2572 Added: isis-fish/trunk/src/test/resources/fr/ isis-fish/trunk/src/test/resources/fr/ifremer/ isis-fish/trunk/src/test/resources/fr/ifremer/isisfish/ isis-fish/trunk/src/test/resources/fr/ifremer/isisfish/datastore/ isis-fish/trunk/src/test/resources/fr/ifremer/isisfish/datastore/exception.information isis-fish/trunk/src/test/resources/fr/ifremer/isisfish/datastore/information Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/SimulationInformation.java isis-fish/trunk/src/test/java/fr/ifremer/isisfish/datastore/SimulationInformationTest.java Log: Ajout de test sur un format de fichier existant. Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/SimulationInformation.java =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/SimulationInformation.java 2009-09-02 10:42:23 UTC (rev 2571) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/SimulationInformation.java 2009-09-02 11:04:38 UTC (rev 2572) @@ -41,7 +41,7 @@ * Cette classe permet de conserver des informations sur le deroulement d'une * simulation. La plupart des informations sont automatiquement renseignees, * mais l'utilisateur peut lui aussi ajouter des informations avec la methode - * {@link #addInformation(String)} + * {@link #addInformation(String)}. * * @author poussin * @version $Revision$ @@ -307,7 +307,7 @@ * * @return other information */ - public String getInformation() { + protected String getInformation() { String result = info.getProperty(OTHER_INFO); if (result == null) { result = ""; @@ -315,7 +315,12 @@ return result; } - public void addInformation(String value) { - setInfo(OTHER_INFO, getInformation() + value + "\n"); + /** + * Add additional simulation information. + * + * @param info new info + */ + public void addInformation(String info) { + setInfo(OTHER_INFO, getInformation() + info + "\n"); } } Modified: isis-fish/trunk/src/test/java/fr/ifremer/isisfish/datastore/SimulationInformationTest.java =================================================================== --- isis-fish/trunk/src/test/java/fr/ifremer/isisfish/datastore/SimulationInformationTest.java 2009-09-02 10:42:23 UTC (rev 2571) +++ isis-fish/trunk/src/test/java/fr/ifremer/isisfish/datastore/SimulationInformationTest.java 2009-09-02 11:04:38 UTC (rev 2572) @@ -20,6 +20,7 @@ import java.io.File; import java.io.IOException; +import java.net.URL; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; @@ -62,6 +63,47 @@ } /** + * Test que le format du fichier de simulation ne change pas. + * + * @throws ParseException + */ + @Test + public void testExistingSimulationFile() throws ParseException { + URL informationURL = SimulationInformationTest.class.getResource("information"); + File file = new File(informationURL.getPath()); + + Assert.assertTrue(file.exists()); + + // Do not use same format as {@link SimulationInformation#dateFormat} + DateFormat df = new SimpleDateFormat("yyyy/dd/MM hh:mm:ss"); + + SimulationInformation info = new SimulationInformation(file); + Assert.assertEquals(df.parse("2009/31/08 14:44:57"), info.getSimulationStart()); + Assert.assertEquals(df.parse("2009/31/08 14:48:00"), info.getSimulationEnd()); + Assert.assertEquals(1482, info.getExportTime("VesselMargin.java")); + Assert.assertFalse(info.hasError()); + Assert.assertTrue(info.getOptimizationUsage().indexOf("Cache used") > 0); + Assert.assertNull(info.getStatistic()); + } + + /** + * Test que le format du fichier de simulation ne change pas. + * + * Cas d'un fichier avec une erreur. + */ + @Test + public void testExistingSimulationFileException() { + URL informationURL = SimulationInformationTest.class.getResource("exception.information"); + File file = new File(informationURL.getPath()); + + Assert.assertTrue(file.exists()); + + SimulationInformation info = new SimulationInformation(file); + Assert.assertTrue(info.hasError()); + Assert.assertTrue(info.getException().indexOf("TopiaException") > 0); + } + + /** * Test simulation date storage. * * @throws IOException Added: isis-fish/trunk/src/test/resources/fr/ifremer/isisfish/datastore/exception.information =================================================================== --- isis-fish/trunk/src/test/resources/fr/ifremer/isisfish/datastore/exception.information (rev 0) +++ isis-fish/trunk/src/test/resources/fr/ifremer/isisfish/datastore/exception.information 2009-09-02 11:04:38 UTC (rev 2572) @@ -0,0 +1,4 @@ +#Simulation Information +#Mon Aug 31 16:02:56 CEST 2009 +exception=org.codelutin.topia.TopiaException\: Error during commit\n\tat org.codelutin.topia.framework.TopiaContextImpl.commitTransaction(TopiaContextImpl.java\:690)\n\tat simulators.DefaultSimulator.simulate(DefaultSimulator.java\:316)\n\tat fr.ifremer.isisfish.simulator.SimulationHelper.localSimulateSameThread(SimulationHelper.java\:475)\n\tat fr.ifremer.isisfish.simulator.SimulationHelper$SimThread.run(SimulationHelper.java\:385)\nCaused by\: org.hibernate.exception.GenericJDBCException\: could not insert\: [fr.ifremer.isisfish.entities.ResultImpl]\n\tat org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java\:103)\n\tat org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java\:91)\n\tat org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java\:43)\n\tat org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java\:2267)\n\tat org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java\:2660)\n\tat org.hibernate.action.EntityInsertAction.execute(EntityInsertAction.java\:56)\n\tat org.hibernate.engine.ActionQueue.execute(ActionQueue.java\:250)\n\tat org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java\:234)\n\tat org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java\:141)\n\tat org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java\:298)\n\tat org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java\:27)\n\tat org.hibernate.impl.SessionImpl.flush(SessionImpl.java\:1000)\n\tat org.codelutin.topia.framework.TopiaContextImpl.commitTransaction(TopiaContextImpl.java\:675)\n\t... 3 more\nCaused by\: org.h2.jdbc.JdbcSQLException\: Database is already closed (to disable automatic closing at VM shutdown, add ";DB_CLOSE_ON_EXIT\=FALSE" to the db URL) [90121-60]\n\tat org.h2.message.Message.getSQLException(Message.java\:84)\n\tat org.h2.message.Message.getSQLException(Message.java\:88)\n\tat org.h2.message.Message.getSQLException(Message.java\:66)\n\tat org.h2.message.Message.getSQLException(Message.java\:109)\n\tat org.h2.jdbc.JdbcConnection.checkClosed(JdbcConnection.java\:1174)\n\tat org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java\:163)\n\tat org.hibernate.jdbc.AbstractBatcher.getPreparedStatement(AbstractBatcher.java\:505)\n\tat org.hibernate.jdbc.AbstractBatcher.prepareStatement(AbstractBatcher.java\:94)\n\tat org.hibernate.jdbc.AbstractBatcher.prepareStatement(AbstractBatcher.java\:87)\n\tat org.hibernate.jdbc.AbstractBatcher.prepareBatchStatement(AbstractBatcher.java\:222)\n\tat org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java\:2224)\n\t... 12 more\n +simulationStart=2009.08.31 15\:37\:17 Added: isis-fish/trunk/src/test/resources/fr/ifremer/isisfish/datastore/information =================================================================== --- isis-fish/trunk/src/test/resources/fr/ifremer/isisfish/datastore/information (rev 0) +++ isis-fish/trunk/src/test/resources/fr/ifremer/isisfish/datastore/information 2009-09-02 11:04:38 UTC (rev 2572) @@ -0,0 +1,19 @@ +#Simulation Information +#Mon Aug 31 14:48:01 CEST 2009 +exportTime.VesselMargin.java=1482 +optimizationUsage=--- Cache Statistiques ---\nTotal call\: 915765\nCache used\: 527279\nCache usage\: 57%\n--------------------\n +exportTime.EffortsMetier.java=1783 +exportTime.ZonesDefinition.java=29 +exportTime.RejetsPoids.java=2 +exportTime.OwnerMargin.java=275 +exportTime.CapturesPoids.java=1645 +exportTime.RejetsNombre.java=98 +simulationStart=2009.08.31 14\:44\:57 +exportTime.CapturesNombre.java=368 +exportTime.RegionDefinition.java=2 +exportTime.CellsDefinition.java=11 +exportTime.Biomasses.java=1558 +exportTime.NonActivite.java=273 +simulationEnd=2009.08.31 14\:48\:00 +exportTime.All\ export=7839 +exportTime.Abundances.java=305
participants (1)
-
chatellierï¼ users.labs.libre-entreprise.org