[jsemver] 76/95: Create CharType.forCharacter() method

Alexandre Viau reazem-guest at moszumanska.debian.org
Mon Feb 16 14:58:32 UTC 2015


This is an automated email from the git hooks/post-receive script.

reazem-guest pushed a commit to branch master
in repository jsemver.

commit da3ce7c65fea81b6933b288e8d525809dc54397c
Author: Zafar Khaja <zafarkhaja at gmail.com>
Date:   Tue Jan 28 12:45:15 2014 +0400

    Create CharType.forCharacter() method
---
 .../java/com/github/zafarkhaja/semver/VersionParser.java  | 15 +++++++++++++++
 .../zafarkhaja/semver/VersionParserCharTypeTest.java      | 12 ++++++++++++
 2 files changed, 27 insertions(+)

diff --git a/src/main/java/com/github/zafarkhaja/semver/VersionParser.java b/src/main/java/com/github/zafarkhaja/semver/VersionParser.java
index 25d1c5f..083e774 100644
--- a/src/main/java/com/github/zafarkhaja/semver/VersionParser.java
+++ b/src/main/java/com/github/zafarkhaja/semver/VersionParser.java
@@ -128,6 +128,21 @@ class VersionParser implements Parser<Version> {
                 return true;
             }
         };
+
+        /**
+         * Gets the type for a given character.
+         *
+         * @param chr the character to get the type for
+         * @return the type of the specified character
+         */
+        static CharType forCharacter(Character chr) {
+            for (CharType type : values()) {
+                if (type.isMatchedBy(chr)) {
+                    return type;
+                }
+            }
+            return null;
+        }
     }
 
     /**
diff --git a/src/test/java/com/github/zafarkhaja/semver/VersionParserCharTypeTest.java b/src/test/java/com/github/zafarkhaja/semver/VersionParserCharTypeTest.java
index 4eb4d0d..147819e 100644
--- a/src/test/java/com/github/zafarkhaja/semver/VersionParserCharTypeTest.java
+++ b/src/test/java/com/github/zafarkhaja/semver/VersionParserCharTypeTest.java
@@ -23,6 +23,7 @@
  */
 package com.github.zafarkhaja.semver;
 
+import com.github.zafarkhaja.semver.VersionParser.CharType;
 import org.junit.Test;
 import static com.github.zafarkhaja.semver.VersionParser.CharType.*;
 import static org.junit.Assert.*;
@@ -88,4 +89,15 @@ public class VersionParserCharTypeTest {
         assertFalse(ILLEGAL.isMatchedBy('a'));
         assertFalse(ILLEGAL.isMatchedBy('0'));
     }
+
+    @Test
+    public void shouldReturnCharTypeForCharacter() {
+        assertEquals(DIGIT,   CharType.forCharacter('1'));
+        assertEquals(LETTER,  CharType.forCharacter('a'));
+        assertEquals(DOT,     CharType.forCharacter('.'));
+        assertEquals(HYPHEN,  CharType.forCharacter('-'));
+        assertEquals(PLUS,    CharType.forCharacter('+'));
+        assertEquals(EOL,     CharType.forCharacter(null));
+        assertEquals(ILLEGAL, CharType.forCharacter('!'));
+    }
 }

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/jsemver.git



More information about the pkg-java-commits mailing list