From c47db3a373e606188fefb2ba85000dcce022c2ee Mon Sep 17 00:00:00 2001 From: Mikhail Kokho Date: Fri, 10 Jul 2015 23:33:25 +1200 Subject: [PATCH] added sub-project that tests coverageAggregate command --- src/sbt-test/scoverage/aggregate/build.sbt | 40 +++++++++++++++++++ .../scoverage/issue53/part/a/AdderScala.scala | 10 +++++ .../partA/src/test/scala/AdderTestSuite.scala | 13 ++++++ .../issue53/part/b/SubtractorScala.scala | 11 +++++ .../src/test/scala/SubtractorTestSuite.scala | 14 +++++++ .../scoverage/aggregate/project/plugins.sbt | 6 +++ src/sbt-test/scoverage/aggregate/test | 2 + 7 files changed, 96 insertions(+) create mode 100644 src/sbt-test/scoverage/aggregate/build.sbt create mode 100644 src/sbt-test/scoverage/aggregate/partA/src/main/scala/org/scoverage/issue53/part/a/AdderScala.scala create mode 100644 src/sbt-test/scoverage/aggregate/partA/src/test/scala/AdderTestSuite.scala create mode 100644 src/sbt-test/scoverage/aggregate/partB/src/main/scala/org/scoverage/issue53/part/b/SubtractorScala.scala create mode 100644 src/sbt-test/scoverage/aggregate/partB/src/test/scala/SubtractorTestSuite.scala create mode 100644 src/sbt-test/scoverage/aggregate/project/plugins.sbt create mode 100644 src/sbt-test/scoverage/aggregate/test diff --git a/src/sbt-test/scoverage/aggregate/build.sbt b/src/sbt-test/scoverage/aggregate/build.sbt new file mode 100644 index 00000000..25724fe4 --- /dev/null +++ b/src/sbt-test/scoverage/aggregate/build.sbt @@ -0,0 +1,40 @@ +/* + The projects test aggregation of coverage reports from two sub-projects. + The sub-projects are in the irectories partA and partB. + The tests are against the sources of ScoverageSbtPlugin in the parent directory. + It might be possible to test other versions of ScoverageSbtPlugin. +*/ + +lazy val commonSettings = Seq( + organization := "org.scoverage", + version := "0.1.0", + scalaVersion := "2.10.4" +) + +lazy val specs2Lib = "org.specs2" %% "specs2" % "2.3.13" % "test" + +def module(name: String) = { + val id = s"part$name" + Project(id = id, base = file(id)) + .settings(commonSettings: _*) + .settings( + Keys.name := name, + libraryDependencies += specs2Lib + ) +} + +lazy val partA = module("A") +lazy val partB = module("B") + +lazy val root = (project in file(".")) + .settings(commonSettings:_*) + .settings( + name := "root", + test := { } + ).aggregate( + partA, + partB + ) + + + diff --git a/src/sbt-test/scoverage/aggregate/partA/src/main/scala/org/scoverage/issue53/part/a/AdderScala.scala b/src/sbt-test/scoverage/aggregate/partA/src/main/scala/org/scoverage/issue53/part/a/AdderScala.scala new file mode 100644 index 00000000..30415c1d --- /dev/null +++ b/src/sbt-test/scoverage/aggregate/partA/src/main/scala/org/scoverage/issue53/part/a/AdderScala.scala @@ -0,0 +1,10 @@ +package org.scoverage.issue53.part.a + +/** + * Created by Mikhail Kokho on 7/10/2015. + */ +object AdderScala { + + def add(x: Int, y: Int) = x + y + +} diff --git a/src/sbt-test/scoverage/aggregate/partA/src/test/scala/AdderTestSuite.scala b/src/sbt-test/scoverage/aggregate/partA/src/test/scala/AdderTestSuite.scala new file mode 100644 index 00000000..63efd2b9 --- /dev/null +++ b/src/sbt-test/scoverage/aggregate/partA/src/test/scala/AdderTestSuite.scala @@ -0,0 +1,13 @@ +import org.specs2.mutable._ +import org.scoverage.issue53.part.a.AdderScala + +/** + * Created by Mikhail Kokho on 7/10/2015. + */ +class AdderTestSuite extends Specification { + "Adder" should { + "sum two numbers" in { + AdderScala.add(1, 2) mustEqual 3 + } + } +} diff --git a/src/sbt-test/scoverage/aggregate/partB/src/main/scala/org/scoverage/issue53/part/b/SubtractorScala.scala b/src/sbt-test/scoverage/aggregate/partB/src/main/scala/org/scoverage/issue53/part/b/SubtractorScala.scala new file mode 100644 index 00000000..e6da85fd --- /dev/null +++ b/src/sbt-test/scoverage/aggregate/partB/src/main/scala/org/scoverage/issue53/part/b/SubtractorScala.scala @@ -0,0 +1,11 @@ + +package org.scoverage.issue53.part.b + +/** + * Created by Mikhail Kokho on 7/10/2015. + */ +object SubtractorScala { + + def minus(x: Int, y: Int) = x - y + +} diff --git a/src/sbt-test/scoverage/aggregate/partB/src/test/scala/SubtractorTestSuite.scala b/src/sbt-test/scoverage/aggregate/partB/src/test/scala/SubtractorTestSuite.scala new file mode 100644 index 00000000..97c5266f --- /dev/null +++ b/src/sbt-test/scoverage/aggregate/partB/src/test/scala/SubtractorTestSuite.scala @@ -0,0 +1,14 @@ +import org.specs2.mutable._ +import org.scoverage.issue53.part.b.SubtractorScala + +/** + * Created by Mikhail Kokho on 7/10/2015. + */ +class SubtractorTestSuite extends Specification { + "Subtractor" should { + "subtract two numbers" in { + SubtractorScala.minus(2, 1) mustEqual 1 + } + } +} + diff --git a/src/sbt-test/scoverage/aggregate/project/plugins.sbt b/src/sbt-test/scoverage/aggregate/project/plugins.sbt new file mode 100644 index 00000000..062e7340 --- /dev/null +++ b/src/sbt-test/scoverage/aggregate/project/plugins.sbt @@ -0,0 +1,6 @@ +/* + * ScoveragePlugin is constructed from the sources in the parent directory + */ +lazy val root = (project in file(".")).dependsOn(scoveragePlugin) + +lazy val scoveragePlugin = file("../../../..").getAbsoluteFile.toURI \ No newline at end of file diff --git a/src/sbt-test/scoverage/aggregate/test b/src/sbt-test/scoverage/aggregate/test new file mode 100644 index 00000000..013ff377 --- /dev/null +++ b/src/sbt-test/scoverage/aggregate/test @@ -0,0 +1,2 @@ +#this file is necessary for scripted plugin. See http://eed3si9n.com/testing-sbt-plugins +#it is empty for now \ No newline at end of file