Author: fdesbois Date: 2012-09-27 12:26:40 +0200 (Thu, 27 Sep 2012) New Revision: 606 Url: http://forge.codelutin.com/repositories/revision/sammoa/606 Log: little issue with route ordering, need to ensure that there is no two entities with same topiaCreateDate (it happened when next action was called) Modified: trunk/sammoa-application/src/main/java/fr/ulr/sammoa/application/FlightService.java trunk/sammoa-persistence/src/test/java/fr/ulr/sammoa/persistence/ObservationsTest.java Modified: trunk/sammoa-application/src/main/java/fr/ulr/sammoa/application/FlightService.java =================================================================== --- trunk/sammoa-application/src/main/java/fr/ulr/sammoa/application/FlightService.java 2012-09-27 09:27:56 UTC (rev 605) +++ trunk/sammoa-application/src/main/java/fr/ulr/sammoa/application/FlightService.java 2012-09-27 10:26:40 UTC (rev 606) @@ -1003,6 +1003,16 @@ result.setGlareUnder(previousRoute.isGlareUnder()); result.setGlareSeverity(previousRoute.getGlareSeverity()); result.setSubjectiveConditions(previousRoute.getSubjectiveConditions()); + + // Ensure that there is never two routes one after the other with + // the same topiaCreateDate + long topiaCreateDate = + result.getTopiaCreateDate().getTime(); + long previousTopiaCreateDate = + previousRoute.getTopiaCreateDate().getTime(); + if (topiaCreateDate == previousTopiaCreateDate) { + result.setTopiaCreateDate(new Date(topiaCreateDate + 1)); + } } // Prepare observer positions Modified: trunk/sammoa-persistence/src/test/java/fr/ulr/sammoa/persistence/ObservationsTest.java =================================================================== --- trunk/sammoa-persistence/src/test/java/fr/ulr/sammoa/persistence/ObservationsTest.java 2012-09-27 09:27:56 UTC (rev 605) +++ trunk/sammoa-persistence/src/test/java/fr/ulr/sammoa/persistence/ObservationsTest.java 2012-09-27 10:26:40 UTC (rev 606) @@ -28,6 +28,7 @@ import org.junit.Test; import org.nuiton.util.DateUtil; +import java.util.Date; import java.util.List; /** @@ -75,16 +76,23 @@ routes.add(route6); Route route7 = new RouteImpl(); - route7.setEffortNumber(7); + route7.setRouteType(RouteType.TRANSIT); + route7.setTopiaCreateDate(new Date(1000)); route7.setBeginTime(DateUtil.createDate(12, 54, 14, 12, 1, 2012)); routes.add(route7); Route route8 = new RouteImpl(); - route8.setEffortNumber(8); - route8.setBeginTime(DateUtil.createDate(12, 51, 16, 12, 1, 2012)); - route8.setDeleted(true); + route8.setEffortNumber(7); + route8.setTopiaCreateDate(new Date(2000)); + route8.setBeginTime(DateUtil.createDate(12, 54, 14, 12, 1, 2012)); routes.add(route8); + Route route9 = new RouteImpl(); + route9.setEffortNumber(8); + route9.setBeginTime(DateUtil.createDate(12, 51, 16, 12, 1, 2012)); + route9.setDeleted(true); + routes.add(route9); + // In route1 { Observation observation = new ObservationImpl(); @@ -99,6 +107,7 @@ Assert.assertFalse(Observations.inRoute(observation, route6, routes, false)); Assert.assertFalse(Observations.inRoute(observation, route7, routes, false)); Assert.assertFalse(Observations.inRoute(observation, route8, routes, false)); + Assert.assertFalse(Observations.inRoute(observation, route9, routes, false)); } // In route2 @@ -115,6 +124,7 @@ Assert.assertFalse(Observations.inRoute(observation, route6, routes, false)); Assert.assertFalse(Observations.inRoute(observation, route7, routes, false)); Assert.assertFalse(Observations.inRoute(observation, route8, routes, false)); + Assert.assertFalse(Observations.inRoute(observation, route9, routes, false)); } // In route1 because ignore deleted @@ -131,9 +141,10 @@ Assert.assertFalse(Observations.inRoute(observation, route6, routes, true)); Assert.assertFalse(Observations.inRoute(observation, route7, routes, true)); Assert.assertFalse(Observations.inRoute(observation, route8, routes, true)); + Assert.assertFalse(Observations.inRoute(observation, route9, routes, true)); } - // In route8 + // In route9 { Observation observation = new ObservationImpl(); observation.setObservationNumber(4); @@ -146,10 +157,11 @@ Assert.assertFalse(Observations.inRoute(observation, route5, routes, false)); Assert.assertFalse(Observations.inRoute(observation, route6, routes, false)); Assert.assertFalse(Observations.inRoute(observation, route7, routes, false)); - Assert.assertTrue(Observations.inRoute(observation, route8, routes, false)); + Assert.assertFalse(Observations.inRoute(observation, route8, routes, false)); + Assert.assertTrue(Observations.inRoute(observation, route9, routes, false)); } - // In route7 because ignore deleted + // In route8 because ignore deleted { Observation observation = new ObservationImpl(); observation.setObservationNumber(5); @@ -161,8 +173,9 @@ Assert.assertFalse(Observations.inRoute(observation, route4, routes, true)); Assert.assertFalse(Observations.inRoute(observation, route5, routes, true)); Assert.assertFalse(Observations.inRoute(observation, route6, routes, true)); - Assert.assertTrue(Observations.inRoute(observation, route7, routes, true)); + Assert.assertFalse(Observations.inRoute(observation, route7, routes, true)); Assert.assertTrue(Observations.inRoute(observation, route8, routes, true)); + Assert.assertTrue(Observations.inRoute(observation, route9, routes, true)); } // In route6 @@ -179,6 +192,7 @@ Assert.assertTrue(Observations.inRoute(observation, route6, routes, false)); Assert.assertFalse(Observations.inRoute(observation, route7, routes, false)); Assert.assertFalse(Observations.inRoute(observation, route8, routes, false)); + Assert.assertFalse(Observations.inRoute(observation, route9, routes, false)); } // In route5 because ignore deleted @@ -195,6 +209,7 @@ Assert.assertTrue(Observations.inRoute(observation, route6, routes, true)); Assert.assertFalse(Observations.inRoute(observation, route7, routes, true)); Assert.assertFalse(Observations.inRoute(observation, route8, routes, true)); + Assert.assertFalse(Observations.inRoute(observation, route9, routes, true)); } }