summaryrefslogtreecommitdiff
path: root/qpid/java/perftests/src
diff options
context:
space:
mode:
authorPhil Harvey <philharveyonline@apache.org>2013-01-30 13:23:07 +0000
committerPhil Harvey <philharveyonline@apache.org>2013-01-30 13:23:07 +0000
commit3c6cf930db84c77a15162c773013967f881af2c3 (patch)
treedb3b49deda6c1093e9cdf80d275ccbd01fa8cc01 /qpid/java/perftests/src
parent56ae5b5536cd437278fe50339f02993fcadf6980 (diff)
downloadqpid-python-3c6cf930db84c77a15162c773013967f881af2c3.tar.gz
QPID-4533: fixed bug in perftest ResultsDbWriter's default run ID to make it timezone-agnostic
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1440399 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/perftests/src')
-rw-r--r--qpid/java/perftests/src/main/java/org/apache/qpid/disttest/db/ResultsDbWriter.java8
-rw-r--r--qpid/java/perftests/src/test/java/org/apache/qpid/disttest/db/ResultsDbWriterTest.java20
2 files changed, 23 insertions, 5 deletions
diff --git a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/db/ResultsDbWriter.java b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/db/ResultsDbWriter.java
index bd3405eadf..549f37c2da 100644
--- a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/db/ResultsDbWriter.java
+++ b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/db/ResultsDbWriter.java
@@ -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
{
diff --git a/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/db/ResultsDbWriterTest.java b/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/db/ResultsDbWriterTest.java
index e2a211911e..3bbf601550 100644
--- a/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/db/ResultsDbWriterTest.java
+++ b/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/db/ResultsDbWriterTest.java
@@ -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 TestCase
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" })