This is an automated email from the git hooks/post-receive script. reazem-guest pushed a commit to branch master in repository jsemver.
commit 98abdb4c029cd901e5559f9b640c75180eef777b Author: Zafar Khaja <[email protected]> Date: Sat Mar 30 21:42:11 2013 +0400 Create setters for Pre-release version & Build metadata --- .../java/com/github/zafarkhaja/semver/Version.java | 8 ++++++ .../com/github/zafarkhaja/semver/VersionTest.java | 30 ++++++++++++++++++++++ 2 files changed, 38 insertions(+) diff --git a/src/main/java/com/github/zafarkhaja/semver/Version.java b/src/main/java/com/github/zafarkhaja/semver/Version.java index 8859cb1..01e83f3 100644 --- a/src/main/java/com/github/zafarkhaja/semver/Version.java +++ b/src/main/java/com/github/zafarkhaja/semver/Version.java @@ -133,6 +133,14 @@ public class Version implements Comparable<Version> { ); } + public Version setPreReleaseVersion(String preRelease) { + return new Version(normal, new MetadataVersion(preRelease)); + } + + public Version setBuildMetadata(String build) { + return new Version(normal, preRelease, new MetadataVersion(build)); + } + public int getMajorVersion() { return normal.getMajor(); } diff --git a/src/test/java/com/github/zafarkhaja/semver/VersionTest.java b/src/test/java/com/github/zafarkhaja/semver/VersionTest.java index b13d7e7..e90a974 100644 --- a/src/test/java/com/github/zafarkhaja/semver/VersionTest.java +++ b/src/test/java/com/github/zafarkhaja/semver/VersionTest.java @@ -204,14 +204,44 @@ public class VersionTest { } @Test + public void shouldProvideSetPreReleaseVersionMethod() { + Version v1 = Version.valueOf("1.0.0"); + Version v2 = v1.setPreReleaseVersion("alpha"); + assertEquals("1.0.0-alpha", v2.toString()); + } + + @Test + public void shouldDropBuildMetadataWhenSettingPreReleaseVersion() { + Version v1 = Version.valueOf("1.0.0-alpha+build"); + Version v2 = v1.setPreReleaseVersion("beta"); + assertEquals("1.0.0-beta", v2.toString()); + } + + @Test + public void shouldProvideSetBuildMetadataMethod() { + Version v1 = Version.valueOf("1.0.0"); + Version v2 = v1.setBuildMetadata("build"); + assertEquals("1.0.0+build", v2.toString()); + } + + @Test public void shouldBeImmutable() { Version version = Version.valueOf("1.2.3"); + Version incementedMajor = version.incrementMajorVersion(); assertNotSame(version, incementedMajor); + Version incementedMinor = version.incrementMinorVersion(); assertNotSame(version, incementedMinor); + Version incementedPatch = version.incrementPatchVersion(); assertNotSame(version, incementedPatch); + + Version preReleaseSet = version.setPreReleaseVersion("alpha"); + assertNotSame(version, preReleaseSet); + + Version buildSet = version.setBuildMetadata("build"); + assertNotSame(version, buildSet); } } -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/jsemver.git _______________________________________________ pkg-java-commits mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-commits

