/**
* This file is licensed under the University of Illinois/NCSA Open Source License. See LICENSE.TXT for details.
*/
package edu.illinois.codingtracker.tests;
/**
*
* @author Stas Negara
*
*/
public class RecorderReplayerTests {
public static class BasicRecorderReplayerTest extends RecorderReplayerTest {
@Override
protected String getTestNumber() {
return "02";
}
@Override
protected String[] getTestFileNames() {
return new String[] { "Test1.java", "Test2.java", "Test9.java" };
}
@Override
protected String[] getGeneratedFilePaths() {
return new String[] { "/edu.illinois.testproject/src/edu/illinois/test/Test1.java",
"/edu.illinois.testproject/src/edu/illinois/test/Test2.java",
"/edu.illinois.test2/src/edu/illinois/test2/Test9.java" };
}
}
public static class OptionsChangesRecorderReplayerTest extends RecorderReplayerTest {
@Override
protected String getTestNumber() {
return "03";
}
@Override
protected String[] getTestFileNames() {
return new String[] { "Test9.java" };
}
@Override
protected String[] getGeneratedFilePaths() {
return new String[] { "/edu.illinois.test2/src/edu/illinois/test2/Test9.java" };
}
}
public static class ReferencingProjectsChangesRecorderReplayerTest extends RecorderReplayerTest {
@Override
protected String getTestNumber() {
return "04";
}
@Override
protected String[] getTestFileNames() {
return new String[] { "BaseClassRenamed5.java", "DerivedClass.java", "OtherDerivedClass.java" };
}
@Override
protected String[] getGeneratedFilePaths() {
return new String[] { "/edu.illinois.test/src2/edu/illinois/testt/BaseClassRenamed5.java",
"/edu.illinois.test/src2/edu/illinois/testt/DerivedClass.java",
"/edu.illinois.test2/src/edu/illinois/test2/OtherDerivedClass.java" };
}
}
public static class RefreshEditorsRecorderReplayerTest extends RecorderReplayerTest {
@Override
protected String getTestNumber() {
return "05";
}
@Override
protected String[] getTestFileNames() {
return new String[] { "BaseClassRenamed5.java", "DerivedClass.java" };
}
@Override
protected String[] getGeneratedFilePaths() {
return new String[] { "/edu.illinois.test/src2/edu/illinois/testt/BaseClassRenamed5.java",
"/edu.illinois.test/src2/edu/illinois/testt/DerivedClass.java" };
}
}
public static class ConflictEditorsRecorderReplayerTest extends RecorderReplayerTest {
@Override
protected String getTestNumber() {
return "06";
}
@Override
protected String[] getTestFileNames() {
return new String[] { "Test1.java", "Test2.java" };
}
@Override
protected String[] getGeneratedFilePaths() {
return new String[] { "/edu.illinois.test2/src/edu/illinois/test2/Test1.java",
"/edu.illinois.test2/src/edu/illinois/test2/Test2.java" };
}
}
public static class ExtractMethodRefactoringRecorderReplayerTest extends RecorderReplayerTest {
@Override
protected String getTestNumber() {
return "11";
}
@Override
protected String[] getTestFileNames() {
return new String[] { "BaseClass.java" };
}
@Override
protected String[] getGeneratedFilePaths() {
return new String[] { "/edu.illinois.test/src/edu/illinois/test/BaseClass.java" };
}
}
/**
* The first group includes refactorings: Rename, Move, Copy, and Delete at different levels -
* from CompilationUnit level to higher.
*
*/
public static class RenameMoveCopyDeleteRefactoringRecorderReplayerTest extends RecorderReplayerTest {
@Override
protected String getTestNumber() {
return "12";
}
@Override
protected String[] getTestFileNames() {
return new String[] { "MyActivator2.java" };
}
@Override
protected String[] getGeneratedFilePaths() {
return new String[] { "/edu.illinois.test2/MyActivator2.java" };
}
}
/**
* The second group includes refactorings: Change Method Signature, Extract Method, Extract
* Local Variable, Extract Constant, and Inline. Also, here are a couple of Rename refactorings
* at the class or lower level.
*
*/
public static class EclipseRefactoringsGroup2RecorderReplayerTest extends RecorderReplayerTest {
@Override
protected String getTestNumber() {
return "13";
}
@Override
protected String[] getTestFileNames() {
return new String[] { "BaseTest2.java", "DerivedTest1.java", "DerivedTest2.java" };
}
@Override
protected String[] getGeneratedFilePaths() {
return new String[] { "/edu.illinois.test/src/p1/p2/BaseTest2.java", "/edu.illinois.test/src/p1/p2/DerivedTest1.java", "/edu.illinois.test/src/p1/p2/DerivedTest2.java" };
}
}
/**
* The third group includes refactorings: Convert Local Variable to Field, Convert Anonymous
* Class to Nested, and Move Type to New File.
*
*/
public static class EclipseRefactoringsGroup3RecorderReplayerTest extends RecorderReplayerTest {
@Override
protected String getTestNumber() {
return "14";
}
@Override
protected String[] getTestFileNames() {
return new String[] { "BaseTest2.java", "DerivedTest1.java", "DerivedTest2.java", "MyRunnable.java" };
}
@Override
protected String[] getGeneratedFilePaths() {
return new String[] { "/edu.illinois.test/src/p1/p2/BaseTest2.java", "/edu.illinois.test/src/p1/p2/DerivedTest1.java", "/edu.illinois.test/src/p1/p2/DerivedTest2.java",
"/edu.illinois.test/src/p1/p2/MyRunnable.java" };
}
}
/**
* The fourth group includes refactorings: Extract Superclass, Extract Interface, Use Supertype
* Where Possible, Push Down, and Pull Up.
*
*/
public static class EclipseRefactoringsGroup4RecorderReplayerTest extends RecorderReplayerTest {
@Override
protected String getTestNumber() {
return "15";
}
@Override
protected String[] getTestFileNames() {
return new String[] { "BaseTest2.java", "DerivedTest1.java", "DerivedTest2.java", "MyRunnable.java", "BaseBaseTest.java", "BaseInterface.java" };
}
@Override
protected String[] getGeneratedFilePaths() {
return new String[] { "/edu.illinois.test/src/p1/p2/BaseTest2.java", "/edu.illinois.test/src/p1/p2/DerivedTest1.java", "/edu.illinois.test/src/p1/p2/DerivedTest2.java",
"/edu.illinois.test/src/p1/p2/MyRunnable.java", "/edu.illinois.test/src/p1/p2/BaseBaseTest.java", "/edu.illinois.test/src/p1/p2/BaseInterface.java" };
}
}
/**
* The fifth group includes refactorings: Extract Class and Introduce Parameter Object.
*
*/
public static class EclipseRefactoringsGroup5RecorderReplayerTest extends RecorderReplayerTest {
@Override
protected String getTestNumber() {
return "16";
}
@Override
protected String[] getTestFileNames() {
return new String[] { "BaseTest2.java", "DerivedTest1.java", "DerivedTest2.java", "MyRunnable.java", "BaseBaseTest.java", "BaseInterface.java", "BaseBaseTestData.java",
"MultipleParameters.java" };
}
@Override
protected String[] getGeneratedFilePaths() {
return new String[] { "/edu.illinois.test/src/p1/p2/BaseTest2.java", "/edu.illinois.test/src/p1/p2/DerivedTest1.java", "/edu.illinois.test/src/p1/p2/DerivedTest2.java",
"/edu.illinois.test/src/p1/p2/MyRunnable.java", "/edu.illinois.test/src/p1/p2/BaseBaseTest.java", "/edu.illinois.test/src/p1/p2/BaseInterface.java",
"/edu.illinois.test/src/p1/p2/BaseBaseTestData.java", "/edu.illinois.test/src/p1/p2/MultipleParameters.java" };
}
}
/**
* The sixth group includes refactorings: Introduce Indirection, Introduce Factory, Introduce
* Parameter, and Encapsulate Field.
*
*/
public static class EclipseRefactoringsGroup6RecorderReplayerTest extends RecorderReplayerTest {
@Override
protected String getTestNumber() {
return "17";
}
@Override
protected String[] getTestFileNames() {
return new String[] { "BaseTest2.java", "DerivedTest1.java", "DerivedTest2.java", "MyRunnable.java", "BaseBaseTest.java", "BaseInterface.java", "BaseBaseTestData.java",
"MultipleParameters.java" };
}
@Override
protected String[] getGeneratedFilePaths() {
return new String[] { "/edu.illinois.test/src/p1/p2/BaseTest2.java", "/edu.illinois.test/src/p1/p2/DerivedTest1.java", "/edu.illinois.test/src/p1/p2/DerivedTest2.java",
"/edu.illinois.test/src/p1/p2/MyRunnable.java", "/edu.illinois.test/src/p1/p2/BaseBaseTest.java", "/edu.illinois.test/src/p1/p2/BaseInterface.java",
"/edu.illinois.test/src/p1/p2/BaseBaseTestData.java", "/edu.illinois.test/src/p1/p2/MultipleParameters.java" };
}
}
/**
* The seventh group includes refactorings: Generalize Declared Type and Infer Generic Type
* Arguments.
*
*/
public static class EclipseRefactoringsGroup7RecorderReplayerTest extends RecorderReplayerTest {
@Override
protected String getTestNumber() {
return "18";
}
@Override
protected String[] getTestFileNames() {
return new String[] { "BaseTest2.java", "DerivedTest1.java", "DerivedTest2.java", "MyRunnable.java", "BaseBaseTest.java", "BaseInterface.java", "BaseBaseTestData.java",
"MultipleParameters.java" };
}
@Override
protected String[] getGeneratedFilePaths() {
return new String[] { "/edu.illinois.test/src/p1/p2/BaseTest2.java", "/edu.illinois.test/src/p1/p2/DerivedTest1.java", "/edu.illinois.test/src/p1/p2/DerivedTest2.java",
"/edu.illinois.test/src/p1/p2/MyRunnable.java", "/edu.illinois.test/src/p1/p2/BaseBaseTest.java", "/edu.illinois.test/src/p1/p2/BaseInterface.java",
"/edu.illinois.test/src/p1/p2/BaseBaseTestData.java", "/edu.illinois.test/src/p1/p2/MultipleParameters.java" };
}
}
}