Back ported performance tests to 2.1.3 release (where possible)
diff --git a/org.eclipse.jdt.ui.tests.refactoring/.classpath b/org.eclipse.jdt.ui.tests.refactoring/.classpath
index 282d64a..a335ee5 100644
--- a/org.eclipse.jdt.ui.tests.refactoring/.classpath
+++ b/org.eclipse.jdt.ui.tests.refactoring/.classpath
@@ -1,14 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
- <classpathentry kind="src" path="test cases"/>
- <classpathentry kind="src" path="/org.eclipse.jdt.ui.tests"/>
- <classpathentry kind="src" path="/org.junit"/>
- <classpathentry kind="src" path="/org.eclipse.jdt.ui"/>
- <classpathentry kind="src" path="/org.eclipse.jdt.core"/>
- <classpathentry kind="src" path="/org.eclipse.core.resources"/>
- <classpathentry kind="src" path="/org.eclipse.core.runtime"/>
- <classpathentry kind="src" path="/org.eclipse.ui"/>
- <classpathentry kind="src" path="/org.eclipse.core.boot"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
- <classpathentry kind="output" path="bin"/>
+ <classpathentry kind="src" path="test cases"/>
+ <classpathentry kind="src" path="/org.eclipse.jdt.ui.tests"/>
+ <classpathentry kind="src" path="/org.junit"/>
+ <classpathentry kind="src" path="/org.eclipse.jdt.ui"/>
+ <classpathentry kind="src" path="/org.eclipse.jdt.core"/>
+ <classpathentry kind="src" path="/org.eclipse.core.resources"/>
+ <classpathentry kind="src" path="/org.eclipse.core.runtime"/>
+ <classpathentry kind="src" path="/org.eclipse.ui"/>
+ <classpathentry kind="src" path="/org.eclipse.core.boot"/>
+ <classpathentry kind="src" path="/org.eclipse.test.performance"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+ <classpathentry kind="output" path="bin"/>
</classpath>
diff --git a/org.eclipse.jdt.ui.tests.refactoring/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.jdt.ui.tests.refactoring/.settings/org.eclipse.jdt.core.prefs
index 5f03173..239bbc9 100644
--- a/org.eclipse.jdt.ui.tests.refactoring/.settings/org.eclipse.jdt.core.prefs
+++ b/org.eclipse.jdt.ui.tests.refactoring/.settings/org.eclipse.jdt.core.prefs
@@ -1,9 +1,12 @@
-#Wed Sep 01 12:06:36 CEST 2004
+#Thu Nov 11 14:52:12 CET 2004
+org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled
+org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=error
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
+org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
org.eclipse.jdt.core.compiler.problem.unusedImport=error
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
@@ -17,48 +20,50 @@
org.eclipse.jdt.core.compiler.source=1.3
org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.missingJavadocTags=warning
+org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
org.eclipse.jdt.core.compiler.compliance=1.4
-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
+org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning
org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=error
+org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
org.eclipse.jdt.core.builder.cleanOutputFolder=clean
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=error
+org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore
+org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled
org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning
-org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=error
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=error
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
+org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
+org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
+org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=error
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private
+org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
+org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
org.eclipse.jdt.core.incompatibleJDKLevel=ignore
eclipse.preferences.version=1
org.eclipse.jdt.core.circularClasspath=error
-org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled
+org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private
org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
+org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private
org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=error
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
+org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.doc.comment.support=enabled
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=error
+org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
org.eclipse.jdt.core.incompleteClasspath=error
-org.eclipse.jdt.core.compiler.problem.invalidJavadoc=warning
+org.eclipse.jdt.core.compiler.problem.invalidJavadoc=ignore
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=enabled
org.eclipse.jdt.core.builder.duplicateResourceTask=warning
org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
diff --git a/org.eclipse.jdt.ui.tests.refactoring/plugin.xml b/org.eclipse.jdt.ui.tests.refactoring/plugin.xml
index 85c34ba..375b134 100644
--- a/org.eclipse.jdt.ui.tests.refactoring/plugin.xml
+++ b/org.eclipse.jdt.ui.tests.refactoring/plugin.xml
@@ -15,6 +15,7 @@
<import plugin="org.eclipse.jdt.core"/>
<import plugin="org.eclipse.jdt.ui"/>
<import plugin="org.eclipse.jdt.ui.tests"/>
+ <import plugin="org.eclipse.test.performance"/>
</requires>
<runtime>
diff --git a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/infra/AbstractRefactoringTestSetup.java b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/infra/AbstractRefactoringTestSetup.java
index f01d161..9e5d66c 100644
--- a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/infra/AbstractRefactoringTestSetup.java
+++ b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/infra/AbstractRefactoringTestSetup.java
@@ -10,20 +10,11 @@
*******************************************************************************/
package org.eclipse.jdt.ui.tests.refactoring.infra;
-import java.util.Hashtable;
-
import junit.extensions.TestSetup;
import junit.framework.Test;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.core.formatter.DefaultCodeFormatterConstants;
-
-import org.eclipse.jdt.internal.corext.template.java.CodeTemplateContextType;
-
import org.eclipse.jdt.internal.ui.JavaPlugin;
-
import org.eclipse.jdt.testplugin.JavaProjectHelper;
-import org.eclipse.jdt.testplugin.TestOptions;
public class AbstractRefactoringTestSetup extends TestSetup {
@@ -38,38 +29,10 @@
fWasAutobuild= JavaProjectHelper.setAutoBuilding(false);
if (JavaPlugin.getActivePage() != null)
JavaPlugin.getActivePage().close();
-
- Hashtable options= TestOptions.getFormatterOptions();
- options.put(DefaultCodeFormatterConstants.FORMATTER_TAB_CHAR, JavaCore.TAB);
- options.put(DefaultCodeFormatterConstants.FORMATTER_NUMBER_OF_EMPTY_LINES_TO_PRESERVE, "0");
- options.put(DefaultCodeFormatterConstants.FORMATTER_TAB_SIZE, "4");
- JavaCore.setOptions(options);
- TestOptions.initializeCodeGenerationOptions();
- JavaPlugin.getDefault().getCodeTemplateStore().load();
-
- StringBuffer comment= new StringBuffer();
- comment.append("/**\n");
- comment.append(" * ${tags}\n");
- comment.append(" */");
- JavaPlugin.getDefault().getCodeTemplateStore().findTemplate(CodeTemplateContextType.CONSTRUCTORCOMMENT).setPattern(comment.toString());
}
protected void tearDown() throws Exception {
JavaProjectHelper.setAutoBuilding(fWasAutobuild);
- /*
- * ensure the workbench state gets saved when running with the Automated Testing Framework
- * TODO: remove when https://bugs.eclipse.org/bugs/show_bug.cgi?id=71362 is fixed
- */
- /* Not needed for JDT/UI tests right now.
- StackTraceElement[] elements= new Throwable().getStackTrace();
- for (int i= 0; i < elements.length; i++) {
- StackTraceElement element= elements[i];
- if (element.getClassName().equals("org.eclipse.test.EclipseTestRunner")) {
- PlatformUI.getWorkbench().close();
- break;
- }
- }
- */
super.tearDown();
}
}
diff --git a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/infra/RefactoringPerformanceTestCase.java b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/infra/RefactoringPerformanceTestCase.java
index cda31e2..e273305 100644
--- a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/infra/RefactoringPerformanceTestCase.java
+++ b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/infra/RefactoringPerformanceTestCase.java
@@ -10,18 +10,28 @@
*******************************************************************************/
package org.eclipse.jdt.ui.tests.refactoring.infra;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.NullProgressMonitor;
+
+import org.eclipse.core.resources.IWorkspaceRunnable;
import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.jdt.core.JavaModelException;
+
+import org.eclipse.jdt.internal.corext.refactoring.base.ChangeContext;
+import org.eclipse.jdt.internal.corext.refactoring.base.IChange;
+import org.eclipse.jdt.internal.corext.refactoring.base.IRefactoring;
+import org.eclipse.jdt.internal.corext.refactoring.base.Refactoring;
+import org.eclipse.jdt.internal.corext.refactoring.base.RefactoringStatus;
+
import org.eclipse.jdt.ui.tests.performance.JdtPerformanceTestCase;
-import org.eclipse.ltk.core.refactoring.CheckConditionsOperation;
-import org.eclipse.ltk.core.refactoring.PerformRefactoringOperation;
-import org.eclipse.ltk.core.refactoring.Refactoring;
-import org.eclipse.ltk.core.refactoring.RefactoringCore;
-import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-
public abstract class RefactoringPerformanceTestCase extends JdtPerformanceTestCase {
+ private RefactoringStatus fStatus;
+ private IChange fUndo;
+
public RefactoringPerformanceTestCase() {
super();
}
@@ -38,21 +48,46 @@
executeRefactoring(refactoring, measure, maxSeverity, true);
}
- protected void executeRefactoring(Refactoring refactoring, boolean measure, int maxSeverity, boolean checkUndo) throws Exception {
- PerformRefactoringOperation operation= new PerformRefactoringOperation(refactoring, CheckConditionsOperation.ALL_CONDITIONS);
+ protected void executeRefactoring(final Refactoring refactoring, boolean measure, int maxSeverity, boolean checkUndo) throws Exception {
joinBackgroudActivities();
System.gc();
if (measure)
startMeasuring();
- ResourcesPlugin.getWorkspace().run(operation, null);
+ ResourcesPlugin.getWorkspace().run(new IWorkspaceRunnable() {
+ public void run(IProgressMonitor monitor) throws CoreException {
+ performRefactoring(refactoring);
+ }
+ }, null);
if (measure)
finishMeasurements();
- assertEquals(true, operation.getConditionStatus().getSeverity() <= maxSeverity);
- assertEquals(true, operation.getValidationStatus().isOK());
+ assertEquals(true, fStatus.getSeverity() <= maxSeverity);
if (checkUndo) {
- assertNotNull(operation.getUndoChange());
+ assertNotNull(fUndo);
}
- RefactoringCore.getUndoManager().flush();
+ Refactoring.getUndoManager().flush();
System.gc();
}
+
+ private void performRefactoring(IRefactoring ref) throws JavaModelException {
+ fStatus= ref.checkPreconditions(new NullProgressMonitor());
+ if (fStatus.hasFatalError())
+ return;
+
+ IChange change= ref.createChange(new NullProgressMonitor());
+ performChange(change);
+
+ fUndo= change.getUndoChange();
+ Refactoring.getUndoManager().addUndo(ref.getName(), fUndo);
+
+ return;
+ }
+
+ private void performChange(IChange change) throws JavaModelException{
+ change.aboutToPerform(new ChangeContext(new TestExceptionHandler()), new NullProgressMonitor());
+ try {
+ change.perform(new ChangeContext(new TestExceptionHandler()), new NullProgressMonitor());
+ } finally {
+ change.performed();
+ }
+ }
}
diff --git a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/AbstractMoveStaticMemberPrefTest.java b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/AbstractMoveStaticMemberPrefTest.java
index 71df883..215281c 100644
--- a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/AbstractMoveStaticMemberPrefTest.java
+++ b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/AbstractMoveStaticMemberPrefTest.java
@@ -15,12 +15,10 @@
import org.eclipse.jdt.core.IPackageFragment;
import org.eclipse.jdt.core.IType;
-import org.eclipse.jdt.internal.corext.refactoring.structure.MoveStaticMembersProcessor;
+import org.eclipse.jdt.internal.corext.refactoring.structure.MoveStaticMembersRefactoring;
import org.eclipse.jdt.internal.ui.preferences.JavaPreferencesSettings;
-import org.eclipse.ltk.core.refactoring.participants.MoveRefactoring;
-
public class AbstractMoveStaticMemberPrefTest extends RepeatingRefactoringPerformanceTestCase {
@@ -32,7 +30,7 @@
ICompilationUnit cunit= generateSources(numberOfCus, numberOfRefs);
IType type= cunit.findPrimaryType();
IMember member= type.getField("VALUE");
- MoveStaticMembersProcessor processor= MoveStaticMembersProcessor.create(
+ MoveStaticMembersRefactoring refactoring= new MoveStaticMembersRefactoring(
new IMember[] {member},
JavaPreferencesSettings.getCodeGenerationSettings());
IPackageFragment destPack= fTestProject.getSourceFolder().createPackageFragment("destination", false, null);
@@ -42,8 +40,8 @@
buf.append("}\n");
ICompilationUnit destination= destPack.createCompilationUnit("Dest.java", buf.toString(), false, null);
- processor.setDestinationTypeFullyQualifiedName(destination.findPrimaryType().getFullyQualifiedName());
- executeRefactoring(new MoveRefactoring(processor), measure);
+ refactoring.setDestinationTypeFullyQualifiedName(destination.findPrimaryType().getFullyQualifiedName());
+ executeRefactoring(refactoring, measure);
}
private ICompilationUnit generateSources(int numberOfCus, int numberOfRefs) throws Exception {
diff --git a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/AbstractRenameMethodPerfTest.java b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/AbstractRenameMethodPerfTest.java
index f9b85da..d5706e4 100644
--- a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/AbstractRenameMethodPerfTest.java
+++ b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/AbstractRenameMethodPerfTest.java
@@ -14,8 +14,7 @@
import org.eclipse.jdt.core.IMethod;
import org.eclipse.jdt.core.IPackageFragment;
-import org.eclipse.jdt.internal.corext.refactoring.rename.RenameVirtualMethodProcessor;
-import org.eclipse.ltk.core.refactoring.participants.RenameRefactoring;
+import org.eclipse.jdt.internal.corext.refactoring.rename.RenameMethodRefactoring;
public class AbstractRenameMethodPerfTest extends RepeatingRefactoringPerformanceTestCase {
@@ -27,9 +26,9 @@
protected void doExecuteRefactoring(int numberOfCus, int numberOfRefs, boolean measure) throws Exception {
ICompilationUnit cunit= generateSources(numberOfCus, numberOfRefs);
IMethod method= cunit.findPrimaryType().getMethod("foo", new String[0]);
- RenameVirtualMethodProcessor processor= new RenameVirtualMethodProcessor(method);
- processor.setNewElementName("foo2");
- executeRefactoring(new RenameRefactoring(processor), measure);
+ RenameMethodRefactoring refactoring= RenameMethodRefactoring.createInstance(method);
+ refactoring.setNewName("foo2");
+ executeRefactoring(refactoring, measure);
}
private ICompilationUnit generateSources(int numberOfCus, int numberOfRefs) throws Exception {
diff --git a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/AbstractRenamePackagePerfTest.java b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/AbstractRenamePackagePerfTest.java
index 32c4245..877f3be 100644
--- a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/AbstractRenamePackagePerfTest.java
+++ b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/AbstractRenamePackagePerfTest.java
@@ -12,8 +12,7 @@
import org.eclipse.jdt.core.IPackageFragment;
-import org.eclipse.jdt.internal.corext.refactoring.rename.RenamePackageProcessor;
-import org.eclipse.ltk.core.refactoring.participants.RenameRefactoring;
+import org.eclipse.jdt.internal.corext.refactoring.rename.RenamePackageRefactoring;
public class AbstractRenamePackagePerfTest extends RepeatingRefactoringPerformanceTestCase {
@@ -23,9 +22,9 @@
protected void doExecuteRefactoring(int numberOfCus, int numberOfRefs, boolean measure) throws Exception {
IPackageFragment pack= generateSources(numberOfCus, numberOfRefs);
- RenamePackageProcessor processor= new RenamePackageProcessor(pack);
- processor.setNewElementName("pack2");
- executeRefactoring(new RenameRefactoring(processor), measure);
+ RenamePackageRefactoring refactoring= new RenamePackageRefactoring(pack);
+ refactoring.setNewName("pack2");
+ executeRefactoring(refactoring, measure);
}
private IPackageFragment generateSources(int numberOfCus, int numberOfRefs) throws Exception {
diff --git a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/AbstractRenameTypePerfTest.java b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/AbstractRenameTypePerfTest.java
index cdb700a..191c73a 100644
--- a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/AbstractRenameTypePerfTest.java
+++ b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/AbstractRenameTypePerfTest.java
@@ -14,8 +14,7 @@
import org.eclipse.jdt.core.IPackageFragment;
import org.eclipse.jdt.core.IType;
-import org.eclipse.jdt.internal.corext.refactoring.rename.RenameTypeProcessor;
-import org.eclipse.ltk.core.refactoring.participants.RenameRefactoring;
+import org.eclipse.jdt.internal.corext.refactoring.rename.RenameTypeRefactoring;
public class AbstractRenameTypePerfTest extends RepeatingRefactoringPerformanceTestCase {
@@ -27,9 +26,9 @@
protected void doExecuteRefactoring(int numberOfCus, int numberOfRefs, boolean measure) throws Exception {
ICompilationUnit cunit= generateSources(numberOfCus, numberOfRefs);
IType type= cunit.findPrimaryType();
- RenameTypeProcessor processor= new RenameTypeProcessor(type);
- processor.setNewElementName("B");
- executeRefactoring(new RenameRefactoring(processor), measure);
+ RenameTypeRefactoring refactoring= new RenameTypeRefactoring(type);
+ refactoring.setNewName("B");
+ executeRefactoring(refactoring, measure);
}
private ICompilationUnit generateSources(int numberOfCus, int numberOfRefs) throws Exception {
diff --git a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/AllReorgPerformanceTests.java b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/AllReorgPerformanceTests.java
index ce25aa5..e8609c5 100644
--- a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/AllReorgPerformanceTests.java
+++ b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/AllReorgPerformanceTests.java
@@ -29,9 +29,6 @@
suite.addTest(RenameMethodWithHidingPerfTests.suite());
suite.addTest(RenameMethodWithOverloadPerfTests.suite());
- suite.addTest(MoveCompilationUnitPerfTests1.suite());
- suite.addTest(MoveCompilationUnitPerfTests2.suite());
-
suite.addTest(MoveStaticMembersPerfTests1.suite());
suite.addTest(MoveStaticMembersPerfTests2.suite());
diff --git a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/RenameMethodWithHidingPerfTests.java b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/RenameMethodWithHidingPerfTests.java
index d4156eb..1d263ef 100644
--- a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/RenameMethodWithHidingPerfTests.java
+++ b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/RenameMethodWithHidingPerfTests.java
@@ -19,13 +19,11 @@
import org.eclipse.jdt.core.IMethod;
import org.eclipse.jdt.core.IPackageFragment;
-import org.eclipse.jdt.internal.corext.refactoring.rename.RenameVirtualMethodProcessor;
+import org.eclipse.jdt.internal.corext.refactoring.base.RefactoringStatus;
+import org.eclipse.jdt.internal.corext.refactoring.rename.RenameMethodRefactoring;
import org.eclipse.jdt.ui.tests.refactoring.infra.RefactoringPerformanceTestSetup;
-import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-import org.eclipse.ltk.core.refactoring.participants.RenameRefactoring;
-
public class RenameMethodWithHidingPerfTests extends RepeatingRefactoringPerformanceTestCase {
public static Test suite() {
@@ -56,9 +54,9 @@
protected void doExecuteRefactoring(int numberOfCus, int numberOfRefs, boolean measure) throws Exception {
ICompilationUnit cunit= generateSources(fTestProject);
IMethod method= cunit.findPrimaryType().getMethod("setString", new String[] {"QString;"});
- RenameVirtualMethodProcessor processor= new RenameVirtualMethodProcessor(method);
- processor.setNewElementName("set");
- executeRefactoring(new RenameRefactoring(processor), measure, RefactoringStatus.ERROR);
+ RenameMethodRefactoring refactoring= RenameMethodRefactoring.createInstance(method);
+ refactoring.setNewName("set");
+ executeRefactoring(refactoring, measure, RefactoringStatus.ERROR);
}
private ICompilationUnit generateSources(TestProject testProject) throws Exception {
diff --git a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/RenameMethodWithOverloadPerfTests.java b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/RenameMethodWithOverloadPerfTests.java
index 56a526f..7eb40eb 100644
--- a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/RenameMethodWithOverloadPerfTests.java
+++ b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/RenameMethodWithOverloadPerfTests.java
@@ -19,12 +19,11 @@
import org.eclipse.jdt.core.IMethod;
import org.eclipse.jdt.core.IPackageFragment;
-import org.eclipse.jdt.internal.corext.refactoring.rename.RenameVirtualMethodProcessor;
+import org.eclipse.jdt.internal.corext.refactoring.base.RefactoringStatus;
+import org.eclipse.jdt.internal.corext.refactoring.rename.RenameMethodRefactoring;
import org.eclipse.jdt.ui.tests.refactoring.infra.RefactoringPerformanceTestSetup;
-import org.eclipse.ltk.core.refactoring.participants.RenameRefactoring;
-
public class RenameMethodWithOverloadPerfTests extends RepeatingRefactoringPerformanceTestCase {
public static Test suite() {
@@ -65,9 +64,9 @@
protected void doExecuteRefactoring(int numberOfCus, int numberOfRefs, boolean measure) throws Exception {
ICompilationUnit cunit= generateSources(numberOfCus, numberOfRefs);
IMethod method= cunit.findPrimaryType().getMethod("setString", new String[] {"QString;"});
- RenameVirtualMethodProcessor processor= new RenameVirtualMethodProcessor(method);
- processor.setNewElementName("set");
- executeRefactoring(new RenameRefactoring(processor), measure);
+ RenameMethodRefactoring refactoring= RenameMethodRefactoring.createInstance(method);
+ refactoring.setNewName("set");
+ executeRefactoring(refactoring, measure, RefactoringStatus.ERROR);
}
private ICompilationUnit generateSources(int numberOfCus, int numberOfRefs) throws Exception {
diff --git a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/RenameTypePerfAcceptanceTests.java b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/RenameTypePerfAcceptanceTests.java
index 70df7ca..a0025b2 100644
--- a/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/RenameTypePerfAcceptanceTests.java
+++ b/org.eclipse.jdt.ui.tests.refactoring/test cases/org/eclipse/jdt/ui/tests/refactoring/reorg/RenameTypePerfAcceptanceTests.java
@@ -21,14 +21,12 @@
import org.eclipse.jdt.core.IType;
import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.internal.corext.refactoring.rename.RenameTypeProcessor;
+import org.eclipse.jdt.internal.corext.refactoring.rename.RenameTypeRefactoring;
import org.eclipse.jdt.ui.tests.performance.SWTTestProject;
import org.eclipse.jdt.ui.tests.refactoring.infra.RefactoringPerformanceTestCase;
import org.eclipse.jdt.ui.tests.refactoring.infra.SWTProjectTestSetup;
-import org.eclipse.ltk.core.refactoring.participants.RenameRefactoring;
-
public class RenameTypePerfAcceptanceTests extends RefactoringPerformanceTestCase {
private IJavaProject fProject;
@@ -57,16 +55,16 @@
public void testCold() throws Exception {
IType control= fProject.findType("org.eclipse.swt.widgets.Control");
- RenameTypeProcessor processor= new RenameTypeProcessor(control);
- processor.setNewElementName("Control2");
- executeRefactoring(new RenameRefactoring(processor), false);
+ RenameTypeRefactoring refactoring= new RenameTypeRefactoring(control);
+ refactoring.setNewName("Control2");
+ executeRefactoring(refactoring, false);
}
public void testWarm() throws Exception {
tagAsGlobalSummary("Rename of Control", new Dimension[] {Dimension.CPU_TIME, Dimension.USED_JAVA_HEAP});
IType control= fProject.findType("org.eclipse.swt.widgets.Control2");
- RenameTypeProcessor processor= new RenameTypeProcessor(control);
- processor.setNewElementName("Control");
- executeRefactoring(new RenameRefactoring(processor), true);
+ RenameTypeRefactoring refactoring= new RenameTypeRefactoring(control);
+ refactoring.setNewName("Control");
+ executeRefactoring(refactoring, true);
}
}
diff --git a/org.eclipse.jdt.ui.tests.refactoring/test.xml b/org.eclipse.jdt.ui.tests.refactoring/test.xml
index cc94e82..77176bc 100644
--- a/org.eclipse.jdt.ui.tests.refactoring/test.xml
+++ b/org.eclipse.jdt.ui.tests.refactoring/test.xml
@@ -48,4 +48,69 @@
</ant>
</target>
+
+ <!-- performance test target -->
+ <target name="performance-suite">
+ <property name="jdt-ui-refactoring-performance-folder" value="${eclipse-home}/jdt_ui_refactoring_performance_folder"/>
+ <property name="data-dir" value="${jdt-ui-refactoring-performance-folder}"/>
+ <property name="plugin-name" value="${plugin-name}"/>
+
+ <delete dir="${jdt-ui-refactoring-performance-folder}" quiet="true"/>
+ <ant target="ui-test" antfile="${library-file}" dir="${eclipse-home}">
+ <property name="classname" value="org.eclipse.jdt.ui.tests.refactoring.reorg.RenamePackagePerfTests1"/>
+ </ant>
+ <delete dir="${jdt-ui-refactoring-performance-folder}" quiet="true"/>
+ <ant target="ui-test" antfile="${library-file}" dir="${eclipse-home}">
+ <property name="classname" value="org.eclipse.jdt.ui.tests.refactoring.reorg.RenamePackagePerfTests2"/>
+ </ant>
+
+ <delete dir="${jdt-ui-refactoring-performance-folder}" quiet="true"/>
+ <ant target="ui-test" antfile="${library-file}" dir="${eclipse-home}">
+ <property name="classname" value="org.eclipse.jdt.ui.tests.refactoring.reorg.RenameTypePerfAcceptanceTests"/>
+ </ant>
+ <delete dir="${jdt-ui-refactoring-performance-folder}" quiet="true"/>
+ <ant target="ui-test" antfile="${library-file}" dir="${eclipse-home}">
+ <property name="classname" value="org.eclipse.jdt.ui.tests.refactoring.reorg.RenameTypePerfTests1"/>
+ </ant>
+ <delete dir="${jdt-ui-refactoring-performance-folder}" quiet="true"/>
+ <ant target="ui-test" antfile="${library-file}" dir="${eclipse-home}">
+ <property name="classname" value="org.eclipse.jdt.ui.tests.refactoring.reorg.RenameTypePerfTests2"/>
+ </ant>
+
+ <delete dir="${jdt-ui-refactoring-performance-folder}" quiet="true"/>
+ <ant target="ui-test" antfile="${library-file}" dir="${eclipse-home}">
+ <property name="classname" value="org.eclipse.jdt.ui.tests.refactoring.reorg.RenameMethodPerfTests1"/>
+ </ant>
+ <delete dir="${jdt-ui-refactoring-performance-folder}" quiet="true"/>
+ <ant target="ui-test" antfile="${library-file}" dir="${eclipse-home}">
+ <property name="classname" value="org.eclipse.jdt.ui.tests.refactoring.reorg.RenameMethodPerfTests2"/>
+ </ant>
+
+ <delete dir="${jdt-ui-refactoring-performance-folder}" quiet="true"/>
+ <ant target="ui-test" antfile="${library-file}" dir="${eclipse-home}">
+ <property name="classname" value="org.eclipse.jdt.ui.tests.refactoring.reorg.RenameMethodWithOverloadPerfTests"/>
+ </ant>
+ <delete dir="${jdt-ui-refactoring-performance-folder}" quiet="true"/>
+ <ant target="ui-test" antfile="${library-file}" dir="${eclipse-home}">
+ <property name="classname" value="org.eclipse.jdt.ui.tests.refactoring.reorg.RenameMethodWithHidingPerfTests"/>
+ </ant>
+
+ <delete dir="${jdt-ui-refactoring-performance-folder}" quiet="true"/>
+ <ant target="ui-test" antfile="${library-file}" dir="${eclipse-home}">
+ <property name="classname" value="org.eclipse.jdt.ui.tests.refactoring.reorg.MoveStaticMembersPerfTests1"/>
+ </ant>
+ <delete dir="${jdt-ui-refactoring-performance-folder}" quiet="true"/>
+ <ant target="ui-test" antfile="${library-file}" dir="${eclipse-home}">
+ <property name="classname" value="org.eclipse.jdt.ui.tests.refactoring.reorg.MoveStaticMembersPerfTests2"/>
+ </ant>
+ </target>
+
+ <!-- This target runs the performance test suite. Any actions that need to happen -->
+ <!-- after all the tests have been run should go here. -->
+ <target name="performance" depends="init,performance-suite,cleanup">
+ <ant target="collect" antfile="${library-file}" dir="${eclipse-home}">
+ <property name="includes" value="org*.xml"/>
+ <property name="output-file" value="${plugin-name}.xml"/>
+ </ant>
+ </target>
</project>
diff --git a/org.eclipse.jdt.ui.tests/.classpath b/org.eclipse.jdt.ui.tests/.classpath
index fb2041b..b010cc8 100644
--- a/org.eclipse.jdt.ui.tests/.classpath
+++ b/org.eclipse.jdt.ui.tests/.classpath
@@ -3,6 +3,7 @@
<classpathentry kind="src" path="examples/"/>
<classpathentry kind="src" path="test plugin/"/>
<classpathentry kind="src" path="ui/"/>
+ <classpathentry kind="src" path="performance"/>
<classpathentry kind="src" path="/org.junit"/>
<classpathentry kind="src" path="/org.eclipse.core.resources"/>
<classpathentry kind="src" path="/org.apache.xerces"/>
@@ -10,8 +11,9 @@
<classpathentry kind="src" path="/org.eclipse.jdt.core"/>
<classpathentry kind="src" path="/org.eclipse.jdt.ui"/>
<classpathentry kind="src" path="/org.eclipse.jdt.launching"/>
- <classpathentry kind="src" path="/org.eclipse.core.runtime"/>
+ <classpathentry kind="src" path="/org.eclipse.test.performance"/>
<classpathentry kind="src" path="/org.eclipse.core.boot"/>
+ <classpathentry kind="src" path="/org.eclipse.core.runtime"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="output" path="bin"/>
</classpath>
diff --git a/org.eclipse.jdt.ui.tests/.project b/org.eclipse.jdt.ui.tests/.project
index e676f70..58d0681 100644
--- a/org.eclipse.jdt.ui.tests/.project
+++ b/org.eclipse.jdt.ui.tests/.project
@@ -12,6 +12,7 @@
<project>org.eclipse.jdt.launching</project>
<project>org.eclipse.jdt.ui</project>
<project>org.eclipse.swt</project>
+ <project>org.eclipse.test.performance</project>
<project>org.eclipse.ui</project>
<project>org.junit</project>
</projects>
diff --git a/org.eclipse.jdt.ui.tests/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.jdt.ui.tests/.settings/org.eclipse.jdt.core.prefs
index ba98fb1..538adfb 100644
--- a/org.eclipse.jdt.ui.tests/.settings/org.eclipse.jdt.core.prefs
+++ b/org.eclipse.jdt.ui.tests/.settings/org.eclipse.jdt.core.prefs
@@ -1,9 +1,12 @@
-#Wed Sep 01 12:04:13 CEST 2004
+#Thu Nov 11 15:12:05 CET 2004
+org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled
+org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=error
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
+org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
org.eclipse.jdt.core.compiler.problem.unusedImport=error
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
@@ -17,48 +20,50 @@
org.eclipse.jdt.core.compiler.source=1.3
org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.missingJavadocTags=warning
+org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
org.eclipse.jdt.core.compiler.compliance=1.4
-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
+org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning
org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=error
+org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
org.eclipse.jdt.core.builder.cleanOutputFolder=clean
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=error
+org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore
+org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled
org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning
-org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=error
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=error
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
+org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
+org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
+org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=error
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private
+org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
+org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
org.eclipse.jdt.core.incompatibleJDKLevel=ignore
eclipse.preferences.version=1
org.eclipse.jdt.core.circularClasspath=error
-org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled
+org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private
org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
+org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private
org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=error
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
+org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.doc.comment.support=enabled
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=error
+org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
org.eclipse.jdt.core.incompleteClasspath=error
-org.eclipse.jdt.core.compiler.problem.invalidJavadoc=warning
+org.eclipse.jdt.core.compiler.problem.invalidJavadoc=ignore
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=enabled
org.eclipse.jdt.core.builder.duplicateResourceTask=warning
org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
diff --git a/org.eclipse.jdt.ui.tests/performance/org/eclipse/jdt/ui/tests/performance/FileTool.java b/org.eclipse.jdt.ui.tests/performance/org/eclipse/jdt/ui/tests/performance/FileTool.java
index 4907773..7575ebb 100644
--- a/org.eclipse.jdt.ui.tests/performance/org/eclipse/jdt/ui/tests/performance/FileTool.java
+++ b/org.eclipse.jdt.ui.tests/performance/org/eclipse/jdt/ui/tests/performance/FileTool.java
@@ -36,16 +36,15 @@
/**
* A buffer.
*/
- private static byte[] fgBuffer = new byte[8192];
-
+ private static byte[] buffer = new byte[8192];
/**
* Unzips the given zip file to the given destination directory
* extracting only those entries the pass through the given
* filter.
*
+ * @param filter filters out unwanted zip entries
* @param zipFile the zip file to unzip
* @param dstDir the destination directory
- * @throws IOException
*/
public static void unzip(ZipFile zipFile, File dstDir) throws IOException {
unzip(zipFile, dstDir, dstDir, 0);
@@ -107,14 +106,12 @@
public static String changeSeparator(String path, char oldSeparator, char newSeparator){
return path.replace(oldSeparator, newSeparator);
}
-
/**
* Copies all bytes in the given source file to
* the given destination file.
*
* @param source the given source file
* @param destination the given destination file
- * @throws IOException
*/
public static void transferData(File source, File destination) throws IOException {
destination.getParentFile().mkdirs();
@@ -139,7 +136,6 @@
}
}
}
-
/**
* Copies all bytes in the given source stream to
* the given destination stream. Neither streams
@@ -147,14 +143,13 @@
*
* @param source the given source stream
* @param destination the given destination stream
- * @throws IOException
*/
public static void transferData(InputStream source, OutputStream destination) throws IOException {
int bytesRead = 0;
while(bytesRead != -1){
- bytesRead = source.read(fgBuffer, 0, fgBuffer.length);
+ bytesRead = source.read(buffer, 0, buffer.length);
if(bytesRead != -1){
- destination.write(fgBuffer, 0, bytesRead);
+ destination.write(buffer, 0, bytesRead);
}
}
}
@@ -164,7 +159,6 @@
*
* @param src the given source file
* @param dst the given destination file
- * @throws IOException
*/
public static void copy(File src, File dst) throws IOException {
if(src.isDirectory()){
@@ -180,7 +174,7 @@
public static File getFileInPlugin(Plugin plugin, IPath path) {
try {
- URL installURL= plugin.getBundle().getEntry(path.toString());
+ URL installURL= new URL(plugin.getDescriptor().getInstallURL(), path.toString());
URL localURL= Platform.asLocalURL(installURL);
return new File(localURL.getFile());
} catch (IOException e) {
diff --git a/org.eclipse.jdt.ui.tests/performance/org/eclipse/jdt/ui/tests/performance/JdtPerformanceTestCase.java b/org.eclipse.jdt.ui.tests/performance/org/eclipse/jdt/ui/tests/performance/JdtPerformanceTestCase.java
index 664ec7c..07c5950 100644
--- a/org.eclipse.jdt.ui.tests/performance/org/eclipse/jdt/ui/tests/performance/JdtPerformanceTestCase.java
+++ b/org.eclipse.jdt.ui.tests/performance/org/eclipse/jdt/ui/tests/performance/JdtPerformanceTestCase.java
@@ -13,21 +13,15 @@
import java.util.ArrayList;
-import org.eclipse.test.performance.PerformanceTestCase;
-
+import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.Platform;
-
-import org.eclipse.core.resources.ResourcesPlugin;
-
import org.eclipse.jdt.core.IJavaElement;
import org.eclipse.jdt.core.search.IJavaSearchConstants;
import org.eclipse.jdt.core.search.ITypeNameRequestor;
import org.eclipse.jdt.core.search.SearchEngine;
-import org.eclipse.jdt.core.search.SearchPattern;
-
import org.eclipse.jdt.internal.corext.util.AllTypesCache;
+import org.eclipse.test.performance.PerformanceTestCase;
public class JdtPerformanceTestCase extends PerformanceTestCase {
@@ -47,21 +41,13 @@
}
protected void joinBackgroudActivities() throws CoreException {
- // Join Building
- boolean interrupted= true;
- while (interrupted) {
- try {
- Platform.getJobManager().join(ResourcesPlugin.FAMILY_AUTO_BUILD, null);
- interrupted= false;
- } catch (InterruptedException e) {
- interrupted= true;
- }
- }
// Join indexing
new SearchEngine().searchAllTypeNames(
+ ResourcesPlugin.getWorkspace(),
null,
null,
- SearchPattern.R_EXACT_MATCH,
+ IJavaSearchConstants.EXACT_MATCH,
+ IJavaSearchConstants.CASE_SENSITIVE,
IJavaSearchConstants.CLASS,
SearchEngine.createJavaSearchScope(new IJavaElement[0]),
new Requestor(),
diff --git a/org.eclipse.jdt.ui.tests/performance/org/eclipse/jdt/ui/tests/performance/SWTTestProject.java b/org.eclipse.jdt.ui.tests/performance/org/eclipse/jdt/ui/tests/performance/SWTTestProject.java
index e313d25..21b91a7 100644
--- a/org.eclipse.jdt.ui.tests/performance/org/eclipse/jdt/ui/tests/performance/SWTTestProject.java
+++ b/org.eclipse.jdt.ui.tests/performance/org/eclipse/jdt/ui/tests/performance/SWTTestProject.java
@@ -35,7 +35,7 @@
public class SWTTestProject {
public static final String PROJECT= "org.eclipse.swt";
- private static final String PROJECT_ZIP= "/testResources/org.eclipse.swt-R3_0.zip";
+ private static final String PROJECT_ZIP= "testResources/org.eclipse.swt-R3_0.zip";
private IJavaProject fProject;
diff --git a/org.eclipse.jdt.ui.tests/plugin.xml b/org.eclipse.jdt.ui.tests/plugin.xml
index a33a8c3..ae84943 100644
--- a/org.eclipse.jdt.ui.tests/plugin.xml
+++ b/org.eclipse.jdt.ui.tests/plugin.xml
@@ -15,6 +15,7 @@
<import plugin="org.eclipse.jdt.core"/>
<import plugin="org.eclipse.jdt.ui"/>
<import plugin="org.eclipse.jdt.launching"/>
+ <import plugin="org.eclipse.test.performance"/>
</requires>
<runtime>
diff --git a/org.eclipse.jdt.ui.tests/test plugin/org/eclipse/jdt/testplugin/JavaProjectHelper.java b/org.eclipse.jdt.ui.tests/test plugin/org/eclipse/jdt/testplugin/JavaProjectHelper.java
index e088816..174c0f7 100644
--- a/org.eclipse.jdt.ui.tests/test plugin/org/eclipse/jdt/testplugin/JavaProjectHelper.java
+++ b/org.eclipse.jdt.ui.tests/test plugin/org/eclipse/jdt/testplugin/JavaProjectHelper.java
Binary files differ
diff --git a/org.eclipse.jdt.ui.tests/test.xml b/org.eclipse.jdt.ui.tests/test.xml
index 45036da..6495681 100644
--- a/org.eclipse.jdt.ui.tests/test.xml
+++ b/org.eclipse.jdt.ui.tests/test.xml
@@ -48,4 +48,49 @@
</ant>
</target>
+ <!-- performance test target -->
+ <target name="performance-suite">
+ <property name="jdt-ui-performance-folder" value="${eclipse-home}/jdt_ui_performance_folder"/>
+ <property name="data-dir" value="${jdt-ui-performance-folder}"/>
+ <property name="plugin-name" value="${plugin-name}"/>
+
+ <delete dir="${jdt-ui-performance-folder}" quiet="true"/>
+ <ant target="ui-test" antfile="${library-file}" dir="${eclipse-home}">
+ <property name="classname" value="org.eclipse.jdt.ui.tests.performance.PerformanceTestSuite"/>
+ </ant>
+
+ <!-- run the package explorer perf test 5 time -->
+ <delete dir="${jdt-ui-performance-folder}" quiet="true"/>
+ <ant target="ui-test" antfile="${library-file}" dir="${eclipse-home}">
+ <property name="classname" value="org.eclipse.jdt.ui.tests.performance.views.PackageExplorerPerfTest"/>
+ </ant>
+
+ <delete dir="${jdt-ui-performance-folder}" quiet="true"/>
+ <ant target="ui-test" antfile="${library-file}" dir="${eclipse-home}">
+ <property name="classname" value="org.eclipse.jdt.ui.tests.performance.views.PackageExplorerPerfTest"/>
+ </ant>
+
+ <delete dir="${jdt-ui-performance-folder}" quiet="true"/>
+ <ant target="ui-test" antfile="${library-file}" dir="${eclipse-home}">
+ <property name="classname" value="org.eclipse.jdt.ui.tests.performance.views.PackageExplorerPerfTest"/>
+ </ant>
+
+ <delete dir="${jdt-ui-performance-folder}" quiet="true"/>
+ <ant target="ui-test" antfile="${library-file}" dir="${eclipse-home}">
+ <property name="classname" value="org.eclipse.jdt.ui.tests.performance.views.PackageExplorerPerfTest"/>
+ </ant>
+
+ <delete dir="${jdt-ui-performance-folder}" quiet="true"/>
+ <ant target="ui-test" antfile="${library-file}" dir="${eclipse-home}">
+ <property name="classname" value="org.eclipse.jdt.ui.tests.performance.views.PackageExplorerPerfTest"/>
+ </ant>
+ </target>
+
+ <!-- This target runs the performance test suites. -->
+ <target name="performance" depends="init,performance-suite,cleanup">
+ <ant target="collect" antfile="${library-file}" dir="${eclipse-home}">
+ <property name="includes" value="org*.xml"/>
+ <property name="output-file" value="${plugin-name}.xml"/>
+ </ant>
+ </target>
</project>