-
Notifications
You must be signed in to change notification settings - Fork 167
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Test various combinations JDT writing mode
- Loading branch information
Showing
14 changed files
with
194 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
!.settings |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 | ||
org.eclipse.jdt.core.compiler.source=1.8 | ||
org.eclipse.jdt.core.compiler.compliance=1.8 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,92 @@ | ||
|
||
val check = TaskKey[Unit]("check") := { | ||
import java.util.Properties | ||
import java.io.FileInputStream | ||
import scala.collection.JavaConverters._ | ||
|
||
val s: TaskStreams = streams.value | ||
val expectedFile = baseDirectory.value / "expected" | ||
val resultFile = baseDirectory.value / ".settings" / "org.eclipse.jdt.core.prefs" | ||
|
||
if (expectedFile.exists()) { | ||
val expectedIn = new FileInputStream(expectedFile) | ||
val expected = | ||
try { | ||
val prop = new Properties() | ||
prop.load(expectedIn) | ||
prop.asScala.toMap | ||
} finally { | ||
expectedIn.close() | ||
} | ||
|
||
val resultIn = new FileInputStream(resultFile) | ||
val result = | ||
try { | ||
val prop = new Properties() | ||
prop.load(resultIn) | ||
prop.asScala.toMap | ||
} finally { | ||
resultIn.close() | ||
} | ||
|
||
if (expected == result) | ||
s.log.info(s"correct data: ${resultFile}") | ||
else | ||
sys.error("Expected settings to be '%s', but was '%s'!".format(expected, result)) | ||
} | ||
} | ||
|
||
// ensure org.eclipse.core.resources.prefs will always be generated | ||
ThisBuild / scalacOptions ++= Seq("-encoding", "utf-8") | ||
|
||
// check that no JDT file is generated (default ignore, no runtime defined) | ||
lazy val projectA = (project in file("a")) | ||
.settings( | ||
check | ||
) | ||
|
||
// check that a new and correct JDT file is generated | ||
lazy val projectB = (project in file("b")) | ||
.settings( | ||
EclipseKeys.executionEnvironment := Some(EclipseExecutionEnvironment.JavaSE18), | ||
EclipseKeys.jdtMode := EclipseJDTMode.Update, | ||
check | ||
) | ||
|
||
// check that a correct JDT file is is not updated | ||
lazy val projectC = (project in file("c")) | ||
.settings( | ||
EclipseKeys.executionEnvironment := Some(EclipseExecutionEnvironment.JavaSE11), | ||
EclipseKeys.jdtMode := EclipseJDTMode.Update, | ||
check | ||
) | ||
|
||
// check that an outdated JDT file is selectively updated | ||
lazy val projectD = (project in file("d")) | ||
.settings( | ||
EclipseKeys.executionEnvironment := Some(EclipseExecutionEnvironment.JavaSE_17), | ||
EclipseKeys.jdtMode := EclipseJDTMode.Update, | ||
check | ||
) | ||
|
||
// check that a JDT file is overwritten | ||
lazy val projectE = (project in file("e")) | ||
.settings( | ||
EclipseKeys.executionEnvironment := Some(EclipseExecutionEnvironment.JavaSE11), | ||
EclipseKeys.jdtMode := EclipseJDTMode.Overwrite, | ||
check | ||
) | ||
|
||
// check that an JDT file is removed | ||
lazy val projectF = (project in file("f")) | ||
.settings( | ||
EclipseKeys.jdtMode := EclipseJDTMode.Remove, | ||
check | ||
) | ||
|
||
// check that an JDT file is default ignored, but written on command | ||
lazy val projectG = (project in file("g")) | ||
.settings( | ||
EclipseKeys.executionEnvironment := Some(EclipseExecutionEnvironment.JavaSE18), | ||
check | ||
) |
4 changes: 4 additions & 0 deletions
4
src/sbt-test/sbteclipse/08-jdt-settings/c/.settings/org.eclipse.jdt.core.prefs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 | ||
org.eclipse.jdt.core.compiler.source=11 | ||
org.eclipse.jdt.core.compiler.compliance=11 | ||
dummy.key=abc |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 | ||
org.eclipse.jdt.core.compiler.source=11 | ||
org.eclipse.jdt.core.compiler.compliance=11 | ||
dummy.key=abc |
4 changes: 4 additions & 0 deletions
4
src/sbt-test/sbteclipse/08-jdt-settings/d/.settings/org.eclipse.jdt.core.prefs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 | ||
org.eclipse.jdt.core.compiler.source=11 | ||
org.eclipse.jdt.core.compiler.compliance=11 | ||
dummy.key=abc |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=17 | ||
org.eclipse.jdt.core.compiler.source=17 | ||
org.eclipse.jdt.core.compiler.compliance=17 | ||
dummy.key=abc |
4 changes: 4 additions & 0 deletions
4
src/sbt-test/sbteclipse/08-jdt-settings/e/.settings/org.eclipse.jdt.core.prefs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 | ||
org.eclipse.jdt.core.compiler.source=11 | ||
org.eclipse.jdt.core.compiler.compliance=11 | ||
dummy.key=abc |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 | ||
org.eclipse.jdt.core.compiler.source=11 | ||
org.eclipse.jdt.core.compiler.compliance=11 |
4 changes: 4 additions & 0 deletions
4
src/sbt-test/sbteclipse/08-jdt-settings/f/.settings/org.eclipse.jdt.core.prefs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 | ||
org.eclipse.jdt.core.compiler.source=11 | ||
org.eclipse.jdt.core.compiler.compliance=11 | ||
dummy.key=abc |
1 change: 1 addition & 0 deletions
1
src/sbt-test/sbteclipse/08-jdt-settings/g/.settings/org.eclipse.jdt.core.prefs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
dummy.key=abc |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
dummy.key=abc |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
{ | ||
val pluginVersion = System.getProperty("plugin.version") | ||
if(pluginVersion == null) | ||
throw new RuntimeException("""|The system property 'plugin.version' is not defined. | ||
|Specify this property using the scriptedLaunchOpts -D.""".stripMargin) | ||
else addSbtPlugin("com.github.sbt" % "sbt-eclipse" % pluginVersion) | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,62 @@ | ||
# timestamp marker file | ||
$ touch marker | ||
|
||
$ exists f/.settings/org.eclipse.jdt.core.prefs | ||
|
||
> eclipse | ||
|
||
> check | ||
|
||
$ exists a/.settings/org.eclipse.core.resources.prefs | ||
-$ exists a/.settings/org.eclipse.jdt.core.prefs | ||
|
||
$ exists b/.settings/org.eclipse.jdt.core.prefs | ||
$ newer b/.settings/org.eclipse.jdt.core.prefs marker | ||
|
||
$ exists c/.settings/org.eclipse.jdt.core.prefs | ||
$ newer marker c/.settings/org.eclipse.jdt.core.prefs | ||
|
||
$ exists d/.settings/org.eclipse.jdt.core.prefs | ||
$ newer d/.settings/org.eclipse.jdt.core.prefs marker | ||
|
||
$ exists e/.settings/org.eclipse.jdt.core.prefs | ||
$ newer e/.settings/org.eclipse.jdt.core.prefs marker | ||
|
||
$ exists f/.settings/org.eclipse.core.resources.prefs | ||
-$ exists f/.settings/org.eclipse.jdt.core.prefs | ||
|
||
$ exists g/.settings/org.eclipse.jdt.core.prefs | ||
$ newer marker g/.settings/org.eclipse.jdt.core.prefs | ||
|
||
# test overwrite mode via command arg | ||
$ touch marker | ||
> eclipse jdt-mode=Overwrite | ||
# no runtime defined for a | ||
-$ exists a/.settings/org.eclipse.jdt.core.prefs | ||
$ newer b/.settings/org.eclipse.jdt.core.prefs marker | ||
$ newer c/.settings/org.eclipse.jdt.core.prefs marker | ||
$ newer d/.settings/org.eclipse.jdt.core.prefs marker | ||
$ newer e/.settings/org.eclipse.jdt.core.prefs marker | ||
-$ exists f/.settings/org.eclipse.jdt.core.prefs | ||
$ newer g/.settings/org.eclipse.jdt.core.prefs marker | ||
|
||
# test ignore mode via command arg | ||
$ touch marker | ||
> eclipse jdt-mode=Ignore | ||
-$ exists a/.settings/org.eclipse.jdt.core.prefs | ||
$ newer marker b/.settings/org.eclipse.jdt.core.prefs | ||
$ newer marker c/.settings/org.eclipse.jdt.core.prefs | ||
$ newer marker d/.settings/org.eclipse.jdt.core.prefs | ||
$ newer marker e/.settings/org.eclipse.jdt.core.prefs | ||
-$ exists f/.settings/org.eclipse.jdt.core.prefs | ||
$ newer marker g/.settings/org.eclipse.jdt.core.prefs | ||
|
||
# test remove mode via command arg | ||
> eclipse jdt-mode=Remove | ||
-$ exists a/.settings/org.eclipse.jdt.core.prefs | ||
-$ exists b/.settings/org.eclipse.jdt.core.prefs | ||
-$ exists c/.settings/org.eclipse.jdt.core.prefs | ||
-$ exists d/.settings/org.eclipse.jdt.core.prefs | ||
-$ exists e/.settings/org.eclipse.jdt.core.prefs | ||
-$ exists f/.settings/org.eclipse.jdt.core.prefs | ||
-$ exists g/.settings/org.eclipse.jdt.core.prefs |