DatabaseInfo implements Comparable<DatabaseInfo>, Serializable { public boolean isAssignable(DatabaseInfo databaseInfo) { return isAssignable(databaseInfo, start()).result() <= 0; } DatabaseInfo();  DatabaseInfo(String productName);  DatabaseInfo(String productName, String productVersion);  DatabaseInfo(String productName, String productVersion, Integer majorVersion);  DatabaseInfo(String productName, String productVersion, Integer majorVersion, Integer minorVersion);  DatabaseInfo(DatabaseMetaData metaData); String getProductName(); void setProductName(String productName); String getProductVersion(); void setProductVersion(String productVersion); Integer getMajorVersion(); void setMajorVersion(Integer majorVersion); Integer getMinorVersion(); void setMinorVersion(Integer minorVersion); boolean isAssignable(DatabaseInfo databaseInfo); @Override int compareTo(DatabaseInfo databaseInfo); @Override boolean equals(Object o); @Override int hashCode(); @Override String toString();  }
@Test(dataProvider = "isAssignable") public void testIsAssignable(DatabaseInfo databaseInfoBase, DatabaseInfo databaseInfo, boolean assignable) { assertEquals(databaseInfoBase.isAssignable(databaseInfo), assignable, format("%s.isAssignable(%s)", databaseInfoBase, databaseInfo)); }