diff options
Diffstat (limited to 'qpid/java/perftests/src')
| -rw-r--r-- | qpid/java/perftests/src/main/java/org/apache/qpid/disttest/db/ResultsDbWriter.java | 8 | ||||
| -rw-r--r-- | qpid/java/perftests/src/test/java/org/apache/qpid/disttest/db/ResultsDbWriterTest.java | 20 |
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" }) |
