-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
test(junit4@test): add testcase for junit 4 annotation replacement (#8)
— add testcase for junit 4 annotation replacement — improve code formatting for method call chains
- Loading branch information
1 parent
5398c88
commit f15cd01
Showing
18 changed files
with
252 additions
and
62 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -130,3 +130,4 @@ gradle-app.setting | |
# JDT-specific (Eclipse Java Development Tools) | ||
.classpath | ||
|
||
.vscode/settings.json |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
31 changes: 31 additions & 0 deletions
31
code-transformation/src/test/java/xyz/keksdose/spoon/code_solver/JunitTests.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
|
||
package xyz.keksdose.spoon.code_solver; | ||
|
||
import static com.google.common.truth.Truth.assertThat; | ||
import static xyz.keksdose.spoon.code_solver.TestHelper.createProcessorSupplier; | ||
import java.io.File; | ||
import java.io.IOException; | ||
import java.nio.file.Files; | ||
import java.util.List; | ||
import org.junit.jupiter.api.Test; | ||
import org.junit.jupiter.api.io.TempDir; | ||
import xyz.keksdose.spoon.code_solver.transformations.junit.TestAnnotation; | ||
|
||
class JunitTests { | ||
|
||
@Test | ||
void replaceJunit4WithJunit5TestAnnotation(@TempDir File tempRoot) throws IOException { | ||
String fileName = "TestAnnotation.java"; | ||
String resourcePath = "projects/junittests/TestAnnotation.java"; | ||
File copy = TestHelper.createCopy(tempRoot, resourcePath, fileName); | ||
List<TransformationCreator> transformations = createProcessorSupplier(v -> new TestAnnotation(v)); | ||
new TransformationHelper.Builder().path(tempRoot.getAbsolutePath()) | ||
.className("TestAnnotation") | ||
.processors(transformations) | ||
.apply(); | ||
String result = Files.readString(copy.toPath()); | ||
assertThat(result).contains("@Test"); | ||
assertThat(result).contains("import org.junit.jupiter.api.Test;"); | ||
assertThat(result).doesNotContain("import org.junit.Test;"); | ||
} | ||
} |
40 changes: 40 additions & 0 deletions
40
code-transformation/src/test/java/xyz/keksdose/spoon/code_solver/TestHelper.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
|
||
package xyz.keksdose.spoon.code_solver; | ||
|
||
import java.io.File; | ||
import java.io.IOException; | ||
import java.nio.file.Path; | ||
import java.util.ArrayList; | ||
import java.util.List; | ||
import java.util.function.Function; | ||
import java.util.function.Supplier; | ||
import com.google.common.io.Files; | ||
import xyz.keksdose.spoon.code_solver.history.ChangeListener; | ||
import xyz.keksdose.spoon.code_solver.transformations.TransformationProcessor; | ||
|
||
public class TestHelper { | ||
|
||
public static void copyFile(File source, File target) throws IOException { | ||
Files.copy(source, target); | ||
} | ||
|
||
public static File getResouces(Path path) { | ||
return Path.of("src/test/resources/").resolve(path).toFile(); | ||
} | ||
|
||
public static File createCopy(File root, String resourcePath, String filename) throws IOException { | ||
File copy = new File(root, "filename"); | ||
File source = TestHelper.getResouces(Path.of(resourcePath)); | ||
TestHelper.copyFile(source, copy); | ||
return copy; | ||
} | ||
|
||
@SafeVarargs | ||
public static List<TransformationCreator> createProcessorSupplier(TransformationCreator... processors) { | ||
List<TransformationCreator> transformations = new ArrayList<>(); | ||
for (TransformationCreator processor : processors) { | ||
transformations.add(v -> processor.apply(v)); | ||
} | ||
return transformations; | ||
} | ||
} |
Oops, something went wrong.