@@ -8,6 +8,48 @@ public ScalaSingleModuleWithMultipleTestTasksTest() {
8
8
super ("scala-single-module-multiple-test-tasks" );
9
9
}
10
10
11
+ @ Test
12
+ public void test () {
13
+
14
+ AssertableBuildResult result = dryRun ("clean" , "test" );
15
+
16
+ result .assertTaskDoesntExist (ScoveragePlugin .getCOMPILE_NAME ());
17
+ result .assertTaskDoesntExist (ScoveragePlugin .getREPORT_NAME ());
18
+ result .assertTaskDoesntExist (ScoveragePlugin .getAGGREGATE_NAME ());
19
+ result .assertTaskDoesntExist (ScoveragePlugin .getCHECK_NAME ());
20
+ }
21
+
22
+ @ Test
23
+ public void build () {
24
+
25
+ AssertableBuildResult result = dryRun ("clean" , "build" );
26
+
27
+ result .assertTaskDoesntExist (ScoveragePlugin .getCOMPILE_NAME ());
28
+ result .assertTaskDoesntExist (ScoveragePlugin .getREPORT_NAME ());
29
+ result .assertTaskDoesntExist (ScoveragePlugin .getAGGREGATE_NAME ());
30
+ result .assertTaskDoesntExist (ScoveragePlugin .getCHECK_NAME ());
31
+ }
32
+
33
+ @ Test
34
+ public void reportScoverage () {
35
+
36
+ AssertableBuildResult result = dryRun ("clean" , ScoveragePlugin .getREPORT_NAME ());
37
+
38
+ result .assertTaskExists (ScoveragePlugin .getCOMPILE_NAME ());
39
+ result .assertTaskExists (ScoveragePlugin .getREPORT_NAME ());
40
+ result .assertTaskDoesntExist (ScoveragePlugin .getAGGREGATE_NAME ());
41
+ result .assertTaskDoesntExist (ScoveragePlugin .getCHECK_NAME ());
42
+ }
43
+
44
+ @ Test
45
+ public void aggregateScoverage () {
46
+
47
+ AssertableBuildResult result = runAndFail ("clean" , ScoveragePlugin .getAGGREGATE_NAME ());
48
+
49
+ result .assertNoTasks ();
50
+ }
51
+
52
+
11
53
@ Test
12
54
public void checkScoverage () throws Exception {
13
55
@@ -24,6 +66,92 @@ public void checkScoverage() throws Exception {
24
66
assertCoverage (100.0 );
25
67
}
26
68
69
+ @ Test
70
+ public void checkScoverageIntTest () throws Exception {
71
+ AssertableBuildResult result = runAndFail ("clean" , "-x" , "reportTestScoverage" , ScoveragePlugin .getCHECK_NAME ());
72
+
73
+ result .assertTaskSucceeded (ScoveragePlugin .getCOMPILE_NAME ());
74
+ result .assertTaskDoesntExist ("reportTestScoverage" );
75
+ result .assertTaskSucceeded ("reportIntTestScoverage" );
76
+ result .assertTaskSucceeded (ScoveragePlugin .getREPORT_NAME ());
77
+ result .assertTaskFailed (ScoveragePlugin .getCHECK_NAME ());
78
+ result .assertTaskDoesntExist (ScoveragePlugin .getAGGREGATE_NAME ());
79
+
80
+ assertReportFilesExist ();
81
+ assertCoverage (50.0 );
82
+ }
83
+
84
+
85
+ @ Test
86
+ public void checkScoverageFails () throws Exception {
87
+
88
+ AssertableBuildResult result = runAndFail ("clean" , ScoveragePlugin .getCHECK_NAME (),
89
+ "intTest" , "--tests" , "org.hello.TestNothingSuite" ,
90
+ "-x" , "test" );
91
+
92
+ result .assertTaskSucceeded (ScoveragePlugin .getCOMPILE_NAME ());
93
+ result .assertTaskSucceeded (ScoveragePlugin .getREPORT_NAME ());
94
+ result .assertTaskFailed (ScoveragePlugin .getCHECK_NAME ());
95
+ result .assertTaskDoesntExist (ScoveragePlugin .getAGGREGATE_NAME ());
96
+
97
+ assertReportFilesExist ();
98
+ assertCoverage (0.0 );
99
+ }
100
+
101
+ @ Test
102
+ public void reportScoverageWithExcludedClasses () throws Exception {
103
+
104
+ AssertableBuildResult result = run ("clean" , "-PexcludedFile=.*" , ScoveragePlugin .getREPORT_NAME ());
105
+
106
+ result .assertTaskSucceeded (ScoveragePlugin .getCOMPILE_NAME ());
107
+ result .assertTaskSucceeded (ScoveragePlugin .getREPORT_NAME ());
108
+ result .assertTaskDoesntExist (ScoveragePlugin .getCHECK_NAME ());
109
+ result .assertTaskDoesntExist (ScoveragePlugin .getAGGREGATE_NAME ());
110
+
111
+ Assert .assertTrue (resolve (reportDir (), "index.html" ).exists ());
112
+ Assert .assertFalse (resolve (reportDir (), "src/main/scala/org/hello/World.scala.html" ).exists ());
113
+ assertCoverage (100.0 ); // coverage is 100 since no classes are covered
114
+
115
+ // compiled class should exist in the default classes directory, but not in scoverage
116
+ Assert .assertTrue (resolve (buildDir (), "classes/scala/main/org/hello/World.class" ).exists ());
117
+ Assert .assertFalse (resolve (buildDir (), "classes/scala/scoverage/org/hello/World.class" ).exists ());
118
+ }
119
+
120
+ @ Test
121
+ public void reportScoverageWithoutNormalCompilation () throws Exception {
122
+
123
+ AssertableBuildResult result = run ("clean" , ScoveragePlugin .getREPORT_NAME (),
124
+ "-x" , "compileScala" );
125
+
126
+ result .assertTaskSkipped ("compileScala" );
127
+ result .assertTaskSucceeded (ScoveragePlugin .getCOMPILE_NAME ());
128
+ result .assertTaskSucceeded (ScoveragePlugin .getREPORT_NAME ());
129
+ result .assertTaskDoesntExist (ScoveragePlugin .getCHECK_NAME ());
130
+ result .assertTaskDoesntExist (ScoveragePlugin .getAGGREGATE_NAME ());
131
+
132
+ assertReportFilesExist ();
133
+ assertCoverage (100.0 );
134
+
135
+ Assert .assertTrue (resolve (buildDir (), "classes/scala/main/org/hello/World.class" ).exists ());
136
+ Assert .assertFalse (resolve (buildDir (), "classes/scala/scoverage/org/hello/World.class" ).exists ());
137
+ }
138
+
139
+ @ Test
140
+ public void reportScoverageWithoutNormalCompilationAndWithExcludedClasses () throws Exception {
141
+
142
+ AssertableBuildResult result = run ("clean" , ScoveragePlugin .getREPORT_NAME (),
143
+ "-PexcludedFile=.*" , "-x" , "compileScala" );
144
+
145
+ Assert .assertTrue (resolve (reportDir (), "index.html" ).exists ());
146
+ Assert .assertFalse (resolve (reportDir (), "src/main/scala/org/hello/World.scala.html" ).exists ());
147
+ assertCoverage (100.0 ); // coverage is 100 since no classes are covered
148
+
149
+ // compiled class should exist in the default classes directory, but not in scoverage
150
+ Assert .assertTrue (resolve (buildDir (), "classes/scala/main/org/hello/World.class" ).exists ());
151
+ Assert .assertFalse (resolve (buildDir (), "classes/scala/scoverage/org/hello/World.class" ).exists ());
152
+ }
153
+
154
+
27
155
private void assertReportFilesExist () {
28
156
29
157
Assert .assertTrue (resolve (reportDir (), "index.html" ).exists ());
0 commit comments