Skip to content

Commit

Permalink
fix: ensure packages are excluded correctly and add tests (#414)
Browse files Browse the repository at this point in the history
  • Loading branch information
ckipp01 authored Nov 3, 2021
1 parent a619b3c commit bc2c382
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 1 deletion.
3 changes: 2 additions & 1 deletion plugin/src/main/scala/scoverage/ScoverageOptions.scala
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,8 @@ object ScoverageOptions {

scalacOptions.foreach {
case ExcludedPackages(packages) =>
options = options.copy(excludedFiles = parseExclusionOption(packages))
options =
options.copy(excludedPackages = parseExclusionOption(packages))
case ExcludedFiles(files) =>
options = options.copy(excludedFiles = parseExclusionOption(files))
case ExcludedSymbols(symbols) =>
Expand Down
36 changes: 36 additions & 0 deletions plugin/src/test/scala/scoverage/ScoverageOptionsTest.scala
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
package scoverage

import munit.FunSuite

class ScoverageOptionsTest extends FunSuite {

val initalOptions = ScoverageOptions.default()
val fakeOptions = List(
"dataDir:myFakeDir",
"sourceRoot:myFakeSourceRoot",
"excludedPackages:some.package;another.package*",
"excludedFiles:*.proto;iHateThisFile.scala",
"excludedSymbols:someSymbol;anotherSymbol;aThirdSymbol",
"extraAfterPhase:extarAfter",
"extraBeforePhase:extraBefore",
"reportTestName"
)

val parsed = ScoverageOptions.parse(fakeOptions, (_) => (), initalOptions)

test("should be able to parse all options") {
assertEquals(
parsed.excludedPackages,
Seq("some.package", "another.package*")
)
assertEquals(parsed.excludedFiles, Seq("*.proto", "iHateThisFile.scala"))
assertEquals(
parsed.excludedSymbols,
Seq("someSymbol", "anotherSymbol", "aThirdSymbol")
)
assertEquals(parsed.dataDir, "myFakeDir")
assertEquals(parsed.reportTestName, true)
assertEquals(parsed.sourceRoot, "myFakeSourceRoot")
}

}

0 comments on commit bc2c382

Please sign in to comment.