package test;
import aQute.bnd.version.Version;
import aQute.bnd.version.VersionRange;
import junit.framework.TestCase;
public class VersionTest extends TestCase {
public void testSimple() {
compare("[0,1)", "[0.5,0.8]", "[0.5.0,0.8.0]");
compare("[0,1)", "[0.5,0.8)", "[0.5.0,0.8.0)");
compare("[0,1)", "[0.5,2]", "[0.5.0,1.0.0)");
}
public void testSnapshot() {
assertFalse(new Version(1, 2, 3, null).isSnapshot());
assertFalse(new Version(1, 2, 3, "").isSnapshot());
assertFalse(new Version(1, 2, 3, "SNAPSHOTX").isSnapshot());
assertFalse(new Version(1, 2, 3, "-SNAPSHOTX").isSnapshot());
assertFalse(new Version(1, 2, 3, "snapshot").isSnapshot());
assertFalse(new Version(1, 2, 3, "-snapshot").isSnapshot());
assertFalse(new Version(1, 2, 3, "foo").isSnapshot());
assertFalse(new Version(1, 2, 3, "snapshot-").isSnapshot());
assertTrue(new Version(1, 2, 3, "SNAPSHOT").isSnapshot());
assertTrue(new Version(1, 2, 3, "-SNAPSHOT").isSnapshot());
assertTrue(new Version(1, 2, 3, "FOO-SNAPSHOT").isSnapshot());
assertTrue(new Version(1, 2, 3, "20124121212-SNAPSHOT").isSnapshot());
assertTrue(new Version("1.2.3.20124121212-SNAPSHOT").isSnapshot());
assertTrue(new Version("1.2.3.-SNAPSHOT").isSnapshot());
assertTrue(new Version("1.2.3.SNAPSHOT").isSnapshot());
}
void compare(String a, String b, String result) {
assertEquals(result, new VersionRange(a).intersect(new VersionRange(b)).toString());
}
}