return new VersionRange(parseVersion(vlo, range), isLowInclusive, parseVersion(vhi, range), isHighInclusive); } else if (idx == -1) { return new VersionRange(VersionRange.parseVersion(range.trim(), range), true, null, false); } else {
public VersionRange(Version low, boolean isLowInclusive, Version high, boolean isHighInclusive) { Assertions.nullCheck(low, "floorVersion"); floorVersion = low; isFloorInclusive = isLowInclusive; ceilingVersion = high; isCeilingInclusive = isHighInclusive; empty = isEmpty0(); }
@Test public void testIsExact() throws Exception { assertTrue(VersionRange.parse("1.1.0.0").isExact()); assertTrue(VersionRange.parse(" [ 1 , 1 ] ").isExact()); assertTrue(VersionRange.parse("[ 1.1 , 1.1 ]").isExact()); assertTrue(VersionRange.parse(" [1.1.1 , 1.1.1] ").isExact()); assertTrue(VersionRange.parse("[1.1.0.0,1.1.0.0]").isExact()); assertTrue(VersionRange.parse("(1.1.0.0,1.1.0.2)").isExact()); }
@Test public void testIsInRange() throws Exception { Version reference0 = new Version(1, 1, 0, 0); Version reference1 = new Version(1, 1, 0, 1); Version reference2 = new Version(1, 1, 0, 2); Version reference3 = new Version(1, 1, 0, 3); Version reference4 = new Version(1, 1, 0, 4); VersionRange range = VersionRange.parse("[1.1.0.1,1.1.0.3)"); assertFalse(range.isInRange(reference0)); assertTrue(range.isInRange(reference1)); assertTrue(range.isInRange(reference2)); assertFalse(range.isInRange(reference3)); assertFalse(range.isInRange(reference4)); }
@Test public void testValidSyntax() throws Exception { try { VersionRange.parse("(1.1.0.0)"); fail("Invalid syntax not failed"); } catch (IllegalArgumentException e) { VersionRange.parse("1.1.0.0,1.1)]"); fail("Invalid syntax not failed"); } catch (IllegalArgumentException e) { VersionRange.parse("(1.1.0.0-1.1)"); fail("Invalid syntax not failed"); } catch (IllegalArgumentException e) { VersionRange.parse("1.1.0.0,1.1"); fail("Invalid syntax not failed"); } catch (IllegalArgumentException e) { VersionRange.parse("( , 1.1)"); fail("Invalid syntax not failed"); } catch (IllegalArgumentException e) {
return new VersionRange(parseVersion(vlo, range), isLowInclusive, parseVersion(vhi, range), isHighInclusive); } else if (idx == -1) { return new VersionRange(VersionRange.parseVersion(range.trim(), range), true, null, false); } else {
public VersionRange(Version low, boolean isLowInclusive, Version high, boolean isHighInclusive) { Assertions.nullCheck(low, "floorVersion"); floorVersion = low; isFloorInclusive = isLowInclusive; ceilingVersion = high; isCeilingInclusive = isHighInclusive; empty = isEmpty0(); }