Extended info level logging

This commit is contained in:
Jakub Kubrynski
2015-01-29 01:01:21 +01:00
parent 60ad4d2c11
commit c3a4919987
2 changed files with 8 additions and 2 deletions

View File

@@ -10,6 +10,7 @@ import java.nio.file.Files
import java.nio.file.Path
import java.nio.file.Paths
import java.nio.file.StandardOpenOption
import java.util.concurrent.atomic.AtomicInteger
import static ClassBuilder.createClass
import static io.coderate.accurest.builder.MethodBuilder.createTestMethod
@@ -24,6 +25,7 @@ class TestGenerator {
private final String targetDirectory
private final AccurestConfigProperties configProperties
private final String stubsBaseDirectory
private AtomicInteger counter = new AtomicInteger()
TestGenerator(AccurestConfigProperties accurestConfigProperties) {
this.configProperties = accurestConfigProperties
@@ -35,8 +37,9 @@ class TestGenerator {
this.stubsBaseDirectory = stubsResource.path
}
public void generate() {
public int generate() {
generateTestClasses(new File(stubsBaseDirectory), configProperties.basePackageForTests)
return counter.get()
}
protected void generateTestClasses(File baseFile, String packageName) {
@@ -51,6 +54,7 @@ class TestGenerator {
def classPath = Paths.get(testBaseDir.toString(), capitalize(it.name) + getTestClassExtension()).toAbsolutePath()
def classBytes = buildClass(it, packageName).bytes
Files.write(classPath, classBytes, StandardOpenOption.CREATE, StandardOpenOption.TRUNCATE_EXISTING)
counter.incrementAndGet()
}
}
}

View File

@@ -27,12 +27,14 @@ class AccurestGradlePlugin implements Plugin<Project> {
extension.generatedTestSourcesDir = buildGeneratedSourcesDir(project, extension)
project.sourceSets.test.groovy {
project.logger.info("Registering $extension.generatedTestSourcesDir as test source directory")
srcDir extension.generatedTestSourcesDir
}
try {
TestGenerator generator = new TestGenerator(extension)
generator.generate()
int generatedClasses = generator.generate()
project.logger.info("Generated {} test classes", generatedClasses)
} catch (IllegalStateException e) {
project.logger.error("Accurest Plugin: {}", e.getMessage())
}