Methods Summary |
---|
protected java.lang.String | classNameFromFile(java.lang.String classFileName)
// convert /a/b.class to a.b
String s= classFileName.substring(0, classFileName.length()-SUFFIX_LENGTH);
String s2= s.replace(File.separatorChar, '.");
if (s2.startsWith("."))
return s2.substring(1);
return s2;
|
public java.util.Hashtable | collectFilesInPath(java.lang.String classPath)
Hashtable result= collectFilesInRoots(splitClassPath(classPath));
return result;
|
java.util.Hashtable | collectFilesInRoots(java.util.Vector roots)
Hashtable result= new Hashtable(100);
Enumeration e= roots.elements();
while (e.hasMoreElements())
gatherFiles(new File((String)e.nextElement()), "", result);
return result;
|
public java.util.Enumeration | collectTests()
String classPath= System.getProperty("java.class.path");
Hashtable result = collectFilesInPath(classPath);
return result.elements();
|
void | gatherFiles(java.io.File classRoot, java.lang.String classFileName, java.util.Hashtable result)
File thisRoot= new File(classRoot, classFileName);
if (thisRoot.isFile()) {
if (isTestClass(classFileName)) {
String className= classNameFromFile(classFileName);
result.put(className, className);
}
return;
}
String[] contents= thisRoot.list();
if (contents != null) {
for (int i= 0; i < contents.length; i++)
gatherFiles(classRoot, classFileName+File.separatorChar+contents[i], result);
}
|
protected boolean | isTestClass(java.lang.String classFileName)
return
classFileName.endsWith(".class") &&
classFileName.indexOf('$") < 0 &&
classFileName.indexOf("Test") > 0;
|
java.util.Vector | splitClassPath(java.lang.String classPath)
Vector result= new Vector();
String separator= System.getProperty("path.separator");
StringTokenizer tokenizer= new StringTokenizer(classPath, separator);
while (tokenizer.hasMoreTokens())
result.addElement(tokenizer.nextToken());
return result;
|