[virtualcommons-svn] SF.net SVN: virtualcommons:[424] csidex/trunk/src
Status: Beta
Brought to you by:
alllee
From: <al...@us...> - 2010-01-05 20:32:36
|
Revision: 424 http://virtualcommons.svn.sourceforge.net/virtualcommons/?rev=424&view=rev Author: alllee Date: 2010-01-05 20:31:55 +0000 (Tue, 05 Jan 2010) Log Message: ----------- fixing SaveFileProcessor interval handling to not include interval end in the interval, i.e., [intervalStart, intervalEnd). In other words, an interval of 60 seconds is 0-59, 60-119, 120-179, 180-239. When converting the data files this means we often have to manually write out the aggregate statistics for the last interval since the isIntervalElapsed check never actually reaches the threshold. Modified Paths: -------------- csidex/trunk/src/main/java/edu/asu/commons/experiment/SaveFileProcessor.java csidex/trunk/src/main/java/edu/asu/commons/net/SocketIdentifier.java csidex/trunk/src/test/java/edu/asu/commons/experiment/SaveFileProcessorTest.java Modified: csidex/trunk/src/main/java/edu/asu/commons/experiment/SaveFileProcessor.java =================================================================== --- csidex/trunk/src/main/java/edu/asu/commons/experiment/SaveFileProcessor.java 2010-01-05 19:28:43 UTC (rev 423) +++ csidex/trunk/src/main/java/edu/asu/commons/experiment/SaveFileProcessor.java 2010-01-05 20:31:55 UTC (rev 424) @@ -58,7 +58,7 @@ public boolean isIntervalElapsed(int secondsElapsed) { intervalEnd = (currentInterval + 1) * secondsPerInterval; - if (secondsElapsed > intervalEnd) { + if (secondsElapsed >= intervalEnd) { currentInterval++; return true; } Modified: csidex/trunk/src/main/java/edu/asu/commons/net/SocketIdentifier.java =================================================================== --- csidex/trunk/src/main/java/edu/asu/commons/net/SocketIdentifier.java 2010-01-05 19:28:43 UTC (rev 423) +++ csidex/trunk/src/main/java/edu/asu/commons/net/SocketIdentifier.java 2010-01-05 20:31:55 UTC (rev 424) @@ -140,7 +140,7 @@ public int compareTo(SocketIdentifier socketId) { int comparison = 0; - if (stationNumber != null) { + if (stationNumber != null && socketId.stationNumber != null) { comparison = stationNumber.compareTo(socketId.stationNumber); } if (comparison == 0) { Modified: csidex/trunk/src/test/java/edu/asu/commons/experiment/SaveFileProcessorTest.java =================================================================== --- csidex/trunk/src/test/java/edu/asu/commons/experiment/SaveFileProcessorTest.java 2010-01-05 19:28:43 UTC (rev 423) +++ csidex/trunk/src/test/java/edu/asu/commons/experiment/SaveFileProcessorTest.java 2010-01-05 20:31:55 UTC (rev 424) @@ -40,17 +40,18 @@ public void testIntervals() { int secondsPerInterval = 60; processor.setSecondsPerInterval(secondsPerInterval); - for (int i = 0; i <= secondsPerInterval; i++) { - assertFalse("interval of 60 seconds should return false for isIntervalElapsed from 0-60", processor.isIntervalElapsed(i)); + for (int i = 0; i < secondsPerInterval; i++) { + assertFalse("interval of 60 seconds should return false for isIntervalElapsed from 0-59", processor.isIntervalElapsed(i)); } - assertTrue("interval of 60 seconds should return true for isIntervalElapsed(61)", processor.isIntervalElapsed(61)); - assertFalse("should now return false for 60 seconds", processor.isIntervalElapsed(61)); - for (int i = 0; i <= secondsPerInterval*2; i++) { - assertFalse("interval of 60 seconds should return false for isIntervalElapsed from 0-120", processor.isIntervalElapsed(i)); + assertTrue("interval of 60 seconds should return true for isIntervalElapsed(60)", processor.isIntervalElapsed(60)); + assertFalse("should now return false for 60 seconds", processor.isIntervalElapsed(60)); + for (int i = 0; i < secondsPerInterval*2; i++) { + assertFalse("interval of 60 seconds should return false for isIntervalElapsed from 0-119", processor.isIntervalElapsed(i)); } - assertTrue("interval of 60 seconds should return true for isIntervalElapsed(121)", processor.isIntervalElapsed(121)); + assertTrue("interval of 60 seconds should return true for isIntervalElapsed(120)", processor.isIntervalElapsed(120)); + assertFalse("interval has already elapsed for isIntervalElapsed(120)", processor.isIntervalElapsed(120)); processor.resetCurrentInterval(); - for (int i = 0; i <= secondsPerInterval; i++) { + for (int i = 0; i < secondsPerInterval; i++) { assertFalse("after reset, interval of 60 seconds should return false for isIntervalElapsed from 0-60", processor.isIntervalElapsed(i)); } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |