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 2009/05/02 03:59:26 UTC
svn commit: r770862 -
/jakarta/jmeter/trunk/test/src/org/apache/jmeter/resources/PackageTest.java
Author: sebb
Date: Fri May 1 23:44:15 2009
New Revision: 770862
URL: http://svn.apache.org/viewvc?rev=770862&view=rev
Log:
Generalise checks to include all TestBean resources files
Modified:
jakarta/jmeter/trunk/test/src/org/apache/jmeter/resources/PackageTest.java
Modified: jakarta/jmeter/trunk/test/src/org/apache/jmeter/resources/PackageTest.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/test/src/org/apache/jmeter/resources/PackageTest.java?rev=770862&r1=770861&r2=770862&view=diff
==============================================================================
--- jakarta/jmeter/trunk/test/src/org/apache/jmeter/resources/PackageTest.java (original)
+++ jakarta/jmeter/trunk/test/src/org/apache/jmeter/resources/PackageTest.java Fri May 1 23:44:15 2009
@@ -57,12 +57,16 @@
public class PackageTest extends TestCase {
- // private static List defaultList = null;
- private static PropertyResourceBundle defaultPRB;
+ private static final String MESSAGES = "messages";
+
+ private static PropertyResourceBundle defaultPRB;
// Read resource into ResourceBundle and store in List
private PropertyResourceBundle getRAS(String res) throws Exception {
InputStream ras = this.getClass().getResourceAsStream(res);
+ if (ras == null){
+ return null;
+ }
return new PropertyResourceBundle(ras);
}
@@ -73,7 +77,11 @@
int fails = 0;
InputStream ras = this.getClass().getResourceAsStream(res);
if (ras==null){
- throw new IOException("Cannot open resource file "+res);
+ if (MESSAGES.equals(resourcePrefix)|| lang.length() == 0 ){
+ throw new IOException("Cannot open resource file "+res);
+ } else {
+ return 0;
+ }
}
BufferedReader fileReader = new BufferedReader(new InputStreamReader(ras));
String s;
@@ -81,13 +89,15 @@
if (s.length() > 0 && !s.startsWith("#") && !s.startsWith("!")) {
int equ = s.indexOf('=');
String key = s.substring(0, equ);
- /*
- * JMeterUtils.getResString() converts space to _ and lowercases
- * the key, so make sure all keys pass the test
- */
- if ((key.indexOf(' ') >= 0) || !key.toLowerCase(java.util.Locale.ENGLISH).equals(key)) {
- System.out.println("Invalid key for JMeterUtils " + key);
- fails++;
+ if (resourcePrefix.equals(MESSAGES)){// Only relevant for messages
+ /*
+ * JMeterUtils.getResString() converts space to _ and lowercases
+ * the key, so make sure all keys pass the test
+ */
+ if ((key.indexOf(' ') >= 0) || !key.toLowerCase(java.util.Locale.ENGLISH).equals(key)) {
+ System.out.println("Invalid key for JMeterUtils " + key);
+ fails++;
+ }
}
String val = s.substring(equ + 1);
l.add(key); // Store the key
@@ -113,11 +123,11 @@
}
// Helper method to construct resource name
- private static String getResName(String lang) {
+ private String getResName(String lang) {
if (lang.length() == 0) {
- return "messages.properties";
+ return resourcePrefix+".properties";
} else {
- return "messages_" + lang + ".properties";
+ return resourcePrefix+"_" + lang + ".properties";
}
}
@@ -152,6 +162,9 @@
} else if (checkUnexpected) {
// Check all the keys are in the default props file
PropertyResourceBundle prb = getRAS(res);
+ if (prb == null){
+ return;
+ }
Enumeration enumr = prb.getKeys();
while (enumr.hasMoreElements()) {
String key = null;
@@ -160,7 +173,7 @@
defaultPRB.getString(key); // Check key is in default
} catch (MissingResourceException e) {
subTestFailures++;
- System.out.println("Locale: " + resname + " has unexpected key: " + key);
+ System.out.println(resourcePrefix + "_" + resname + " has unexpected key: " + key);
}
}
}
@@ -170,18 +183,46 @@
}
}
+ // TODO generate list by scanning for *Resources.properties
+ private static final String[] prefixList={
+ MESSAGES,
+ "/org/apache/jmeter/assertions/BSFAssertionResources",
+ "/org/apache/jmeter/config/CSVDataSetResources",
+ "/org/apache/jmeter/config/RandomVariableConfigResources",
+ "/org/apache/jmeter/extractor/BeanShellPostProcessorResources",
+ "/org/apache/jmeter/extractor/BSFPostProcessorResources",
+ "/org/apache/jmeter/extractor/DebugPostProcessorResources",
+ "/org/apache/jmeter/modifiers/BeanShellPreProcessorResources",
+ "/org/apache/jmeter/modifiers/BSFPreProcessorResources",
+ "/org/apache/jmeter/sampler/DebugSamplerResources",
+ "/org/apache/jmeter/timers/BeanShellTimerResources",
+ "/org/apache/jmeter/timers/ConstantThroughputTimerResources",
+ "/org/apache/jmeter/timers/SyncTimerResources",
+ "/org/apache/jmeter/visualizers/BeanShellListenerResources",
+ "/org/apache/jmeter/visualizers/BSFListenerResources",
+ "/org/apache/jmeter/examples/testbeans/example2/Example2Resources",
+ "/org/apache/jmeter/protocol/http/sampler/AccessLogSamplerResources",
+ "/org/apache/jmeter/protocol/jdbc/config/DataSourceElementResources",
+ "/org/apache/jmeter/protocol/jdbc/sampler/JDBCSamplerResources",
+ };
+
/*
- * Use a suite to ensure that the default is done first
- */
+ * Use a suite to ensure that the default is done first
+ */
public static Test suite() {
TestSuite ts = new TestSuite("Resources PackageTest");
- ts.addTest(new PackageTest("atestDefault"));
- String lang[] = JMeterMenuBar.getLanguages();
- for(int i=0; i < lang.length; i++ ){
- if (!"en".equals(lang[i])){
- ts.addTest(new PackageTest("testLang",lang[i]));
- }
- }
+ for(int j=0; j < prefixList.length; j++){
+ String prefix = prefixList[j];
+ TestSuite pfx = new TestSuite(prefix) ;
+ pfx.addTest(new PackageTest("testLang","", prefix)); // load the default resource
+ String lang[] = JMeterMenuBar.getLanguages();
+ for(int i=0; i < lang.length; i++ ){
+ if (!"en".equals(lang[i])){ // Don't try to check the default language
+ pfx.addTest(new PackageTest("testLang", lang[i], prefix));
+ }
+ }
+ ts.addTest(pfx);
+ }
return ts;
}
@@ -190,23 +231,21 @@
private final String lang;
- public PackageTest(String testName) {
- super(testName);
- lang=null;
- subTestFailures = 0;
- }
+ private final String resourcePrefix; // e.g. "messages"
public PackageTest(String testName, String _lang) {
+ this(testName, _lang, MESSAGES);
+ }
+
+ public PackageTest(String testName, String _lang, String propName) {
super(testName);
lang=_lang;
subTestFailures = 0;
+ resourcePrefix = propName;
}
public void testLang() throws Exception{
check(lang);
}
- public void atestDefault() throws Exception {
- check("");
- }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org