package sagan.projects; import org.junit.Test; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.equalTo; public class ProjectVersionDisplayNameTests { @Test public void getDisplayNameForGeneralAvailability() { assertVersionDisplayName("1.2.3.RELEASE", "1.2.3"); } @Test public void getDisplayNameForSnapshotRelease() { assertVersionDisplayName("1.0.0.BUILD-SNAPSHOT", "1.0.0"); assertVersionDisplayName("1.0.0.CI-SNAPSHOT", "1.0.0"); assertVersionDisplayName("1.0.0.SNAPSHOT", "1.0.0"); } @Test public void getDisplayNameForMilestoneReleaseVersion() { assertVersionDisplayName("1.2.3.M1", "1.2.3 M1"); } @Test public void getDisplayNameForReleaseCandidateVersion() { assertVersionDisplayName("1.2.3.RC1", "1.2.3 RC1"); } @Test public void getDisplayNameForReleaseTrainVersion() { assertVersionDisplayName("Angel.RELEASE", "Angel"); } @Test public void getDisplayNameForReleaseTrainServiceRelease() { assertVersionDisplayName("Angel.SR1", "Angel SR1"); } @Test public void getDisplayNameForReleaseTrainSnapshot() { assertVersionDisplayName("Angel.BUILD-SNAPSHOT", "Angel"); } private void assertVersionDisplayName(String versionName, String expectedDisplayName) { ProjectRelease version = new ProjectReleaseBuilder().versionName(versionName).build(); assertThat(version.getVersionDisplayName(), equalTo(expectedDisplayName)); } }