blob: a2d73bfd535e6d05f941b077cb4b841d3ab148ff [file] [log] [blame]
/*
* (c) Copyright IBM Corp. 2000, 2002.
* All Rights Reserved.
*/
package org.eclipse.jdt.internal.junit.wizards;
import java.net.MalformedURLException;
import org.eclipse.core.resources.IResource;
import org.eclipse.jdt.core.ICompilationUnit;
import org.eclipse.jdt.core.IType;
import org.eclipse.jdt.internal.junit.ui.JUnitPlugin;
import org.eclipse.jface.resource.ImageDescriptor;
/**
* A wizard for creating test cases.
*/
public class NewTestCaseCreationWizard extends JUnitWizard {
private NewTestCaseCreationWizardPage fPage;
private NewTestCaseCreationWizardPage2 fPage2;
public NewTestCaseCreationWizard() {
super();
setWindowTitle(WizardMessages.getString("Wizard.title.new")); //$NON-NLS-1$
initDialogSettings();
}
protected void initializeDefaultPageImageDescriptor() {
try {
ImageDescriptor id= ImageDescriptor.createFromURL(JUnitPlugin.makeIconFileURL("wizban/newtest_wiz.gif")); //$NON-NLS-1$
setDefaultPageImageDescriptor(id);
} catch (MalformedURLException e) {
// Should not happen. Ignore.
}
}
/*
* @see Wizard#createPages
*/
public void addPages() {
super.addPages();
fPage= new NewTestCaseCreationWizardPage();
fPage2= new NewTestCaseCreationWizardPage2(fPage);
addPage(fPage);
fPage.init(getSelection(),fPage2);
addPage(fPage2);
}
/*
* @see Wizard#performFinish
*/
public boolean performFinish() {
if (finishPage(fPage.getRunnable())) {
IType newClass= fPage.getCreatedType();
ICompilationUnit cu= newClass.getCompilationUnit();
if (cu.isWorkingCopy()) {
cu= (ICompilationUnit)cu.getOriginalElement();
}
IResource resource= cu.getResource();
if (resource != null) {
selectAndReveal(resource);
openResource(resource);
}
fPage.saveWidgetValues();
fPage2.saveWidgetValues();
return true;
}
return false;
}
}