You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ph...@apache.org on 2013/01/30 14:23:07 UTC

svn commit: r1440399 - in /qpid/trunk/qpid/java/perftests/src: main/java/org/apache/qpid/disttest/db/ResultsDbWriter.java test/java/org/apache/qpid/disttest/db/ResultsDbWriterTest.java

Author: philharveyonline
Date: Wed Jan 30 13:23:07 2013
New Revision: 1440399

URL: http://svn.apache.org/viewvc?rev=1440399&view=rev
Log:
QPID-4533: fixed bug in perftest ResultsDbWriter's default run ID to make it timezone-agnostic

Modified:
    qpid/trunk/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/db/ResultsDbWriter.java
    qpid/trunk/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/db/ResultsDbWriterTest.java

Modified: qpid/trunk/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/db/ResultsDbWriter.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/db/ResultsDbWriter.java?rev=1440399&r1=1440398&r2=1440399&view=diff
==============================================================================
--- qpid/trunk/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/db/ResultsDbWriter.java (original)
+++ qpid/trunk/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/db/ResultsDbWriter.java Wed Jan 30 13:23:07 2013
@@ -32,8 +32,10 @@ import java.sql.ResultSet;
 import java.sql.SQLException;
 import java.sql.Statement;
 import java.sql.Timestamp;
+import java.util.Calendar;
 import java.util.Date;
 import java.util.Hashtable;
+import java.util.TimeZone;
 
 import javax.naming.Context;
 import javax.naming.NamingException;
@@ -145,7 +147,7 @@ public class ResultsDbWriter
     private final Clock _clock;
 
     /**
-     * @param runId may be null, in which case a default value is chosen based on current time.
+     * @param runId may be null, in which case a default value is chosen based on current GMT time
      * @param context must contain environment entries {@value #DRIVER_NAME} and {@value #URL}.
      */
     public ResultsDbWriter(Context context, String runId)
@@ -167,7 +169,9 @@ public class ResultsDbWriter
         if(runId == null)
         {
             Date dateNow = new Date(_clock.currentTimeMillis());
-            return String.format("run %1$tF %1$tT.%tL", dateNow);
+            Calendar calNow = Calendar.getInstance(TimeZone.getTimeZone("GMT+00:00"));
+            calNow.setTime(dateNow);
+            return String.format("run %1$tF %1$tT.%tL", calNow);
         }
         else
         {

Modified: qpid/trunk/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/db/ResultsDbWriterTest.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/db/ResultsDbWriterTest.java?rev=1440399&r1=1440398&r2=1440399&view=diff
==============================================================================
--- qpid/trunk/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/db/ResultsDbWriterTest.java (original)
+++ qpid/trunk/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/db/ResultsDbWriterTest.java Wed Jan 30 13:23:07 2013
@@ -35,6 +35,7 @@ import java.sql.ResultSet;
 import java.sql.Statement;
 import java.sql.Timestamp;
 import java.util.Hashtable;
+import java.util.TimeZone;
 
 import javax.naming.Context;
 import javax.naming.NamingException;
@@ -49,7 +50,6 @@ import org.apache.qpid.util.FileUtils;
 
 public class ResultsDbWriterTest extends TestCase
 {
-
     private static final long _dummyTimestamp = 1234;
 
     private File _tempDbDirectory;
@@ -96,8 +96,22 @@ public class ResultsDbWriterTest extends
 
     public void testDefaultRunId() throws Exception
     {
-        ResultsDbWriter resultsDbWriter = new ResultsDbWriter(getContext(), null, _clock);
-        assertEquals("run 1970-01-01 01:00:01.234", resultsDbWriter.getRunId());
+        TimeZone defaultTimeZone = TimeZone.getDefault();
+        try
+        {
+            // set non-GMT timezone to make the test more rigorous.
+            TimeZone.setDefault(TimeZone.getTimeZone("GMT-05:00"));
+            ResultsDbWriter resultsDbWriter = new ResultsDbWriter(getContext(), null, _clock);
+            String runId = resultsDbWriter.getRunId();
+            assertEquals(
+                    "Default run id '" + runId + "' should correspond to dummy timestamp " + _clock.currentTimeMillis(),
+                    "run 1970-01-01 00:00:01.234",
+                    runId);
+        }
+        finally
+        {
+            TimeZone.setDefault(defaultTimeZone);
+        }
     }
 
     @SuppressWarnings({ "unchecked", "rawtypes" })



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org