mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
Platform: build numbers: .* is treated identically as .SNAPSHOT, '2016' is parsed as '2016.0'
This commit is contained in:
@@ -88,6 +88,10 @@ public class PluginManagerTest {
|
||||
assertCompatible("2016.2.1", "2016.2", "2016.2.*");
|
||||
|
||||
assertCompatible("2016.2.SNAPSHOT", null, "2016.2.*");
|
||||
|
||||
assertCompatible("2016.2", "2016", null);
|
||||
assertCompatible("2015", null, "2016");
|
||||
assertIncompatible("2016.1", null, "2016");
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -38,8 +38,7 @@ public class BuildNumber implements Comparable<BuildNumber> {
|
||||
private static final String FALLBACK_VERSION = "2999.1.SNAPSHOT";
|
||||
|
||||
public static final int SNAPSHOT_VALUE = Integer.MAX_VALUE;
|
||||
public static final int STAR_VALUE = -Integer.MAX_VALUE;
|
||||
|
||||
|
||||
private static class Holder {
|
||||
private static final BuildNumber CURRENT_VERSION = fromFile();
|
||||
}
|
||||
@@ -82,11 +81,11 @@ public class BuildNumber implements Comparable<BuildNumber> {
|
||||
}
|
||||
|
||||
for (int each : myComponents) {
|
||||
if (each != SNAPSHOT_VALUE && each != STAR_VALUE) {
|
||||
if (each != SNAPSHOT_VALUE) {
|
||||
builder.append(each);
|
||||
}
|
||||
else if (withSnapshotMarker) {
|
||||
builder.append(each == SNAPSHOT_VALUE ? SNAPSHOT : STAR);
|
||||
builder.append(SNAPSHOT);
|
||||
}
|
||||
builder.append('.');
|
||||
}
|
||||
@@ -168,6 +167,10 @@ public class BuildNumber implements Comparable<BuildNumber> {
|
||||
// it's probably a baseline, not a build number
|
||||
return new BuildNumber(productCode, Format.BRANCH_BASED, buildNumber, 0);
|
||||
}
|
||||
|
||||
if (buildNumber >= 2016 && buildNumber <= 2999) {
|
||||
return new BuildNumber(productCode, Format.YEAR_BASED, buildNumber, 0);
|
||||
}
|
||||
|
||||
baselineVersion = getBaseLineForHistoricBuilds(buildNumber);
|
||||
return new BuildNumber(productCode, Format.HISTORIC, baselineVersion, buildNumber);
|
||||
@@ -179,7 +182,7 @@ public class BuildNumber implements Comparable<BuildNumber> {
|
||||
return SNAPSHOT_VALUE;
|
||||
}
|
||||
if (STAR.equals(code)) {
|
||||
return STAR_VALUE;
|
||||
return SNAPSHOT_VALUE;
|
||||
}
|
||||
|
||||
try {
|
||||
@@ -219,9 +222,9 @@ public class BuildNumber implements Comparable<BuildNumber> {
|
||||
int[] c2 = o.myComponents;
|
||||
|
||||
for (int i = 0; i < Math.min(c1.length, c2.length); i++) {
|
||||
if (c1[i] == c2[i] && (c1[i] == SNAPSHOT_VALUE || c1[i] == STAR_VALUE)) return 0;
|
||||
if (c1[i] == STAR_VALUE) return 1;
|
||||
if (c2[i] == STAR_VALUE) return -1;
|
||||
if (c1[i] == c2[i] && c1[i] == SNAPSHOT_VALUE) return 0;
|
||||
if (c1[i] == SNAPSHOT_VALUE) return 1;
|
||||
if (c2[i] == SNAPSHOT_VALUE) return -1;
|
||||
|
||||
int result = c1[i] - c2[i];
|
||||
if (result != 0) return result;
|
||||
|
||||
@@ -28,35 +28,42 @@ public class BuildNumberTest {
|
||||
|
||||
@Test
|
||||
public void branchBasedBuild() throws Exception {
|
||||
assertParsed(BuildNumber.fromString("145"), 145, 0, "145.0");
|
||||
assertParsed(BuildNumber.fromString("145.1"), 145, 1, "145.1");
|
||||
assertParsed(BuildNumber.fromString("145.1.2"), 145, 1, "145.1.2");
|
||||
assertParsed(BuildNumber.fromString("IU-145.1.2"), 145, 1, "IU-145.1.2");
|
||||
assertParsed(BuildNumber.fromString("IU-145.SNAPSHOT"), 145, BuildNumber.SNAPSHOT_VALUE, "IU-145.SNAPSHOT");
|
||||
assertParsed(BuildNumber.fromString("IU-145.1.SNAPSHOT"), 145, 1, "IU-145.1.SNAPSHOT");
|
||||
assertParsed(BuildNumber.fromString("145"), 145, 0, BuildNumber.Format.BRANCH_BASED, "145.0");
|
||||
assertParsed(BuildNumber.fromString("145.1"), 145, 1, BuildNumber.Format.BRANCH_BASED, "145.1");
|
||||
assertParsed(BuildNumber.fromString("145.1.2"), 145, 1, BuildNumber.Format.BRANCH_BASED, "145.1.2");
|
||||
assertParsed(BuildNumber.fromString("IU-145.1.2"), 145, 1, BuildNumber.Format.BRANCH_BASED, "IU-145.1.2");
|
||||
assertParsed(BuildNumber.fromString("IU-145.SNAPSHOT"), 145, BuildNumber.SNAPSHOT_VALUE, BuildNumber.Format.BRANCH_BASED, "IU-145.SNAPSHOT");
|
||||
assertParsed(BuildNumber.fromString("IU-145.1.SNAPSHOT"), 145, 1, BuildNumber.Format.BRANCH_BASED, "IU-145.1.SNAPSHOT");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void yearBasedBuild() throws Exception {
|
||||
assertParsed(BuildNumber.fromString("2016.1.2"), 20161, -1, "2016.1.2");
|
||||
assertParsed(BuildNumber.fromString("IU-2016.1.2"), 20161, -1, "IU-2016.1.2");
|
||||
assertParsed(BuildNumber.fromString("2016.1.2.3"), 20161, -1, "2016.1.2.3");
|
||||
assertParsed(BuildNumber.fromString("IU-2016.1.2.3"), 20161, -1, "IU-2016.1.2.3");
|
||||
assertParsed(BuildNumber.fromString("2016.1.2.3.4"), 20161, -1, "2016.1.2.3.4");
|
||||
assertParsed(BuildNumber.fromString("IU-2016.1.2.3.4"), 20161, -1, "IU-2016.1.2.3.4");
|
||||
assertParsed(BuildNumber.fromString("2016"), 20160, -1, BuildNumber.Format.YEAR_BASED, "2016.0");
|
||||
assertParsed(BuildNumber.fromString("2016.1"), 20161, -1, BuildNumber.Format.YEAR_BASED, "2016.1");
|
||||
assertParsed(BuildNumber.fromString("2016.1.2"), 20161, -1, BuildNumber.Format.YEAR_BASED, "2016.1.2");
|
||||
assertParsed(BuildNumber.fromString("IU-2016.1.2"), 20161, -1, BuildNumber.Format.YEAR_BASED, "IU-2016.1.2");
|
||||
assertParsed(BuildNumber.fromString("2016.1.2.3"), 20161, -1, BuildNumber.Format.YEAR_BASED, "2016.1.2.3");
|
||||
assertParsed(BuildNumber.fromString("IU-2016.1.2.3"), 20161, -1, BuildNumber.Format.YEAR_BASED, "IU-2016.1.2.3");
|
||||
assertParsed(BuildNumber.fromString("2016.1.2.3.4"), 20161, -1, BuildNumber.Format.YEAR_BASED, "2016.1.2.3.4");
|
||||
assertParsed(BuildNumber.fromString("IU-2016.1.2.3.4"), 20161, -1, BuildNumber.Format.YEAR_BASED, "IU-2016.1.2.3.4");
|
||||
|
||||
assertParsed(BuildNumber.fromString("IU-2016.1.SNAPSHOT"), 20161, -1, "IU-2016.1.SNAPSHOT");
|
||||
assertParsed(BuildNumber.fromString("IU-2016.1.SNAPSHOT.1"), 20161, -1, "IU-2016.1.SNAPSHOT.1");
|
||||
assertParsed(BuildNumber.fromString("IU-2016.1.SNAPSHOT"), 20161, -1, BuildNumber.Format.YEAR_BASED, "IU-2016.1.SNAPSHOT");
|
||||
assertParsed(BuildNumber.fromString("IU-2016.1.SNAPSHOT.1"), 20161, -1, BuildNumber.Format.YEAR_BASED, "IU-2016.1.SNAPSHOT.1");
|
||||
}
|
||||
|
||||
private static void assertParsed(BuildNumber n, int expectedBaseline, int expectedBuildNumber, String asString) {
|
||||
private static void assertParsed(BuildNumber n, int expectedBaseline, int expectedBuildNumber, BuildNumber.Format based, String asString) {
|
||||
assertEquals(expectedBaseline, n.getBaselineVersion());
|
||||
assertEquals(expectedBuildNumber, n.getBuildNumber());
|
||||
assertEquals(asString, n.asString());
|
||||
assertEquals(based, n.getFormat());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void comparingVersion() throws Exception {
|
||||
assertTrue(BuildNumber.fromString("2016").compareTo(BuildNumber.fromString("2016.1")) < 0);
|
||||
assertTrue(BuildNumber.fromString("2015.1").compareTo(BuildNumber.fromString("2016")) < 0);
|
||||
assertTrue(BuildNumber.fromString("2016.0").compareTo(BuildNumber.fromString("2016.0")) == 0);
|
||||
|
||||
assertTrue(BuildNumber.fromString("2016.1").compareTo(BuildNumber.fromString("2016.1")) == 0);
|
||||
assertTrue(BuildNumber.fromString("2016.1.1").compareTo(BuildNumber.fromString("2016.1.1")) == 0);
|
||||
assertTrue(BuildNumber.fromString("2016.1.1.1").compareTo(BuildNumber.fromString("2016.1.1.1")) == 0);
|
||||
@@ -84,11 +91,11 @@ public class BuildNumberTest {
|
||||
assertTrue(BuildNumber.fromString("145.1").compareTo(BuildNumber.fromString("146.*")) < 0);
|
||||
assertTrue(BuildNumber.fromString("145.1").compareTo(BuildNumber.fromString("144.*")) > 0);
|
||||
|
||||
assertTrue(BuildNumber.fromString("145.SNAPSHOT").compareTo(BuildNumber.fromString("145.*")) < 0);
|
||||
assertTrue(BuildNumber.fromString("145.*").compareTo(BuildNumber.fromString("145.SNAPSHOT")) > 0);
|
||||
assertTrue(BuildNumber.fromString("145.SNAPSHOT").compareTo(BuildNumber.fromString("145.*")) == 0);
|
||||
assertTrue(BuildNumber.fromString("145.*").compareTo(BuildNumber.fromString("145.SNAPSHOT")) == 0);
|
||||
|
||||
assertTrue(BuildNumber.fromString("2016.1.SNAPSHOT").compareTo(BuildNumber.fromString("2016.1.*")) < 0);
|
||||
assertTrue(BuildNumber.fromString("2016.1.*").compareTo(BuildNumber.fromString("2016.1.SNAPSHOT")) > 0);
|
||||
assertTrue(BuildNumber.fromString("2016.1.SNAPSHOT").compareTo(BuildNumber.fromString("2016.1.*")) == 0);
|
||||
assertTrue(BuildNumber.fromString("2016.1.*").compareTo(BuildNumber.fromString("2016.1.SNAPSHOT")) == 0);
|
||||
|
||||
assertTrue(BuildNumber.fromString("2016.1.SNAPSHOT").compareTo(BuildNumber.fromString("2016.*")) < 0);
|
||||
assertTrue(BuildNumber.fromString("2016.*").compareTo(BuildNumber.fromString("2016.1.SNAPSHOT")) > 0);
|
||||
@@ -103,7 +110,7 @@ public class BuildNumberTest {
|
||||
assertTrue(BuildNumber.fromString("__BUILD_NUMBER__").isSnapshot());
|
||||
assertTrue(BuildNumber.fromString("IU-90.SNAPSHOT").isSnapshot());
|
||||
|
||||
assertFalse(BuildNumber.fromString("IC-90.*").isSnapshot());
|
||||
assertTrue(BuildNumber.fromString("IC-90.*").isSnapshot());
|
||||
assertFalse(BuildNumber.fromString("90.9999999").isSnapshot());
|
||||
|
||||
assertFalse(BuildNumber.fromString("2016.1").isSnapshot());
|
||||
@@ -151,7 +158,7 @@ public class BuildNumberTest {
|
||||
|
||||
@Test
|
||||
public void fallbackVersion() throws Exception {
|
||||
assertParsed(BuildNumber.fallback(), 29991, -1, "2999.1.SNAPSHOT");
|
||||
assertParsed(BuildNumber.fallback(), 29991, -1, BuildNumber.Format.YEAR_BASED, "2999.1.SNAPSHOT");
|
||||
assertEquals(BuildNumber.Format.YEAR_BASED, BuildNumber.fallback().getFormat());
|
||||
assertTrue(BuildNumber.fallback().isSnapshot());
|
||||
|
||||
|
||||
Reference in New Issue
Block a user