diff --git a/sbt/src/sbt-test/dependency-management/make-pom-type/build.sbt b/sbt/src/sbt-test/dependency-management/make-pom-type/build.sbt new file mode 100644 index 000000000..79a809bff --- /dev/null +++ b/sbt/src/sbt-test/dependency-management/make-pom-type/build.sbt @@ -0,0 +1,45 @@ +lazy val p1 = (project in file("p1")). + settings( + checkTask(expectedMongo), + libraryDependencies += "org.mongodb" %% "casbah" % "2.4.1" pomOnly(), + inThisBuild(List( + organization := "org.example", + version := "1.0", + scalaVersion := "2.9.2", + autoScalaLibrary := false + )) + ) + +lazy val p2 = (project in file("p2")). + dependsOn(p1). + settings( + checkTask(expectedInter) + ) + +lazy val expectedMongo = + + org.mongodb + casbah_2.9.2 + 2.4.1 + pom + + +lazy val expectedInter = + + org.example + p1_2.9.2 + 1.0 + + +def checkTask(expectedDep: xml.Elem) = TaskKey[Unit]("check-pom") <<= makePom map { file => + val pom = xml.XML.loadFile(file) + val actual = pom \\ "dependencies" + val expected = + {expectedDep} + + def dropTopElem(s:String): String = s.split("""\n""").drop(1).dropRight(1).mkString("\n") + val pp = new xml.PrettyPrinter(Int.MaxValue, 0) + val expectedString = dropTopElem(pp.format(expected)) + val actualString = dropTopElem(pp.formatNodes(actual)) + assert(expectedString == actualString, "Expected dependencies section:\n" + expectedString + "\n\nActual:\n" + actualString) +} diff --git a/sbt/src/sbt-test/dependency-management/make-pom-type/project/Build.scala b/sbt/src/sbt-test/dependency-management/make-pom-type/project/Build.scala deleted file mode 100644 index 3cc1aa174..000000000 --- a/sbt/src/sbt-test/dependency-management/make-pom-type/project/Build.scala +++ /dev/null @@ -1,50 +0,0 @@ -import sbt._ -import Keys._ -import Import._ - -object build extends Build { - override def settings = super.settings ++ Seq( - organization := "org.example", - version := "1.0", - scalaVersion := "2.9.2", - autoScalaLibrary := false - ) - - lazy val p1 = Project("p1",file("p1")) settings( - checkTask(expectedMongo), - libraryDependencies += "org.mongodb" %% "casbah" % "2.4.1" pomOnly() - ) - lazy val p2 = Project("p2", file("p2")) dependsOn(p1) settings( - checkTask(expectedInter) - ) - - lazy val expectedMongo = - - org.mongodb - casbah_2.9.2 - 2.4.1 - pom - - - lazy val expectedInter = - - org.example - p1_2.9.2 - 1.0 - - - def checkTask(expectedDep: xml.Elem) = TaskKey[Unit]("check-pom") <<= makePom map { file => - val pom = xml.XML.loadFile(file) - val actual = pom \\ "dependencies" - val expected = - {expectedDep} - - def dropTopElem(s:String): String = s.split("""\n""").drop(1).dropRight(1).mkString("\n") - val pp = new xml.PrettyPrinter(Int.MaxValue, 0) - val expectedString = dropTopElem(pp.format(expected)) - val actualString = dropTopElem(pp.formatNodes(actual)) - assert(expectedString == actualString, "Expected dependencies section:\n" + expectedString + "\n\nActual:\n" + actualString) - } - -} -