Bug 25014 JUnit TestCase Wizard accepts empty string as test case name[junit]
Version: 2.0 Build id: 200210161553 The JUnit TestCase wizard accepts empty string as the test case name when there is no Java class currently selected. Steps for reproducing the error: 1 - Ensure there is no class currently selected in the Package Explorer (e.g. select a package or project); 2 - Activate New JUnit TestCase wizard; 3 - There will be no test case name selected. The "Finish" button will be disabled. Then erase the "Superclass" field content. The "Finish" button will be enabled. This opens a dialog with a message "Creation of element failed. Reason: Invalid name specified: .java" and a new entry is added to the error log. The stack trace will be attached.
org.eclipse.jdt.junit/src/org/eclipse/jdt/internal/junit/wizards/NewTestCaseCreationWizardPage.java
if (methods.length > 0) {
			
			ArrayList allMethods= new ArrayList();
			IMethod[] allMethodsArray= fPage2.getAllMethods();
			for (int i= 0; i < allMethodsArray.length; i++) {
				allMethods.add(allMethodsArray[i]);
			}
			ArrayList overloadedMethods= new ArrayList();
			for (int i= 0; i < allMethods.size(); i++) {
				IMethod current= (IMethod) allMethods.get(i);
				String currentName= current.getElementName();
				boolean currentAdded= false;
				for (ListIterator iter= allMethods.listIterator(i+1); iter.hasNext(); ) {
					IMethod iterMethod= (IMethod) iter.next();
					if (iterMethod.getElementName().equals(currentName)) {
						
						if (!currentAdded) {
							overloadedMethods.add(current);
							currentAdded= true;
						}
						overloadedMethods.add(iterMethod);
						iter.remove();
					}
				}
			}
			
			/* used when for example both sum and Sum methods are present. Then
			 * sum -> testSum
			 * Sum -> testSum1
			 */