28package com.jogamp.opengl.test.junit.jogl.acore;
31import java.io.IOException;
32import java.net.URISyntaxException;
33import java.util.HashSet;
36import org.junit.FixMethodOrder;
38import org.junit.runners.MethodSorters;
40import com.jogamp.common.util.JogampVersion;
41import com.jogamp.common.util.VersionNumberString;
42import com.jogamp.junit.util.SingletonJunitCase;
43import com.jogamp.junit.util.VersionSemanticsUtil;
44import com.jogamp.junit.util.VersionSemanticsUtil.CompatibilityType;
45import com.jogamp.opengl.JoglVersion;
47@FixMethodOrder(MethodSorters.NAME_ASCENDING)
49 static final String jarFile =
"jogl-all.jar";
52 static final VersionNumberString curVersionNumber =
new VersionNumberString(curVersion.getImplementationVersion());
54 static final String excludesDefault;
55 static final String excludesStereoPackageAndAppletUtils;
57 excludesDefault =
"jogamp";
58 excludesStereoPackageAndAppletUtils = excludesDefault+
";com.jogamp.opengl.util.stereo;com.jogamp.newt.util.applet";
64 testVersions(CompatibilityType.NON_BACKWARD_COMPATIBLE,
"2.1.2",
"2.1.3", excludesDefault);
69 testVersions(CompatibilityType.NON_BACKWARD_COMPATIBLE,
"2.1.3",
"2.1.4", excludesDefault);
74 testVersions(CompatibilityType.NON_BACKWARD_COMPATIBLE,
"2.1.4",
"2.1.5", excludesDefault);
79 testVersions(CompatibilityType.NON_BACKWARD_COMPATIBLE,
"2.1.5",
"2.2.0", excludesDefault);
84 testVersions(CompatibilityType.BACKWARD_COMPATIBLE_SOURCE,
"2.2.0",
"2.2.1", excludesDefault);
89 testVersions(CompatibilityType.NON_BACKWARD_COMPATIBLE,
"2.2.1",
"2.3.0", excludesDefault);
92 void testVersions(
final CompatibilityType expectedCompatibilityType,
93 final String v1,
final String v2,
final String excludes)
94 throws IllegalArgumentException, IOException, URISyntaxException {
95 final VersionNumberString preVersionNumber =
new VersionNumberString(v1);
96 final File previousJar =
new File(
"lib/v"+v1+
"/"+jarFile);
98 final VersionNumberString curVersionNumber =
new VersionNumberString(v2);
99 final File currentJar =
new File(
"lib/v"+v2+
"/"+jarFile);
101 VersionSemanticsUtil.testVersion2(expectedCompatibilityType,
102 previousJar, preVersionNumber,
103 currentJar, curVersionNumber, excludes,
true);
108 final CompatibilityType expectedCompatibilityType = CompatibilityType.NON_BACKWARD_COMPATIBLE;
110 testVersions(expectedCompatibilityType,
"2.3.0",
"2.3.2", excludesStereoPackageAndAppletUtils);
115 final CompatibilityType expectedCompatibilityType = CompatibilityType.NON_BACKWARD_COMPATIBLE;
119 final VersionNumberString preVersionNumber =
new VersionNumberString(
"2.3.2");
120 final File previousJar =
new File(
"lib/v"+preVersionNumber.getVersionString()+
"/"+jarFile);
124 VersionSemanticsUtil.testVersion2(expectedCompatibilityType,
125 previousJar, preVersionNumber,
126 curVersion.getClass(), currentCL, curVersionNumber,
127 excludesDefault,
true);
130 public static void main(
final String args[])
throws IOException {
132 org.junit.runner.JUnitCore.
main(tstname);
static JoglVersion getInstance()
void testVersionV232V24x()
void testVersionV213V214()
void testVersionV220V221()
void testVersionV221V230()
void testVersionV215V220()
void testVersionV212V213()
void testVersionV230V232()
void testVersionV214V215()
static void main(final String args[])