You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jmeter-dev@jakarta.apache.org by se...@apache.org on 2005/01/08 16:10:41 UTC
cvs commit: jakarta-jmeter/src/core/org/apache/jmeter/resources PackageTest.java
sebb 2005/01/08 07:10:41
Modified: src/core/org/apache/jmeter/resources Tag: rel-2_0
PackageTest.java
Log:
Add check for possibly incorrectly formatted messages (see bug 32993)
Revision Changes Path
No revision
No revision
1.8.2.4 +26 -5 jakarta-jmeter/src/core/org/apache/jmeter/resources/PackageTest.java
Index: PackageTest.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/resources/PackageTest.java,v
retrieving revision 1.8.2.3
retrieving revision 1.8.2.4
diff -u -r1.8.2.3 -r1.8.2.4
--- PackageTest.java 30 Oct 2004 10:24:06 -0000 1.8.2.3
+++ PackageTest.java 8 Jan 2005 15:10:41 -0000 1.8.2.4
@@ -67,9 +67,11 @@
return new PropertyResourceBundle(ras);
}
+ private static Object [] DUMMY_PARAMS = new Object[]{"1","2","3","4","5","6","7","8","9"};
// Read resource file saving the keys
- private void readRF(String res, List l) throws Exception
+ private int readRF(String res, List l) throws Exception
{
+ int fails =0 ;
InputStream ras = this.getClass().getResourceAsStream(res);
BufferedReader fileReader =
new BufferedReader(new InputStreamReader(ras));
@@ -77,9 +79,28 @@
while((s=fileReader.readLine())!=null)
{
if (s.length() > 0 && !s.startsWith("#")) {
- l.add(s.substring(0,s.indexOf('=')));
+ l.add(s.substring(0,s.indexOf('='))); // Store the key
+ /*
+ * Now check for invalid message format:
+ * if string contains {0} and ' there may be a problem,
+ * so do a format with dummy parameters and check if there
+ * is a { in the output.
+ * A bit crude, but should be enough for now.
+ */
+ if (s.indexOf("{0}") > 0 && s.indexOf("'") > 0)
+ {
+ String m = java.text.MessageFormat.format(s,DUMMY_PARAMS);
+ if (m.indexOf("{") > 0) {
+ fails++;
+ System.out.println("Incorrect message format ? (input/output): ");
+ System.out.println(s);
+ System.out.println(m);
+ }
+ }
+
}
}
+ return fails;
}
// Helper method to construct resource name
@@ -103,7 +124,7 @@
{
ArrayList alf = new ArrayList(500);// holds keys from file
String res = getResName(resname);
- readRF(res,alf);
+ subTestFailures += readRF(res,alf);
Collections.sort(alf);
// Look for duplicate keys in the file
---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org