Add invertible toString() to Version

This commit is contained in:
Dave Syer
2015-02-26 15:56:51 +00:00
parent d93a390af7
commit 98609f39b2
2 changed files with 23 additions and 1 deletions

View File

@@ -36,7 +36,6 @@ import org.springframework.util.Assert
* @author Stephane Nicoll
* @since 1.0
*/
@ToString
@EqualsAndHashCode
class Version implements Comparable<Version> {
@@ -48,6 +47,11 @@ class Version implements Comparable<Version> {
Integer minor
Integer patch
Qualifier qualifier
@Override
public String toString() {
"${major}.${minor}.${patch}" + (qualifier?".${qualifier.qualifier}${qualifier.version?:''}" : '')
}
/**
* Parse the string representation of a {@link Version}. Throws an

View File

@@ -34,6 +34,24 @@ class VersionTests {
@Rule
public final ExpectedException thrown = ExpectedException.none()
@Test
void noQualifierString() {
def version = parse('1.2.0')
assertThat(version.toString(), equalTo('1.2.0'))
}
@Test
void withQualifierString() {
def version = parse('1.2.0.RELEASE')
assertThat(version.toString(), equalTo('1.2.0.RELEASE'))
}
@Test
void withQualifierAndVersionString() {
def version = parse('1.2.0.RC2')
assertThat(version.toString(), equalTo('1.2.0.RC2'))
}
@Test
void equalNoQualifier() {
def first = parse('1.2.0')