@@ -13,49 +13,50 @@ import org.gradle.api.tasks.PathSensitive
13
13
import org.gradle.api.tasks.TaskAction
14
14
import scoverage.report.CoverageAggregator
15
15
16
- import static org.gradle.api.tasks.PathSensitivity.RELATIVE
16
+ import org.gradle.api.tasks.PathSensitivity.RELATIVE
17
+ import java.io.File
17
18
18
19
@CacheableTask
19
- class ScoverageReport extends DefaultTask {
20
+ abstract class ScoverageReport : DefaultTask () {
20
21
21
22
@Nested
22
- ScoverageRunner runner
23
+ var runner: ScoverageRunner ? = null
23
24
24
25
@InputDirectory
25
26
@PathSensitive(RELATIVE )
26
- final Property<File > dataDir = project. objects. property(File )
27
+ val dataDir : Property <File > = project.objects.property(File :: class .java )
27
28
28
29
@InputFiles
29
30
@PathSensitive(RELATIVE )
30
- final Property<FileCollection > sources = project. objects. property(FileCollection )
31
+ val sources : Property <FileCollection > = project.objects.property(FileCollection :: class .java )
31
32
32
33
@OutputDirectory
33
- final Property<File > reportDir = project. objects. property(File )
34
+ val reportDir : Property <File > = project.objects.property(File :: class .java )
34
35
35
36
@Input
36
- final Property<String > sourceEncoding = project. objects. property(String )
37
+ val sourceEncoding : Property <String > = project.objects.property(String :: class .java )
37
38
38
39
@Input
39
- final Property<Boolean > coverageOutputCobertura = project. objects. property(Boolean )
40
+ val coverageOutputCobertura : Property <Boolean > = project.objects.property(Boolean :: class .java )
40
41
@Input
41
- final Property<Boolean > coverageOutputXML = project. objects. property(Boolean )
42
+ val coverageOutputXML : Property <Boolean > = project.objects.property(Boolean :: class .java )
42
43
@Input
43
- final Property<Boolean > coverageOutputHTML = project. objects. property(Boolean )
44
+ val coverageOutputHTML : Property <Boolean > = project.objects.property(Boolean :: class .java )
44
45
@Input
45
- final Property<Boolean > coverageDebug = project. objects. property(Boolean )
46
+ val coverageDebug : Property <Boolean > = project.objects.property(Boolean :: class .java )
46
47
47
48
@TaskAction
48
- def report () {
49
- runner. run {
49
+ fun report () {
50
+ runner? .run {
50
51
reportDir.get().delete()
51
52
reportDir.get().mkdirs()
52
53
53
- def coverage = CoverageAggregator . aggregate([ dataDir. get()] as File [] )
54
+ val coverage = CoverageAggregator .aggregate(arrayOf( dataDir.get()) )
54
55
55
- if (coverage. isEmpty() ) {
56
+ if (coverage.isEmpty) {
56
57
project.logger.info(" [scoverage] Could not find coverage file, skipping..." )
57
58
} else {
58
- new ScoverageWriter (project. logger). write(
59
+ ScoverageWriter (project.logger).write(
59
60
sources.get().getFiles(),
60
61
reportDir.get(),
61
62
coverage.get(),
0 commit comments