Author: simoneg
Date: Thu Jan 14 17:30:36 2010
New Revision: 899316

URL: http://svn.apache.org/viewvc?rev=899316&view=rev
Log:
Give a meaningful message when the number is bigger than what an integer 
supports

Modified:
    
labs/magma/trunk/foundation-beans/src/main/java/org/apache/magma/conversion/string/IntegerConverter.java
    
labs/magma/trunk/foundation-beans/src/test/java/org/apache/magma/conversion/string/TestIntegerConverterFromStringInCorrect.java
    
labs/magma/trunk/foundation-beans/src/test/java/org/apache/magma/conversion/string/TestIntegerConverterToStringCorrect.java

Modified: 
labs/magma/trunk/foundation-beans/src/main/java/org/apache/magma/conversion/string/IntegerConverter.java
URL: 
http://svn.apache.org/viewvc/labs/magma/trunk/foundation-beans/src/main/java/org/apache/magma/conversion/string/IntegerConverter.java?rev=899316&r1=899315&r2=899316&view=diff
==============================================================================
--- 
labs/magma/trunk/foundation-beans/src/main/java/org/apache/magma/conversion/string/IntegerConverter.java
 (original)
+++ 
labs/magma/trunk/foundation-beans/src/main/java/org/apache/magma/conversion/string/IntegerConverter.java
 Thu Jan 14 17:30:36 2010
@@ -38,6 +38,7 @@
         * The error used when conversion is not possible.
         */
        private LocalizableString parsingError = new LocalizableString("Not a 
valid number");
+       private LocalizableString parsingNotInRange = new 
LocalizableString("Please provide a number between {0} and {1}", 
Integer.MIN_VALUE, Integer.MAX_VALUE);
        
        public IntegerConverter() {
                super(Integer.class);
@@ -49,7 +50,12 @@
                try {
                        val = Integer.parseInt(value);
                } catch (NumberFormatException e) {
-                       throw new ConversionException(parsingError);
+                       try {
+                               Long.parseLong(value);
+                               throw new 
ConversionException(parsingNotInRange);
+                       } catch (NumberFormatException e2) {
+                               throw new ConversionException(parsingError);    
                        
+                       }
                }
                return val;
        }

Modified: 
labs/magma/trunk/foundation-beans/src/test/java/org/apache/magma/conversion/string/TestIntegerConverterFromStringInCorrect.java
URL: 
http://svn.apache.org/viewvc/labs/magma/trunk/foundation-beans/src/test/java/org/apache/magma/conversion/string/TestIntegerConverterFromStringInCorrect.java?rev=899316&r1=899315&r2=899316&view=diff
==============================================================================
--- 
labs/magma/trunk/foundation-beans/src/test/java/org/apache/magma/conversion/string/TestIntegerConverterFromStringInCorrect.java
 (original)
+++ 
labs/magma/trunk/foundation-beans/src/test/java/org/apache/magma/conversion/string/TestIntegerConverterFromStringInCorrect.java
 Thu Jan 14 17:30:36 2010
@@ -41,7 +41,8 @@
        @DataPoint public static String
        set1 = "a",
        set2 = "1.2",
-       set3 = "1a";
+       set3 = "1a",
+       set4 = "99999999999";
        
        @Theory 
        public void convert(String val) {

Modified: 
labs/magma/trunk/foundation-beans/src/test/java/org/apache/magma/conversion/string/TestIntegerConverterToStringCorrect.java
URL: 
http://svn.apache.org/viewvc/labs/magma/trunk/foundation-beans/src/test/java/org/apache/magma/conversion/string/TestIntegerConverterToStringCorrect.java?rev=899316&r1=899315&r2=899316&view=diff
==============================================================================
--- 
labs/magma/trunk/foundation-beans/src/test/java/org/apache/magma/conversion/string/TestIntegerConverterToStringCorrect.java
 (original)
+++ 
labs/magma/trunk/foundation-beans/src/test/java/org/apache/magma/conversion/string/TestIntegerConverterToStringCorrect.java
 Thu Jan 14 17:30:36 2010
@@ -42,7 +42,8 @@
        set2 = {"0", 0},
        set3 = {"-1", -1},
        set4 = {Integer.toString(Integer.MAX_VALUE), Integer.MAX_VALUE},
-       set5 = {"", null};
+       set5 = {"", null},
+       set6 = {"999999999", 999999999};
        
        @Theory public void convert(Object[] vals) {
                assertEquals(converter.to((Integer)vals[1]), vals[0]);



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to