From 38aa811d5078a3914e8424ba0a89d314abe0387c Mon Sep 17 00:00:00 2001 From: Mark Harrah Date: Sat, 23 Jul 2011 23:07:54 -0400 Subject: [PATCH] settings ordering test --- sbt/src/sbt-test/project/settings/build.sbt | 8 ++++++ .../project/settings/changes/Build.scala | 9 +++++++ .../project/settings/changes/Global.scala | 9 +++++++ .../project/settings/changes/global.sbt | 1 + .../project/settings/changes/local.sbt | 1 + .../project/settings/changes/settings.sbt | 1 + sbt/src/sbt-test/project/settings/test | 25 +++++++++++++++++++ 7 files changed, 54 insertions(+) create mode 100644 sbt/src/sbt-test/project/settings/build.sbt create mode 100644 sbt/src/sbt-test/project/settings/changes/Build.scala create mode 100644 sbt/src/sbt-test/project/settings/changes/Global.scala create mode 100644 sbt/src/sbt-test/project/settings/changes/global.sbt create mode 100644 sbt/src/sbt-test/project/settings/changes/local.sbt create mode 100644 sbt/src/sbt-test/project/settings/changes/settings.sbt create mode 100644 sbt/src/sbt-test/project/settings/test diff --git a/sbt/src/sbt-test/project/settings/build.sbt b/sbt/src/sbt-test/project/settings/build.sbt new file mode 100644 index 000000000..1c0aa4023 --- /dev/null +++ b/sbt/src/sbt-test/project/settings/build.sbt @@ -0,0 +1,8 @@ +import complete.DefaultParsers._ + +InputKey[Unit]("check") <<= InputTask(_ => Space ~> IntBasic) { result => + (result, maxErrors) map { (expected, actual) => + assert(expected == actual, "Expected " + expected + ", got " + actual) + } +} + diff --git a/sbt/src/sbt-test/project/settings/changes/Build.scala b/sbt/src/sbt-test/project/settings/changes/Build.scala new file mode 100644 index 000000000..fc1af2bb4 --- /dev/null +++ b/sbt/src/sbt-test/project/settings/changes/Build.scala @@ -0,0 +1,9 @@ +import sbt._ +import Keys._ + +object B extends Build +{ + lazy val root = Project("root", file(".")) settings( + maxErrors ~= (_ * 9) + ) +} diff --git a/sbt/src/sbt-test/project/settings/changes/Global.scala b/sbt/src/sbt-test/project/settings/changes/Global.scala new file mode 100644 index 000000000..e907369dd --- /dev/null +++ b/sbt/src/sbt-test/project/settings/changes/Global.scala @@ -0,0 +1,9 @@ +import sbt._ +import Keys._ + +object P extends Plugin +{ + override def settings = Seq( + maxErrors ~= (x => x*x) + ) +} diff --git a/sbt/src/sbt-test/project/settings/changes/global.sbt b/sbt/src/sbt-test/project/settings/changes/global.sbt new file mode 100644 index 000000000..6c674968c --- /dev/null +++ b/sbt/src/sbt-test/project/settings/changes/global.sbt @@ -0,0 +1 @@ +maxErrors ~= (_ / 25) diff --git a/sbt/src/sbt-test/project/settings/changes/local.sbt b/sbt/src/sbt-test/project/settings/changes/local.sbt new file mode 100644 index 000000000..8ccec0f28 --- /dev/null +++ b/sbt/src/sbt-test/project/settings/changes/local.sbt @@ -0,0 +1 @@ +maxErrors ~= (_ + 3) diff --git a/sbt/src/sbt-test/project/settings/changes/settings.sbt b/sbt/src/sbt-test/project/settings/changes/settings.sbt new file mode 100644 index 000000000..a83718456 --- /dev/null +++ b/sbt/src/sbt-test/project/settings/changes/settings.sbt @@ -0,0 +1 @@ +maxErrors ~= (_ / 10) diff --git a/sbt/src/sbt-test/project/settings/test b/sbt/src/sbt-test/project/settings/test new file mode 100644 index 000000000..82232b716 --- /dev/null +++ b/sbt/src/sbt-test/project/settings/test @@ -0,0 +1,25 @@ +# checks order of injected settings +> set logLevel := Level.Debug + +# default, in Global scope +> check 100 + +# div by 25 +$ copy-file changes/global.sbt global/settings.sbt +> reload +> check 4 + +# add 3 +$ copy-file changes/local.sbt local.sbt +> reload +> check 7 + +# square +$ copy-file changes/Global.scala global/plugins/Global.scala +> reload +> check 19 + +# multiply by 9 +$ copy-file changes/Build.scala project/Build.scala +> reload +> check 1299