From 4e08a800ded85e084266df0d5ef23fcce87efd90 Mon Sep 17 00:00:00 2001 From: Eyal Roth Date: Sun, 22 Dec 2019 13:36:10 +0200 Subject: [PATCH 1/5] Fix the cross (scala) version test (again) by making sure to run each test in a separate JVM process --- build.gradle | 7 +- .../ScalaMultiModuleCrossVersionTest.java | 98 ------------------- .../scoverage/crossversion/Scala211Test.java | 7 ++ .../scoverage/crossversion/Scala212Test.java | 7 ++ .../scoverage/crossversion/Scala213Test.java | 7 ++ .../ScalaCrossVersionAggregationTest.java | 46 +++++++++ .../crossversion/ScalaVersionTest.java | 35 +++++++ .../hello/{World211.scala => World2_11.scala} | 2 +- .../scala/org/hello/World2_11Suite.scala} | 4 +- .../src/main/scala/org/hello/World2_12.scala} | 2 +- .../scala/org/hello/World2_12Suite.scala} | 4 +- .../src/main/scala/org/hello/World2_13.scala} | 2 +- .../scala/org/hello/World2_13Suite.scala} | 2 +- 13 files changed, 113 insertions(+), 110 deletions(-) delete mode 100644 src/functionalTest/java/org.scoverage/ScalaMultiModuleCrossVersionTest.java create mode 100644 src/functionalTest/java/org/scoverage/crossversion/Scala211Test.java create mode 100644 src/functionalTest/java/org/scoverage/crossversion/Scala212Test.java create mode 100644 src/functionalTest/java/org/scoverage/crossversion/Scala213Test.java create mode 100644 src/functionalTest/java/org/scoverage/crossversion/ScalaCrossVersionAggregationTest.java create mode 100644 src/functionalTest/java/org/scoverage/crossversion/ScalaVersionTest.java rename src/functionalTest/resources/projects/scala-multi-module-cross-version/2_11/src/main/scala/org/hello/{World211.scala => World2_11.scala} (81%) rename src/functionalTest/resources/projects/scala-multi-module-cross-version/{2_13/src/test/scala/org/hello/World213Suite.scala => 2_11/src/test/scala/org/hello/World2_11Suite.scala} (72%) rename src/functionalTest/resources/projects/scala-multi-module-cross-version/{2_13/src/main/scala/org/hello/World213.scala => 2_12/src/main/scala/org/hello/World2_12.scala} (81%) rename src/functionalTest/resources/projects/scala-multi-module-cross-version/{2_11/src/test/scala/org/hello/World211Suite.scala => 2_12/src/test/scala/org/hello/World2_12Suite.scala} (72%) rename src/functionalTest/resources/projects/scala-multi-module-cross-version/{2_12/src/main/scala/org/hello/World212.scala => 2_13/src/main/scala/org/hello/World2_13.scala} (81%) rename src/functionalTest/resources/projects/scala-multi-module-cross-version/{2_12/src/test/scala/org/hello/World212Suite.scala => 2_13/src/test/scala/org/hello/World2_13Suite.scala} (89%) diff --git a/build.gradle b/build.gradle index bafe5e9..c6f706d 100644 --- a/build.gradle +++ b/build.gradle @@ -69,7 +69,8 @@ task crossScalaVersionFunctionalTest(type: Test) { group = 'verification' testClassesDirs = sourceSets.functionalTest.output.classesDirs classpath = sourceSets.functionalTest.runtimeClasspath - include "**/ScalaMultiModuleCrossVersionTest.*" + include '**/crossversion/*' + forkEvery = 1 // crucial to run every test in its own JVM testLogging.showStandardStreams = true @@ -81,9 +82,7 @@ task functionalTest(type: Test) { group = 'verification' testClassesDirs = sourceSets.functionalTest.output.classesDirs classpath = sourceSets.functionalTest.runtimeClasspath - exclude "**/ScalaMultiModuleCrossVersionTest.*" - - testLogging.showStandardStreams = true + exclude '**/crossversion/*' dependsOn crossScalaVersionFunctionalTest } diff --git a/src/functionalTest/java/org.scoverage/ScalaMultiModuleCrossVersionTest.java b/src/functionalTest/java/org.scoverage/ScalaMultiModuleCrossVersionTest.java deleted file mode 100644 index 22ef656..0000000 --- a/src/functionalTest/java/org.scoverage/ScalaMultiModuleCrossVersionTest.java +++ /dev/null @@ -1,98 +0,0 @@ -package org.scoverage; - -import org.junit.Assert; -import org.junit.Test; - -import java.io.File; - -/** - * Note that it is important to test the case of all of the modules together, - * along with the cases of each module individually, as they behave differently. - */ -public class ScalaMultiModuleCrossVersionTest extends ScoverageFunctionalTest { - - public ScalaMultiModuleCrossVersionTest() { - super("scala-multi-module-cross-version"); - } - - @Test - public void checkAndAggregateAll() throws Exception { - - AssertableBuildResult result = run("clean", ScoveragePlugin.getCHECK_NAME(), - ScoveragePlugin.getAGGREGATE_NAME()); - - result.assertTaskSkipped(ScoveragePlugin.getREPORT_NAME()); - result.assertTaskSucceeded("2_11:" + ScoveragePlugin.getREPORT_NAME()); - result.assertTaskSucceeded("2_12:" + ScoveragePlugin.getREPORT_NAME()); - result.assertTaskSucceeded("2_13:" + ScoveragePlugin.getREPORT_NAME()); - result.assertTaskSucceeded(ScoveragePlugin.getCHECK_NAME()); - result.assertTaskSucceeded("2_11:" + ScoveragePlugin.getCHECK_NAME()); - result.assertTaskSucceeded("2_12:" + ScoveragePlugin.getCHECK_NAME()); - result.assertTaskSucceeded("2_13:" + ScoveragePlugin.getCHECK_NAME()); - result.assertTaskSucceeded(ScoveragePlugin.getAGGREGATE_NAME()); - - assertAllReportFilesExist(); - assertCoverage(100.0); - } - - @Test - public void report211() throws Exception { - - AssertableBuildResult result = run("clean", ":2_11:" + ScoveragePlugin.getREPORT_NAME()); - result.assertTaskSucceeded("2_11:" + ScoveragePlugin.getREPORT_NAME()); - assert211ReportFilesExist(); - } - - @Test - public void report212() throws Exception { - - AssertableBuildResult result = run("clean", ":2_12:" + ScoveragePlugin.getREPORT_NAME()); - result.assertTaskSucceeded("2_12:" + ScoveragePlugin.getREPORT_NAME()); - assert212ReportFilesExist(); - } - - @Test - public void report213() throws Exception { - - AssertableBuildResult result = run("clean", ":2_13:" + ScoveragePlugin.getREPORT_NAME()); - result.assertTaskSucceeded("2_13:" + ScoveragePlugin.getREPORT_NAME()); - assert213ReportFilesExist(); - } - - private void assertAllReportFilesExist() { - - assert211ReportFilesExist(); - assert212ReportFilesExist(); - assert213ReportFilesExist(); - assertAggregationFilesExist(); - } - - private void assertAggregationFilesExist() { - - Assert.assertTrue(resolve(reportDir(), "index.html").exists()); - Assert.assertTrue(resolve(reportDir(), "2_11/src/main/scala/org/hello/World211.scala.html").exists()); - Assert.assertTrue(resolve(reportDir(), "2_12/src/main/scala/org/hello/World212.scala.html").exists()); - Assert.assertTrue(resolve(reportDir(), "2_13/src/main/scala/org/hello/World213.scala.html").exists()); - } - - private void assert211ReportFilesExist() { - - File reportDir = reportDir(projectDir().toPath().resolve("2_11").toFile()); - Assert.assertTrue(resolve(reportDir, "index.html").exists()); - Assert.assertTrue(resolve(reportDir, "src/main/scala/org/hello/World211.scala.html").exists()); - } - - private void assert212ReportFilesExist() { - - File reportDir = reportDir(projectDir().toPath().resolve("2_12").toFile()); - Assert.assertTrue(resolve(reportDir, "index.html").exists()); - Assert.assertTrue(resolve(reportDir, "src/main/scala/org/hello/World212.scala.html").exists()); - } - - private void assert213ReportFilesExist() { - - File reportDir = reportDir(projectDir().toPath().resolve("2_13").toFile()); - Assert.assertTrue(resolve(reportDir, "index.html").exists()); - Assert.assertTrue(resolve(reportDir, "src/main/scala/org/hello/World213.scala.html").exists()); - } -} diff --git a/src/functionalTest/java/org/scoverage/crossversion/Scala211Test.java b/src/functionalTest/java/org/scoverage/crossversion/Scala211Test.java new file mode 100644 index 0000000..e8dfcaa --- /dev/null +++ b/src/functionalTest/java/org/scoverage/crossversion/Scala211Test.java @@ -0,0 +1,7 @@ +package org.scoverage.crossversion; + +public class Scala211Test extends ScalaVersionTest { + public Scala211Test() { + super("2_11"); + } +} \ No newline at end of file diff --git a/src/functionalTest/java/org/scoverage/crossversion/Scala212Test.java b/src/functionalTest/java/org/scoverage/crossversion/Scala212Test.java new file mode 100644 index 0000000..ee34a21 --- /dev/null +++ b/src/functionalTest/java/org/scoverage/crossversion/Scala212Test.java @@ -0,0 +1,7 @@ +package org.scoverage.crossversion; + +public class Scala212Test extends ScalaVersionTest { + public Scala212Test() { + super("2_12"); + } +} \ No newline at end of file diff --git a/src/functionalTest/java/org/scoverage/crossversion/Scala213Test.java b/src/functionalTest/java/org/scoverage/crossversion/Scala213Test.java new file mode 100644 index 0000000..f6a6043 --- /dev/null +++ b/src/functionalTest/java/org/scoverage/crossversion/Scala213Test.java @@ -0,0 +1,7 @@ +package org.scoverage.crossversion; + +public class Scala213Test extends ScalaVersionTest { + public Scala213Test() { + super("2_13"); + } +} \ No newline at end of file diff --git a/src/functionalTest/java/org/scoverage/crossversion/ScalaCrossVersionAggregationTest.java b/src/functionalTest/java/org/scoverage/crossversion/ScalaCrossVersionAggregationTest.java new file mode 100644 index 0000000..a086188 --- /dev/null +++ b/src/functionalTest/java/org/scoverage/crossversion/ScalaCrossVersionAggregationTest.java @@ -0,0 +1,46 @@ +package org.scoverage.crossversion; + +import org.junit.Assert; +import org.junit.Test; +import org.junit.jupiter.api.Tag; +import org.junit.runner.RunWith; +import org.junit.runners.Suite; +import org.scoverage.ScoverageFunctionalTest; +import org.scoverage.ScoveragePlugin; + +import java.io.File; + +public class ScalaCrossVersionAggregationTest extends ScoverageFunctionalTest { + + public ScalaCrossVersionAggregationTest() { + super("scala-multi-module-cross-version"); + } + + @Test + public void checkAndAggregateAll() throws Exception { + + AssertableBuildResult result = run("clean", ScoveragePlugin.getCHECK_NAME(), + ScoveragePlugin.getAGGREGATE_NAME()); + + result.assertTaskSkipped(ScoveragePlugin.getREPORT_NAME()); + result.assertTaskSucceeded("2_11:" + ScoveragePlugin.getREPORT_NAME()); + result.assertTaskSucceeded("2_12:" + ScoveragePlugin.getREPORT_NAME()); + result.assertTaskSucceeded("2_13:" + ScoveragePlugin.getREPORT_NAME()); + result.assertTaskSucceeded(ScoveragePlugin.getCHECK_NAME()); + result.assertTaskSucceeded("2_11:" + ScoveragePlugin.getCHECK_NAME()); + result.assertTaskSucceeded("2_12:" + ScoveragePlugin.getCHECK_NAME()); + result.assertTaskSucceeded("2_13:" + ScoveragePlugin.getCHECK_NAME()); + result.assertTaskSucceeded(ScoveragePlugin.getAGGREGATE_NAME()); + + assertAggregationFilesExist(); + assertCoverage(100.0); + } + + private void assertAggregationFilesExist() { + + Assert.assertTrue(resolve(reportDir(), "index.html").exists()); + Assert.assertTrue(resolve(reportDir(), "2_11/src/main/scala/org/hello/World2_11.scala.html").exists()); + Assert.assertTrue(resolve(reportDir(), "2_12/src/main/scala/org/hello/World2_12.scala.html").exists()); + Assert.assertTrue(resolve(reportDir(), "2_13/src/main/scala/org/hello/World2_13.scala.html").exists()); + } +} diff --git a/src/functionalTest/java/org/scoverage/crossversion/ScalaVersionTest.java b/src/functionalTest/java/org/scoverage/crossversion/ScalaVersionTest.java new file mode 100644 index 0000000..e5ac15f --- /dev/null +++ b/src/functionalTest/java/org/scoverage/crossversion/ScalaVersionTest.java @@ -0,0 +1,35 @@ +package org.scoverage.crossversion; + +import org.junit.Assert; +import org.junit.Test; +import org.junit.jupiter.api.Tag; +import org.scoverage.ScoverageFunctionalTest; +import org.scoverage.ScoveragePlugin; + +import java.io.File; + +/** + * This abstract class is used to test each scala version in an individual class. + * It is crucial that each test will be separated into its own class, + * as this is the only way to run these tests in separate JVM processes (via `forkEvery` gradle configuration). + */ +public abstract class ScalaVersionTest extends ScoverageFunctionalTest { + + private final String scalaVersion; + + public ScalaVersionTest(String scalaVersion) { + super("scala-multi-module-cross-version"); + this.scalaVersion = scalaVersion; + } + + @Test + public void report() throws Exception { + + AssertableBuildResult result = run("clean", ":" + scalaVersion + ":" + ScoveragePlugin.getREPORT_NAME()); + result.assertTaskSucceeded(scalaVersion + ":" + ScoveragePlugin.getREPORT_NAME()); + + File reportDir = reportDir(projectDir().toPath().resolve(scalaVersion).toFile()); + Assert.assertTrue(resolve(reportDir, "index.html").exists()); + Assert.assertTrue(resolve(reportDir, "src/main/scala/org/hello/World" + scalaVersion + ".scala.html").exists()); + } +} \ No newline at end of file diff --git a/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_11/src/main/scala/org/hello/World211.scala b/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_11/src/main/scala/org/hello/World2_11.scala similarity index 81% rename from src/functionalTest/resources/projects/scala-multi-module-cross-version/2_11/src/main/scala/org/hello/World211.scala rename to src/functionalTest/resources/projects/scala-multi-module-cross-version/2_11/src/main/scala/org/hello/World2_11.scala index 7c7f57b..cab6958 100644 --- a/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_11/src/main/scala/org/hello/World211.scala +++ b/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_11/src/main/scala/org/hello/World2_11.scala @@ -1,6 +1,6 @@ package org.hello -class World211 { +class World2_11 { def foo(): String = { val s = "2" + "11" diff --git a/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_13/src/test/scala/org/hello/World213Suite.scala b/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_11/src/test/scala/org/hello/World2_11Suite.scala similarity index 72% rename from src/functionalTest/resources/projects/scala-multi-module-cross-version/2_13/src/test/scala/org/hello/World213Suite.scala rename to src/functionalTest/resources/projects/scala-multi-module-cross-version/2_11/src/test/scala/org/hello/World2_11Suite.scala index ad43f08..2d99209 100644 --- a/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_13/src/test/scala/org/hello/World213Suite.scala +++ b/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_11/src/test/scala/org/hello/World2_11Suite.scala @@ -5,9 +5,9 @@ import org.scalatest.FunSuite import org.scalatest.junit.JUnitRunner @RunWith(classOf[JUnitRunner]) -class World212Suite extends FunSuite { +class World2_11Suite extends FunSuite { test("foo") { - new World213().foo() + new World2_11().foo() } } \ No newline at end of file diff --git a/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_13/src/main/scala/org/hello/World213.scala b/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_12/src/main/scala/org/hello/World2_12.scala similarity index 81% rename from src/functionalTest/resources/projects/scala-multi-module-cross-version/2_13/src/main/scala/org/hello/World213.scala rename to src/functionalTest/resources/projects/scala-multi-module-cross-version/2_12/src/main/scala/org/hello/World2_12.scala index b5fc8fb..c0cc10b 100644 --- a/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_13/src/main/scala/org/hello/World213.scala +++ b/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_12/src/main/scala/org/hello/World2_12.scala @@ -1,6 +1,6 @@ package org.hello -class World213 { +class World2_12 { def foo(): String = { val s = "2" + "12" diff --git a/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_11/src/test/scala/org/hello/World211Suite.scala b/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_12/src/test/scala/org/hello/World2_12Suite.scala similarity index 72% rename from src/functionalTest/resources/projects/scala-multi-module-cross-version/2_11/src/test/scala/org/hello/World211Suite.scala rename to src/functionalTest/resources/projects/scala-multi-module-cross-version/2_12/src/test/scala/org/hello/World2_12Suite.scala index f872840..23e5b04 100644 --- a/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_11/src/test/scala/org/hello/World211Suite.scala +++ b/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_12/src/test/scala/org/hello/World2_12Suite.scala @@ -5,9 +5,9 @@ import org.scalatest.FunSuite import org.scalatest.junit.JUnitRunner @RunWith(classOf[JUnitRunner]) -class World211Suite extends FunSuite { +class World2_12Suite extends FunSuite { test("foo") { - new World211().foo() + new World2_12().foo() } } \ No newline at end of file diff --git a/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_12/src/main/scala/org/hello/World212.scala b/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_13/src/main/scala/org/hello/World2_13.scala similarity index 81% rename from src/functionalTest/resources/projects/scala-multi-module-cross-version/2_12/src/main/scala/org/hello/World212.scala rename to src/functionalTest/resources/projects/scala-multi-module-cross-version/2_13/src/main/scala/org/hello/World2_13.scala index 0968efa..d18034b 100644 --- a/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_12/src/main/scala/org/hello/World212.scala +++ b/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_13/src/main/scala/org/hello/World2_13.scala @@ -1,6 +1,6 @@ package org.hello -class World212 { +class World2_13 { def foo(): String = { val s = "2" + "12" diff --git a/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_12/src/test/scala/org/hello/World212Suite.scala b/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_13/src/test/scala/org/hello/World2_13Suite.scala similarity index 89% rename from src/functionalTest/resources/projects/scala-multi-module-cross-version/2_12/src/test/scala/org/hello/World212Suite.scala rename to src/functionalTest/resources/projects/scala-multi-module-cross-version/2_13/src/test/scala/org/hello/World2_13Suite.scala index cd26ad3..0628dc4 100644 --- a/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_12/src/test/scala/org/hello/World212Suite.scala +++ b/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_13/src/test/scala/org/hello/World2_13Suite.scala @@ -8,6 +8,6 @@ import org.scalatest.junit.JUnitRunner class World212Suite extends FunSuite { test("foo") { - new World212().foo() + new World2_13().foo() } } \ No newline at end of file From d754ede393839c21dbb8241d065057b7cb613f4d Mon Sep 17 00:00:00 2001 From: Eyal Roth Date: Sun, 22 Dec 2019 18:14:57 +0200 Subject: [PATCH 2/5] Add an ignored test-case for composite build (ignored since it isn't supported yet) --- .../org.scoverage/CompositeBuildTest.java | 46 +++++++++++++++++++ .../composite-build/proj1/build.gradle | 32 +++++++++++++ .../composite-build/proj1/settings.gradle | 0 .../main/scala/org/composite/proj1/Foo.scala | 7 +++ .../scala/org/composite/proj1/FooSuite.scala | 14 ++++++ .../composite-build/proj2/build.gradle | 30 ++++++++++++ .../scala/org/composite/proj2/Reporter.scala | 19 ++++++++ .../org/composite/proj2/ReporterSuite.scala | 16 +++++++ 8 files changed, 164 insertions(+) create mode 100644 src/functionalTest/java/org.scoverage/CompositeBuildTest.java create mode 100644 src/functionalTest/resources/projects/composite-build/proj1/build.gradle create mode 100644 src/functionalTest/resources/projects/composite-build/proj1/settings.gradle create mode 100644 src/functionalTest/resources/projects/composite-build/proj1/src/main/scala/org/composite/proj1/Foo.scala create mode 100644 src/functionalTest/resources/projects/composite-build/proj1/src/test/scala/org/composite/proj1/FooSuite.scala create mode 100644 src/functionalTest/resources/projects/composite-build/proj2/build.gradle create mode 100644 src/functionalTest/resources/projects/composite-build/proj2/src/main/scala/org/composite/proj2/Reporter.scala create mode 100644 src/functionalTest/resources/projects/composite-build/proj2/src/test/scala/org/composite/proj2/ReporterSuite.scala diff --git a/src/functionalTest/java/org.scoverage/CompositeBuildTest.java b/src/functionalTest/java/org.scoverage/CompositeBuildTest.java new file mode 100644 index 0000000..86dd695 --- /dev/null +++ b/src/functionalTest/java/org.scoverage/CompositeBuildTest.java @@ -0,0 +1,46 @@ +package org.scoverage; + +import org.junit.Ignore; +import org.junit.Test; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +/** + * Tests are currently ignored as composite builds are not supported yet. + * + * See https://github.com/scoverage/gradle-scoverage/issues/98 + */ +public class CompositeBuildTest extends ScoverageFunctionalTest { + + public CompositeBuildTest() { + super("composite-build"); + } + + @Ignore + @Test + public void buildComposite() { + + runComposite("clean", "build"); + } + + @Ignore + @Test + public void reportComposite() { + + runComposite("clean", ScoveragePlugin.getREPORT_NAME()); + } + + private AssertableBuildResult runComposite(String... arguments) { + + List fullArguments = new ArrayList(); + fullArguments.add("-p"); + fullArguments.add("proj1"); + fullArguments.add("--include-build"); + fullArguments.add("../proj2"); + fullArguments.addAll(Arrays.asList(arguments)); + + return run(fullArguments.toArray(new String[0])); + } +} diff --git a/src/functionalTest/resources/projects/composite-build/proj1/build.gradle b/src/functionalTest/resources/projects/composite-build/proj1/build.gradle new file mode 100644 index 0000000..d0e32d3 --- /dev/null +++ b/src/functionalTest/resources/projects/composite-build/proj1/build.gradle @@ -0,0 +1,32 @@ +plugins { + id 'org.scoverage' +} + +repositories { + jcenter() +} + +description = 'a single-module Scala project taking part in a composite build (1)' + +apply plugin: 'java' +apply plugin: 'scala' + + +group "org.composite" +version '1.0' + +dependencies { + compile group: 'org.scala-lang', name: 'scala-library', version: "${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" + + testRuntime group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVersion + testCompile group: 'org.junit.platform', name: 'junit-platform-runner', version: junitPlatformVersion + + testCompile group: 'org.scalatest', name: "scalatest_${scalaVersionMajor}.${scalaVersionMinor}", version: scalatestVersion + + compile "org.composite:proj2:1.0" +} + +test { + useJUnitPlatform() +} + diff --git a/src/functionalTest/resources/projects/composite-build/proj1/settings.gradle b/src/functionalTest/resources/projects/composite-build/proj1/settings.gradle new file mode 100644 index 0000000..e69de29 diff --git a/src/functionalTest/resources/projects/composite-build/proj1/src/main/scala/org/composite/proj1/Foo.scala b/src/functionalTest/resources/projects/composite-build/proj1/src/main/scala/org/composite/proj1/Foo.scala new file mode 100644 index 0000000..cc5333e --- /dev/null +++ b/src/functionalTest/resources/projects/composite-build/proj1/src/main/scala/org/composite/proj1/Foo.scala @@ -0,0 +1,7 @@ +package org.composite.proj1 + +import org.composite.proj2.Reporter + +class Foo { + def bar(): String = "bar" +} \ No newline at end of file diff --git a/src/functionalTest/resources/projects/composite-build/proj1/src/test/scala/org/composite/proj1/FooSuite.scala b/src/functionalTest/resources/projects/composite-build/proj1/src/test/scala/org/composite/proj1/FooSuite.scala new file mode 100644 index 0000000..370252a --- /dev/null +++ b/src/functionalTest/resources/projects/composite-build/proj1/src/test/scala/org/composite/proj1/FooSuite.scala @@ -0,0 +1,14 @@ +package org.composite.proj1 + +import org.scalatest.FunSuite +import org.junit.runner.RunWith +import org.scalatest.junit.JUnitRunner + +@RunWith(classOf[JUnitRunner]) +class FooSuite extends FunSuite { + + test("bar"){ + + new Foo().bar() + } +} \ No newline at end of file diff --git a/src/functionalTest/resources/projects/composite-build/proj2/build.gradle b/src/functionalTest/resources/projects/composite-build/proj2/build.gradle new file mode 100644 index 0000000..b86570e --- /dev/null +++ b/src/functionalTest/resources/projects/composite-build/proj2/build.gradle @@ -0,0 +1,30 @@ +plugins { + id 'org.scoverage' +} + +repositories { + jcenter() +} + +description = 'a single-module Scala project taking part in a composite build (2)' + +apply plugin: 'java' +apply plugin: 'scala' + + +group "org.composite" +version '1.0' + +dependencies { + compile group: 'org.scala-lang', name: 'scala-library', version: "${scalaVersionMajor}.${scalaVersionMinor}.${scalaVersionBuild}" + + testRuntime group: 'org.junit.vintage', name: 'junit-vintage-engine', version: junitVersion + testCompile group: 'org.junit.platform', name: 'junit-platform-runner', version: junitPlatformVersion + + testCompile group: 'org.scalatest', name: "scalatest_${scalaVersionMajor}.${scalaVersionMinor}", version: scalatestVersion +} + +test { + useJUnitPlatform() +} + diff --git a/src/functionalTest/resources/projects/composite-build/proj2/src/main/scala/org/composite/proj2/Reporter.scala b/src/functionalTest/resources/projects/composite-build/proj2/src/main/scala/org/composite/proj2/Reporter.scala new file mode 100644 index 0000000..11ef036 --- /dev/null +++ b/src/functionalTest/resources/projects/composite-build/proj2/src/main/scala/org/composite/proj2/Reporter.scala @@ -0,0 +1,19 @@ +package org.composite.proj2 + +class Reporter { + + def report(rawData: String): Report = { + Report(1,2) + } + + class InnerReporter { + + def lala(): Unit = { + + val x = 1 + 1 + x + } + } +} + +case class Report(id: Long, count: Int) \ No newline at end of file diff --git a/src/functionalTest/resources/projects/composite-build/proj2/src/test/scala/org/composite/proj2/ReporterSuite.scala b/src/functionalTest/resources/projects/composite-build/proj2/src/test/scala/org/composite/proj2/ReporterSuite.scala new file mode 100644 index 0000000..89de304 --- /dev/null +++ b/src/functionalTest/resources/projects/composite-build/proj2/src/test/scala/org/composite/proj2/ReporterSuite.scala @@ -0,0 +1,16 @@ +package org.composite.proj2 + +import org.scalatest.FunSuite +import org.junit.runner.RunWith +import org.scalatest.junit.JUnitRunner + +@RunWith(classOf[JUnitRunner]) +class ReporterSuite extends FunSuite { + + test("report"){ + + val report = new Reporter().report("x") + + assertResult(Report(1, 2))(report) + } +} From 161bad9c26347fa43e89fec52f4c17f03339930a Mon Sep 17 00:00:00 2001 From: Eyal Roth Date: Sun, 22 Dec 2019 18:15:19 +0200 Subject: [PATCH 3/5] Update README to mention that composite builds are not currently supported --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 20d82f9..4e09b2c 100644 --- a/README.md +++ b/README.md @@ -35,6 +35,8 @@ You can find instructions on how to apply the plugin at http://plugins.gradle.or `gradle checkScoverage` will automatically invoke `reportScoverage` but it won't generate aggregated reports. In order to check coverage of aggregated reports one should use `gradle checkScoverage aggregateScoverage`. + +**Note:** The plugin is not compatible with composite builds. For more information, see [the relevant issue](https://github.com/scoverage/gradle-scoverage/issues/98). ### Configuration From 2df5448d3dd268bed7c8158d9dd623ebca2f5787 Mon Sep 17 00:00:00 2001 From: Eyal Roth Date: Sat, 20 Jun 2020 18:48:16 +0300 Subject: [PATCH 4/5] Fix location of the functional tests ('org.scoverage' -> 'org/scoverage') and separate the cross-version tests to a separate source set --- build.gradle | 36 +++++++++++++------ .../java/org/scoverage}/Scala211Test.java | 2 +- .../java/org/scoverage}/Scala212Test.java | 2 +- .../java/org/scoverage}/Scala213Test.java | 2 +- .../ScalaCrossVersionAggregationTest.java | 2 +- .../java/org/scoverage}/ScalaVersionTest.java | 2 +- .../2_11/build.gradle | 0 .../src/main/scala/org/hello/World2_11.scala | 0 .../test/scala/org/hello/World2_11Suite.scala | 0 .../2_12/build.gradle | 0 .../src/main/scala/org/hello/World2_12.scala | 0 .../test/scala/org/hello/World2_12Suite.scala | 0 .../2_13/build.gradle | 0 .../src/main/scala/org/hello/World2_13.scala | 0 .../test/scala/org/hello/World2_13Suite.scala | 0 .../build.gradle | 0 .../settings.gradle | 0 .../scoverage}/CompositeBuildTest.java | 0 .../scoverage}/DetectScalaLibraryTest.java | 0 ...ModulePluginNotConfiguredForScalaTest.java | 0 .../scoverage}/MultipleCheckTasksTest.java | 0 .../scoverage}/ScalaJavaMultiModuleTest.java | 0 .../scoverage}/ScalaMultiModuleTest.java | 0 ...aMultiModuleWithMultipleTestTasksTest.java | 0 ...ultiModuleWithPartialScoverageUseTest.java | 0 .../scoverage}/ScalaSingleModuleTest.java | 0 ...SingleModuleWithDependencyManagerTest.java | 0 ...SingleModuleWithMultipleTestTasksTest.java | 0 .../scoverage}/ScoverageFunctionalTest.java | 2 +- 29 files changed, 31 insertions(+), 17 deletions(-) rename src/{functionalTest/java/org/scoverage/crossversion => crossScalaVersionTest/java/org/scoverage}/Scala211Test.java (75%) rename src/{functionalTest/java/org/scoverage/crossversion => crossScalaVersionTest/java/org/scoverage}/Scala212Test.java (75%) rename src/{functionalTest/java/org/scoverage/crossversion => crossScalaVersionTest/java/org/scoverage}/Scala213Test.java (75%) rename src/{functionalTest/java/org/scoverage/crossversion => crossScalaVersionTest/java/org/scoverage}/ScalaCrossVersionAggregationTest.java (98%) rename src/{functionalTest/java/org/scoverage/crossversion => crossScalaVersionTest/java/org/scoverage}/ScalaVersionTest.java (97%) rename src/{functionalTest => crossScalaVersionTest}/resources/projects/scala-multi-module-cross-version/2_11/build.gradle (100%) rename src/{functionalTest => crossScalaVersionTest}/resources/projects/scala-multi-module-cross-version/2_11/src/main/scala/org/hello/World2_11.scala (100%) rename src/{functionalTest => crossScalaVersionTest}/resources/projects/scala-multi-module-cross-version/2_11/src/test/scala/org/hello/World2_11Suite.scala (100%) rename src/{functionalTest => crossScalaVersionTest}/resources/projects/scala-multi-module-cross-version/2_12/build.gradle (100%) rename src/{functionalTest => crossScalaVersionTest}/resources/projects/scala-multi-module-cross-version/2_12/src/main/scala/org/hello/World2_12.scala (100%) rename src/{functionalTest => crossScalaVersionTest}/resources/projects/scala-multi-module-cross-version/2_12/src/test/scala/org/hello/World2_12Suite.scala (100%) rename src/{functionalTest => crossScalaVersionTest}/resources/projects/scala-multi-module-cross-version/2_13/build.gradle (100%) rename src/{functionalTest => crossScalaVersionTest}/resources/projects/scala-multi-module-cross-version/2_13/src/main/scala/org/hello/World2_13.scala (100%) rename src/{functionalTest => crossScalaVersionTest}/resources/projects/scala-multi-module-cross-version/2_13/src/test/scala/org/hello/World2_13Suite.scala (100%) rename src/{functionalTest => crossScalaVersionTest}/resources/projects/scala-multi-module-cross-version/build.gradle (100%) rename src/{functionalTest => crossScalaVersionTest}/resources/projects/scala-multi-module-cross-version/settings.gradle (100%) rename src/functionalTest/java/{org.scoverage => org/scoverage}/CompositeBuildTest.java (100%) rename src/functionalTest/java/{org.scoverage => org/scoverage}/DetectScalaLibraryTest.java (100%) rename src/functionalTest/java/{org.scoverage => org/scoverage}/MultiModulePluginNotConfiguredForScalaTest.java (100%) rename src/functionalTest/java/{org.scoverage => org/scoverage}/MultipleCheckTasksTest.java (100%) rename src/functionalTest/java/{org.scoverage => org/scoverage}/ScalaJavaMultiModuleTest.java (100%) rename src/functionalTest/java/{org.scoverage => org/scoverage}/ScalaMultiModuleTest.java (100%) rename src/functionalTest/java/{org.scoverage => org/scoverage}/ScalaMultiModuleWithMultipleTestTasksTest.java (100%) rename src/functionalTest/java/{org.scoverage => org/scoverage}/ScalaMultiModuleWithPartialScoverageUseTest.java (100%) rename src/functionalTest/java/{org.scoverage => org/scoverage}/ScalaSingleModuleTest.java (100%) rename src/functionalTest/java/{org.scoverage => org/scoverage}/ScalaSingleModuleWithDependencyManagerTest.java (100%) rename src/functionalTest/java/{org.scoverage => org/scoverage}/ScalaSingleModuleWithMultipleTestTasksTest.java (100%) rename src/functionalTest/java/{org.scoverage => org/scoverage}/ScoverageFunctionalTest.java (98%) diff --git a/build.gradle b/build.gradle index 03d4b54..268de3e 100644 --- a/build.gradle +++ b/build.gradle @@ -44,6 +44,7 @@ apply plugin: 'groovy' sourceCompatibility = '1.8' targetCompatibility = '1.8' + dependencies { compileOnly "org.scoverage:scalac-scoverage-plugin_2.12:1.4.1" implementation group: 'commons-io', name: 'commons-io', version: '2.6' @@ -58,38 +59,51 @@ dependencies { sourceSets { functionalTest { java.srcDir file('src/functionalTest/java') - resources.srcDir file('src/functionalTest/resources') - compileClasspath += sourceSets.main.output + configurations.testRuntimeClasspath - runtimeClasspath += output + compileClasspath + compileClasspath += sourceSets.main.output + runtimeClasspath += sourceSets.main.output + } + crossScalaVersionTest { + java.srcDir file('src/crossScalaVersionTest/java') + compileClasspath += sourceSets.main.output + sourceSets.functionalTest.output + runtimeClasspath += sourceSets.main.output + sourceSets.functionalTest.output } } -task crossScalaVersionFunctionalTest(type: Test) { +configurations { + functionalTestImplementation.extendsFrom testImplementation + functionalTestRuntimeOnly.extendsFrom testRuntimeOnly + + crossScalaVersionTestImplementation.extendsFrom testImplementation + crossScalaVersionTestRuntimeOnly.extendsFrom testRuntimeOnly +} + +task crossScalaVersionTest(type: Test) { description = 'Runs the cross scala version functional test.' group = 'verification' - testClassesDirs = sourceSets.functionalTest.output.classesDirs - classpath = sourceSets.functionalTest.runtimeClasspath - include '**/crossversion/*' + testClassesDirs = sourceSets.crossScalaVersionTest.output + classpath = sourceSets.crossScalaVersionTest.runtimeClasspath forkEvery = 1 // crucial to run every test in its own JVM testLogging.showStandardStreams = true mustRunAfter test } +check.dependsOn crossScalaVersionTest task functionalTest(type: Test) { description = 'Runs the functional tests.' group = 'verification' - testClassesDirs = sourceSets.functionalTest.output.classesDirs + testClassesDirs = sourceSets.functionalTest.output classpath = sourceSets.functionalTest.runtimeClasspath - exclude '**/crossversion/*' - dependsOn crossScalaVersionFunctionalTest + testLogging.showStandardStreams = true + + mustRunAfter crossScalaVersionTest } check.dependsOn functionalTest gradlePlugin { - testSourceSets sourceSets.functionalTest + testSourceSets sourceSets.functionalTest, sourceSets.crossScalaVersionTest } task groovydocJar(type: Jar, dependsOn: groovydoc) { diff --git a/src/functionalTest/java/org/scoverage/crossversion/Scala211Test.java b/src/crossScalaVersionTest/java/org/scoverage/Scala211Test.java similarity index 75% rename from src/functionalTest/java/org/scoverage/crossversion/Scala211Test.java rename to src/crossScalaVersionTest/java/org/scoverage/Scala211Test.java index e8dfcaa..ac06067 100644 --- a/src/functionalTest/java/org/scoverage/crossversion/Scala211Test.java +++ b/src/crossScalaVersionTest/java/org/scoverage/Scala211Test.java @@ -1,4 +1,4 @@ -package org.scoverage.crossversion; +package org.scoverage; public class Scala211Test extends ScalaVersionTest { public Scala211Test() { diff --git a/src/functionalTest/java/org/scoverage/crossversion/Scala212Test.java b/src/crossScalaVersionTest/java/org/scoverage/Scala212Test.java similarity index 75% rename from src/functionalTest/java/org/scoverage/crossversion/Scala212Test.java rename to src/crossScalaVersionTest/java/org/scoverage/Scala212Test.java index ee34a21..2c538ae 100644 --- a/src/functionalTest/java/org/scoverage/crossversion/Scala212Test.java +++ b/src/crossScalaVersionTest/java/org/scoverage/Scala212Test.java @@ -1,4 +1,4 @@ -package org.scoverage.crossversion; +package org.scoverage; public class Scala212Test extends ScalaVersionTest { public Scala212Test() { diff --git a/src/functionalTest/java/org/scoverage/crossversion/Scala213Test.java b/src/crossScalaVersionTest/java/org/scoverage/Scala213Test.java similarity index 75% rename from src/functionalTest/java/org/scoverage/crossversion/Scala213Test.java rename to src/crossScalaVersionTest/java/org/scoverage/Scala213Test.java index f6a6043..31d9a38 100644 --- a/src/functionalTest/java/org/scoverage/crossversion/Scala213Test.java +++ b/src/crossScalaVersionTest/java/org/scoverage/Scala213Test.java @@ -1,4 +1,4 @@ -package org.scoverage.crossversion; +package org.scoverage; public class Scala213Test extends ScalaVersionTest { public Scala213Test() { diff --git a/src/functionalTest/java/org/scoverage/crossversion/ScalaCrossVersionAggregationTest.java b/src/crossScalaVersionTest/java/org/scoverage/ScalaCrossVersionAggregationTest.java similarity index 98% rename from src/functionalTest/java/org/scoverage/crossversion/ScalaCrossVersionAggregationTest.java rename to src/crossScalaVersionTest/java/org/scoverage/ScalaCrossVersionAggregationTest.java index a086188..d3b66ae 100644 --- a/src/functionalTest/java/org/scoverage/crossversion/ScalaCrossVersionAggregationTest.java +++ b/src/crossScalaVersionTest/java/org/scoverage/ScalaCrossVersionAggregationTest.java @@ -1,4 +1,4 @@ -package org.scoverage.crossversion; +package org.scoverage; import org.junit.Assert; import org.junit.Test; diff --git a/src/functionalTest/java/org/scoverage/crossversion/ScalaVersionTest.java b/src/crossScalaVersionTest/java/org/scoverage/ScalaVersionTest.java similarity index 97% rename from src/functionalTest/java/org/scoverage/crossversion/ScalaVersionTest.java rename to src/crossScalaVersionTest/java/org/scoverage/ScalaVersionTest.java index e5ac15f..59160f3 100644 --- a/src/functionalTest/java/org/scoverage/crossversion/ScalaVersionTest.java +++ b/src/crossScalaVersionTest/java/org/scoverage/ScalaVersionTest.java @@ -1,4 +1,4 @@ -package org.scoverage.crossversion; +package org.scoverage; import org.junit.Assert; import org.junit.Test; diff --git a/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_11/build.gradle b/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_11/build.gradle similarity index 100% rename from src/functionalTest/resources/projects/scala-multi-module-cross-version/2_11/build.gradle rename to src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_11/build.gradle diff --git a/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_11/src/main/scala/org/hello/World2_11.scala b/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_11/src/main/scala/org/hello/World2_11.scala similarity index 100% rename from src/functionalTest/resources/projects/scala-multi-module-cross-version/2_11/src/main/scala/org/hello/World2_11.scala rename to src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_11/src/main/scala/org/hello/World2_11.scala diff --git a/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_11/src/test/scala/org/hello/World2_11Suite.scala b/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_11/src/test/scala/org/hello/World2_11Suite.scala similarity index 100% rename from src/functionalTest/resources/projects/scala-multi-module-cross-version/2_11/src/test/scala/org/hello/World2_11Suite.scala rename to src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_11/src/test/scala/org/hello/World2_11Suite.scala diff --git a/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_12/build.gradle b/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_12/build.gradle similarity index 100% rename from src/functionalTest/resources/projects/scala-multi-module-cross-version/2_12/build.gradle rename to src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_12/build.gradle diff --git a/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_12/src/main/scala/org/hello/World2_12.scala b/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_12/src/main/scala/org/hello/World2_12.scala similarity index 100% rename from src/functionalTest/resources/projects/scala-multi-module-cross-version/2_12/src/main/scala/org/hello/World2_12.scala rename to src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_12/src/main/scala/org/hello/World2_12.scala diff --git a/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_12/src/test/scala/org/hello/World2_12Suite.scala b/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_12/src/test/scala/org/hello/World2_12Suite.scala similarity index 100% rename from src/functionalTest/resources/projects/scala-multi-module-cross-version/2_12/src/test/scala/org/hello/World2_12Suite.scala rename to src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_12/src/test/scala/org/hello/World2_12Suite.scala diff --git a/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_13/build.gradle b/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_13/build.gradle similarity index 100% rename from src/functionalTest/resources/projects/scala-multi-module-cross-version/2_13/build.gradle rename to src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_13/build.gradle diff --git a/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_13/src/main/scala/org/hello/World2_13.scala b/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_13/src/main/scala/org/hello/World2_13.scala similarity index 100% rename from src/functionalTest/resources/projects/scala-multi-module-cross-version/2_13/src/main/scala/org/hello/World2_13.scala rename to src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_13/src/main/scala/org/hello/World2_13.scala diff --git a/src/functionalTest/resources/projects/scala-multi-module-cross-version/2_13/src/test/scala/org/hello/World2_13Suite.scala b/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_13/src/test/scala/org/hello/World2_13Suite.scala similarity index 100% rename from src/functionalTest/resources/projects/scala-multi-module-cross-version/2_13/src/test/scala/org/hello/World2_13Suite.scala rename to src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/2_13/src/test/scala/org/hello/World2_13Suite.scala diff --git a/src/functionalTest/resources/projects/scala-multi-module-cross-version/build.gradle b/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/build.gradle similarity index 100% rename from src/functionalTest/resources/projects/scala-multi-module-cross-version/build.gradle rename to src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/build.gradle diff --git a/src/functionalTest/resources/projects/scala-multi-module-cross-version/settings.gradle b/src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/settings.gradle similarity index 100% rename from src/functionalTest/resources/projects/scala-multi-module-cross-version/settings.gradle rename to src/crossScalaVersionTest/resources/projects/scala-multi-module-cross-version/settings.gradle diff --git a/src/functionalTest/java/org.scoverage/CompositeBuildTest.java b/src/functionalTest/java/org/scoverage/CompositeBuildTest.java similarity index 100% rename from src/functionalTest/java/org.scoverage/CompositeBuildTest.java rename to src/functionalTest/java/org/scoverage/CompositeBuildTest.java diff --git a/src/functionalTest/java/org.scoverage/DetectScalaLibraryTest.java b/src/functionalTest/java/org/scoverage/DetectScalaLibraryTest.java similarity index 100% rename from src/functionalTest/java/org.scoverage/DetectScalaLibraryTest.java rename to src/functionalTest/java/org/scoverage/DetectScalaLibraryTest.java diff --git a/src/functionalTest/java/org.scoverage/MultiModulePluginNotConfiguredForScalaTest.java b/src/functionalTest/java/org/scoverage/MultiModulePluginNotConfiguredForScalaTest.java similarity index 100% rename from src/functionalTest/java/org.scoverage/MultiModulePluginNotConfiguredForScalaTest.java rename to src/functionalTest/java/org/scoverage/MultiModulePluginNotConfiguredForScalaTest.java diff --git a/src/functionalTest/java/org.scoverage/MultipleCheckTasksTest.java b/src/functionalTest/java/org/scoverage/MultipleCheckTasksTest.java similarity index 100% rename from src/functionalTest/java/org.scoverage/MultipleCheckTasksTest.java rename to src/functionalTest/java/org/scoverage/MultipleCheckTasksTest.java diff --git a/src/functionalTest/java/org.scoverage/ScalaJavaMultiModuleTest.java b/src/functionalTest/java/org/scoverage/ScalaJavaMultiModuleTest.java similarity index 100% rename from src/functionalTest/java/org.scoverage/ScalaJavaMultiModuleTest.java rename to src/functionalTest/java/org/scoverage/ScalaJavaMultiModuleTest.java diff --git a/src/functionalTest/java/org.scoverage/ScalaMultiModuleTest.java b/src/functionalTest/java/org/scoverage/ScalaMultiModuleTest.java similarity index 100% rename from src/functionalTest/java/org.scoverage/ScalaMultiModuleTest.java rename to src/functionalTest/java/org/scoverage/ScalaMultiModuleTest.java diff --git a/src/functionalTest/java/org.scoverage/ScalaMultiModuleWithMultipleTestTasksTest.java b/src/functionalTest/java/org/scoverage/ScalaMultiModuleWithMultipleTestTasksTest.java similarity index 100% rename from src/functionalTest/java/org.scoverage/ScalaMultiModuleWithMultipleTestTasksTest.java rename to src/functionalTest/java/org/scoverage/ScalaMultiModuleWithMultipleTestTasksTest.java diff --git a/src/functionalTest/java/org.scoverage/ScalaMultiModuleWithPartialScoverageUseTest.java b/src/functionalTest/java/org/scoverage/ScalaMultiModuleWithPartialScoverageUseTest.java similarity index 100% rename from src/functionalTest/java/org.scoverage/ScalaMultiModuleWithPartialScoverageUseTest.java rename to src/functionalTest/java/org/scoverage/ScalaMultiModuleWithPartialScoverageUseTest.java diff --git a/src/functionalTest/java/org.scoverage/ScalaSingleModuleTest.java b/src/functionalTest/java/org/scoverage/ScalaSingleModuleTest.java similarity index 100% rename from src/functionalTest/java/org.scoverage/ScalaSingleModuleTest.java rename to src/functionalTest/java/org/scoverage/ScalaSingleModuleTest.java diff --git a/src/functionalTest/java/org.scoverage/ScalaSingleModuleWithDependencyManagerTest.java b/src/functionalTest/java/org/scoverage/ScalaSingleModuleWithDependencyManagerTest.java similarity index 100% rename from src/functionalTest/java/org.scoverage/ScalaSingleModuleWithDependencyManagerTest.java rename to src/functionalTest/java/org/scoverage/ScalaSingleModuleWithDependencyManagerTest.java diff --git a/src/functionalTest/java/org.scoverage/ScalaSingleModuleWithMultipleTestTasksTest.java b/src/functionalTest/java/org/scoverage/ScalaSingleModuleWithMultipleTestTasksTest.java similarity index 100% rename from src/functionalTest/java/org.scoverage/ScalaSingleModuleWithMultipleTestTasksTest.java rename to src/functionalTest/java/org/scoverage/ScalaSingleModuleWithMultipleTestTasksTest.java diff --git a/src/functionalTest/java/org.scoverage/ScoverageFunctionalTest.java b/src/functionalTest/java/org/scoverage/ScoverageFunctionalTest.java similarity index 98% rename from src/functionalTest/java/org.scoverage/ScoverageFunctionalTest.java rename to src/functionalTest/java/org/scoverage/ScoverageFunctionalTest.java index 0341cc2..c1bd0b1 100644 --- a/src/functionalTest/java/org.scoverage/ScoverageFunctionalTest.java +++ b/src/functionalTest/java/org/scoverage/ScoverageFunctionalTest.java @@ -50,7 +50,7 @@ protected void setProjectName(String projectName) { protected File projectDir() { - return new File("src/functionalTest/resources/projects/" + projectName); + return new File(getClass().getClassLoader().getResource("projects/" + projectName).getFile()); } protected File buildDir() { From 69bb994e28f4959c46618f211b4ac980595f43d9 Mon Sep 17 00:00:00 2001 From: Eyal Roth Date: Sat, 20 Jun 2020 18:57:42 +0300 Subject: [PATCH 5/5] Ignore the functional test for Scala 2.13 until it is supported (#106) --- .../java/org/scoverage/Scala213Test.java | 8 ++++++++ .../java/org/scoverage/CompositeBuildTest.java | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/crossScalaVersionTest/java/org/scoverage/Scala213Test.java b/src/crossScalaVersionTest/java/org/scoverage/Scala213Test.java index 31d9a38..0f6ed71 100644 --- a/src/crossScalaVersionTest/java/org/scoverage/Scala213Test.java +++ b/src/crossScalaVersionTest/java/org/scoverage/Scala213Test.java @@ -1,5 +1,13 @@ package org.scoverage; +import org.junit.Ignore; + +/** + * Tests is currently ignored as support for Scala 2.13 is not available yet. + * + * @see Issue #106. + */ +@Ignore public class Scala213Test extends ScalaVersionTest { public Scala213Test() { super("2_13"); diff --git a/src/functionalTest/java/org/scoverage/CompositeBuildTest.java b/src/functionalTest/java/org/scoverage/CompositeBuildTest.java index 86dd695..98a9ee8 100644 --- a/src/functionalTest/java/org/scoverage/CompositeBuildTest.java +++ b/src/functionalTest/java/org/scoverage/CompositeBuildTest.java @@ -10,7 +10,7 @@ /** * Tests are currently ignored as composite builds are not supported yet. * - * See https://github.com/scoverage/gradle-scoverage/issues/98 + * @see Issue #94. */ public class CompositeBuildTest extends ScoverageFunctionalTest {