Skip to content

Commit bc2c382

Browse files
authored
fix: ensure packages are excluded correctly and add tests (#414)
1 parent a619b3c commit bc2c382

File tree

2 files changed

+38
-1
lines changed

2 files changed

+38
-1
lines changed

Diff for: plugin/src/main/scala/scoverage/ScoverageOptions.scala

+2-1
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,8 @@ object ScoverageOptions {
9292

9393
scalacOptions.foreach {
9494
case ExcludedPackages(packages) =>
95-
options = options.copy(excludedFiles = parseExclusionOption(packages))
95+
options =
96+
options.copy(excludedPackages = parseExclusionOption(packages))
9697
case ExcludedFiles(files) =>
9798
options = options.copy(excludedFiles = parseExclusionOption(files))
9899
case ExcludedSymbols(symbols) =>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
package scoverage
2+
3+
import munit.FunSuite
4+
5+
class ScoverageOptionsTest extends FunSuite {
6+
7+
val initalOptions = ScoverageOptions.default()
8+
val fakeOptions = List(
9+
"dataDir:myFakeDir",
10+
"sourceRoot:myFakeSourceRoot",
11+
"excludedPackages:some.package;another.package*",
12+
"excludedFiles:*.proto;iHateThisFile.scala",
13+
"excludedSymbols:someSymbol;anotherSymbol;aThirdSymbol",
14+
"extraAfterPhase:extarAfter",
15+
"extraBeforePhase:extraBefore",
16+
"reportTestName"
17+
)
18+
19+
val parsed = ScoverageOptions.parse(fakeOptions, (_) => (), initalOptions)
20+
21+
test("should be able to parse all options") {
22+
assertEquals(
23+
parsed.excludedPackages,
24+
Seq("some.package", "another.package*")
25+
)
26+
assertEquals(parsed.excludedFiles, Seq("*.proto", "iHateThisFile.scala"))
27+
assertEquals(
28+
parsed.excludedSymbols,
29+
Seq("someSymbol", "anotherSymbol", "aThirdSymbol")
30+
)
31+
assertEquals(parsed.dataDir, "myFakeDir")
32+
assertEquals(parsed.reportTestName, true)
33+
assertEquals(parsed.sourceRoot, "myFakeSourceRoot")
34+
}
35+
36+
}

0 commit comments

Comments
 (0)