You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by nt...@apache.org on 2018/01/10 13:20:39 UTC
cayenne git commit: Correct check for java version in Gradle tests
Repository: cayenne
Updated Branches:
refs/heads/master d02a88842 -> e34fc180a
Correct check for java version in Gradle tests
Project: http://git-wip-us.apache.org/repos/asf/cayenne/repo
Commit: http://git-wip-us.apache.org/repos/asf/cayenne/commit/e34fc180
Tree: http://git-wip-us.apache.org/repos/asf/cayenne/tree/e34fc180
Diff: http://git-wip-us.apache.org/repos/asf/cayenne/diff/e34fc180
Branch: refs/heads/master
Commit: e34fc180a19fcc1d96820b4d7771e2fadb2242f7
Parents: d02a888
Author: Nikita Timofeev <st...@gmail.com>
Authored: Wed Jan 10 16:20:24 2018 +0300
Committer: Nikita Timofeev <st...@gmail.com>
Committed: Wed Jan 10 16:20:24 2018 +0300
----------------------------------------------------------------------
.../apache/cayenne/tools/GradlePluginIT.java | 40 ++++++++++++++++++--
1 file changed, 37 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cayenne/blob/e34fc180/cayenne-gradle-plugin/src/test/java/org/apache/cayenne/tools/GradlePluginIT.java
----------------------------------------------------------------------
diff --git a/cayenne-gradle-plugin/src/test/java/org/apache/cayenne/tools/GradlePluginIT.java b/cayenne-gradle-plugin/src/test/java/org/apache/cayenne/tools/GradlePluginIT.java
index 49da4ce..6b9cbd7 100644
--- a/cayenne-gradle-plugin/src/test/java/org/apache/cayenne/tools/GradlePluginIT.java
+++ b/cayenne-gradle-plugin/src/test/java/org/apache/cayenne/tools/GradlePluginIT.java
@@ -26,6 +26,7 @@ import java.net.URLDecoder;
import java.util.ArrayList;
import java.util.List;
+import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
public class GradlePluginIT extends BaseTaskIT {
@@ -54,10 +55,10 @@ public class GradlePluginIT extends BaseTaskIT {
String[] versions;
// Old gradle versions will fail on Java 9
- if (System.getProperty("java.version").startsWith("9")) {
- versions = new String[]{"4.3.1", "4.3"};
- } else {
+ if (getJavaMajorVersion(System.getProperty("java.version")) < 9) {
versions = new String[]{"4.3", "4.0", "3.5", "3.3", "3.0", "2.12", "2.8"};
+ } else {
+ versions = new String[]{"4.3.1", "4.3"};
}
List<String> failedVersions = new ArrayList<>();
@@ -76,4 +77,37 @@ public class GradlePluginIT extends BaseTaskIT {
}
assertTrue(versionString.toString(), failedVersions.isEmpty());
}
+
+ @Test
+ public void testVersion() {
+ assertEquals(7, getJavaMajorVersion("1.7.0_25-b15"));
+ assertEquals(7, getJavaMajorVersion("1.7.2+123"));
+ assertEquals(8, getJavaMajorVersion("1.8.145"));
+ assertEquals(9, getJavaMajorVersion("9-ea+19"));
+ assertEquals(9, getJavaMajorVersion("9+100"));
+ assertEquals(9, getJavaMajorVersion("9"));
+ assertEquals(9, getJavaMajorVersion("9.0.1"));
+ assertEquals(10, getJavaMajorVersion("10-ea+38"));
+ }
+
+ // will fail on Java 1.1 or earlier :)
+ private static int getJavaMajorVersion(String versionString) {
+ int index = 0, prevIndex = 0, version = 0;
+ if((index = versionString.indexOf("-")) >= 0) {
+ versionString = versionString.substring(0, index);
+ }
+ if((index = versionString.indexOf("+")) >= 0) {
+ versionString = versionString.substring(0, index);
+ }
+
+ while(version < 2) {
+ index = versionString.indexOf(".", prevIndex);
+ if(index == -1) {
+ index = versionString.length();
+ }
+ version = Integer.parseInt(versionString.substring(prevIndex, index));
+ prevIndex = index + 1;
+ }
+ return version;
+ }
}