public static void assertIllegalArgumentException(String version) {
   try {
     ReleaseVersion.fromString(version);
     fail("expected IllegalArgumentException");
   } catch (IllegalArgumentException e) {
     // expected
   }
 }
 @Test
 public void testVersionToString() {
   assertEquals("1.x", ReleaseVersion.fromString("1.x").toString());
   assertEquals("1.1.x", ReleaseVersion.fromString("1.1.x").toString());
   assertEquals("1.1.1.x", ReleaseVersion.fromString("1.1.1.x").toString());
   assertEquals("1.1.1.1", ReleaseVersion.fromString("1.1.1.1").toString());
   assertEquals("1.1.1.1", ReleaseVersion.fromString("1.1.1.1.x").toString());
   assertEquals("1.1.1.1", ReleaseVersion.fromString("1.1.1.1.x.x").toString());
   assertEquals("1.1.1.1", ReleaseVersion.fromString("1.1.1.1.x.x.itsallgood").toString());
   assertEquals(
       "32767.65535.65535.65535", ReleaseVersion.fromString("32767.65535.65535.65535").toString());
 }
  @Test
  public void testFromStringSafely() {

    final ReleaseVersion expectedVersion = ReleaseVersion.fromString("1.0.0.0");
    assertEquals(expectedVersion, ReleaseVersion.fromStringSafely("1.0.rc1", null));
    assertEquals(expectedVersion, ReleaseVersion.fromStringSafely("1.-206.x", null));
    assertEquals(expectedVersion, ReleaseVersion.fromStringSafely("1.0.0.65536", null));

    final ReleaseVersion defaultVersion = ReleaseVersion.newBuilder().build();
    assertEquals(defaultVersion, ReleaseVersion.fromStringSafely("32768.x", defaultVersion));
    assertEquals(defaultVersion, ReleaseVersion.fromStringSafely("x", defaultVersion));
    assertEquals(defaultVersion, ReleaseVersion.fromStringSafely("", defaultVersion));
  }
 public static void assertVersionLessThan(final String lhs, final String rhs) {
   assertEquals(-1, ReleaseVersion.fromString(lhs).compareTo(ReleaseVersion.fromString(rhs)));
 }