Extracted class naming configuration to framework enum

This commit is contained in:
Jakub Kubrynski
2015-02-21 14:21:18 +01:00
parent bb360c95e9
commit 845f121a0c
2 changed files with 16 additions and 10 deletions

View File

@@ -25,16 +25,9 @@ class FileSaver {
def testBaseDir = Paths.get(targetDirectory.absolutePath, NamesUtil.packageToDirectory(packageName))
Files.createDirectories(testBaseDir)
def classPath = Paths.get(testBaseDir.toString(), capitalize(fileName) + getTestClassSuffix() + getTestClassExtension())
def classPath = Paths.get(testBaseDir.toString(), capitalize(fileName) + framework.classNameSuffix + framework.classExtension)
.toAbsolutePath()
Files.write(classPath, classBytes, StandardOpenOption.CREATE, StandardOpenOption.TRUNCATE_EXISTING)
}
private String getTestClassSuffix() {
return framework == TestFramework.SPOCK ? 'Spec' : 'Test'
}
private String getTestClassExtension() {
return framework == TestFramework.SPOCK ? '.groovy' : '.java'
}
}

View File

@@ -4,16 +4,21 @@ package io.coderate.accurest.config
* @author Jakub Kubrynski
*/
enum TestFramework {
JUNIT("public ", "public void ", ";"), SPOCK("", "def ", "")
JUNIT("public ", "public void ", ";", ".java", "Test"),
SPOCK("", "def ", "", ".groovy", "Spec")
private final String classModifier
private final String methodModifier
private final String lineSuffix
private final String classExtension;
private final String classNameSuffix;
TestFramework(String classModifier, String methodModifier, String lineSuffix) {
TestFramework(String classModifier, String methodModifier, String lineSuffix, String classExtension, String classNameSuffix) {
this.classModifier = classModifier
this.lineSuffix = lineSuffix
this.methodModifier = methodModifier
this.classExtension = classExtension
this.classNameSuffix = classNameSuffix
}
String getClassModifier() {
@@ -27,4 +32,12 @@ enum TestFramework {
String getLineSuffix() {
return lineSuffix
}
String getClassExtension() {
return classExtension
}
String getClassNameSuffix() {
return classNameSuffix
}
}