summaryrefslogtreecommitdiff
path: root/qpid/java
diff options
context:
space:
mode:
authorRobert Gemmell <robbie@apache.org>2014-04-05 15:29:34 +0000
committerRobert Gemmell <robbie@apache.org>2014-04-05 15:29:34 +0000
commit841b355f8e858ff59aae42e20208782298063a0c (patch)
tree4a757e629bf8decd02970bfb074b43b4f120a8f2 /qpid/java
parent499a9094360a438d8c79f2da7db5ae151f902b06 (diff)
downloadqpid-python-841b355f8e858ff59aae42e20208782298063a0c.tar.gz
QPID-5048: fix parsing error in AbstractTestLogging when determining connection or channel id, which causes spurious failure when test ordering differs while running in Jenkins
Patch supplied by Andrew MacBean <andymacbean@gmail.com> git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1585105 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java')
-rw-r--r--qpid/java/systests/src/main/java/org/apache/qpid/server/logging/AbstractTestLogging.java35
-rw-r--r--qpid/java/systests/src/main/java/org/apache/qpid/server/logging/ConnectionLoggingTest.java5
2 files changed, 21 insertions, 19 deletions
diff --git a/qpid/java/systests/src/main/java/org/apache/qpid/server/logging/AbstractTestLogging.java b/qpid/java/systests/src/main/java/org/apache/qpid/server/logging/AbstractTestLogging.java
index 84017b6850..8555d9c751 100644
--- a/qpid/java/systests/src/main/java/org/apache/qpid/server/logging/AbstractTestLogging.java
+++ b/qpid/java/systests/src/main/java/org/apache/qpid/server/logging/AbstractTestLogging.java
@@ -26,10 +26,12 @@ import org.apache.qpid.util.LogMonitor;
import java.io.FileNotFoundException;
import java.io.IOException;
+import java.text.NumberFormat;
import java.util.HashMap;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
+import java.util.Locale;
/**
* Abstract superclass for logging test set up and utility methods.
@@ -110,15 +112,7 @@ public class AbstractTestLogging extends QpidBrokerTestCase
{
end = log.length();
}
-
- try
- {
- return Integer.parseInt(log.substring(start, end));
- }
- catch (Exception e)
- {
- return -1;
- }
+ return parseInt(log, start, end);
}
protected String fromMessage(String log)
@@ -237,14 +231,7 @@ public class AbstractTestLogging extends QpidBrokerTestCase
{
int conIDStart = log.indexOf("con:") + 4;
int conIDEnd = log.indexOf("(", conIDStart);
- try
- {
- return Integer.parseInt(log.substring(conIDStart, conIDEnd));
- }
- catch (Exception e)
- {
- return -1;
- }
+ return parseInt(log, conIDStart, conIDEnd);
}
/**
@@ -409,4 +396,18 @@ public class AbstractTestLogging extends QpidBrokerTestCase
System.err.println(monitor.readFile());
}
}
+
+ private int parseInt(final String logSubstring, final int start, final int end)
+ {
+ try
+ {
+ final NumberFormat format = NumberFormat.getInstance(Locale.getDefault());
+ final Number number = format.parse(logSubstring.substring(start, end));
+ return number.intValue();
+ }
+ catch (Exception e)
+ {
+ return -1;
+ }
+ }
}
diff --git a/qpid/java/systests/src/main/java/org/apache/qpid/server/logging/ConnectionLoggingTest.java b/qpid/java/systests/src/main/java/org/apache/qpid/server/logging/ConnectionLoggingTest.java
index 2eccab102b..0be1f69948 100644
--- a/qpid/java/systests/src/main/java/org/apache/qpid/server/logging/ConnectionLoggingTest.java
+++ b/qpid/java/systests/src/main/java/org/apache/qpid/server/logging/ConnectionLoggingTest.java
@@ -179,8 +179,9 @@ public class ConnectionLoggingTest extends AbstractTestLogging
assertTrue("Message does not end with close:" + log, log.endsWith("Close"));
// Extract connection ID to validate there is a CON-1001 messasge for it
- int closeConnectionID = getConnectionID(fromSubject(log));
- assertTrue("Could not find connection id in CLOSE", closeConnectionID != -1);
+ final String logSubject = fromSubject(log);
+ int closeConnectionID = getConnectionID(logSubject);
+ assertTrue("Could not get the connection id from CLOSE message: " + logSubject, closeConnectionID != -1);
//Previous log message should be the open
log = getLogMessageFromEnd(results, 1);