You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by mg...@apache.org on 2010/12/02 12:56:01 UTC

svn commit: r1041340 - in /wicket/trunk: wicket-util/src/main/java/org/apache/wicket/util/lang/Bytes.java wicket/src/test/java/org/apache/wicket/util/lang/BytesTest.java

Author: mgrigorov
Date: Thu Dec  2 11:56:00 2010
New Revision: 1041340

URL: http://svn.apache.org/viewvc?rev=1041340&view=rev
Log:
Remove support for negative values in Bytes

Modified:
    wicket/trunk/wicket-util/src/main/java/org/apache/wicket/util/lang/Bytes.java
    wicket/trunk/wicket/src/test/java/org/apache/wicket/util/lang/BytesTest.java

Modified: wicket/trunk/wicket-util/src/main/java/org/apache/wicket/util/lang/Bytes.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-util/src/main/java/org/apache/wicket/util/lang/Bytes.java?rev=1041340&r1=1041339&r2=1041340&view=diff
==============================================================================
--- wicket/trunk/wicket-util/src/main/java/org/apache/wicket/util/lang/Bytes.java (original)
+++ wicket/trunk/wicket-util/src/main/java/org/apache/wicket/util/lang/Bytes.java Thu Dec  2 11:56:00 2010
@@ -105,6 +105,11 @@ public final class Bytes extends LongVal
 	private Bytes(final long bytes)
 	{
 		super(bytes);
+
+		if (bytes < 0)
+		{
+			throw new IllegalArgumentException("'bytes' cannot be negative.");
+		}
 	}
 
 	/**
@@ -379,34 +384,27 @@ public final class Bytes extends LongVal
 	 */
 	public String toString(final Locale locale)
 	{
-		if (value >= 0)
+		if (terabytes() >= 1.0)
 		{
-			if (terabytes() >= 1.0)
-			{
-				return unitString(terabytes(), "T", locale);
-			}
-
-			if (gigabytes() >= 1.0)
-			{
-				return unitString(gigabytes(), "G", locale);
-			}
-
-			if (megabytes() >= 1.0)
-			{
-				return unitString(megabytes(), "M", locale);
-			}
+			return unitString(terabytes(), "T", locale);
+		}
 
-			if (kilobytes() >= 1.0)
-			{
-				return unitString(kilobytes(), "K", locale);
-			}
+		if (gigabytes() >= 1.0)
+		{
+			return unitString(gigabytes(), "G", locale);
+		}
 
-			return Long.toString(value) + " bytes";
+		if (megabytes() >= 1.0)
+		{
+			return unitString(megabytes(), "M", locale);
 		}
-		else
+
+		if (kilobytes() >= 1.0)
 		{
-			return "N/A";
+			return unitString(kilobytes(), "K", locale);
 		}
+
+		return Long.toString(value) + " bytes";
 	}
 
 	/**

Modified: wicket/trunk/wicket/src/test/java/org/apache/wicket/util/lang/BytesTest.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/test/java/org/apache/wicket/util/lang/BytesTest.java?rev=1041340&r1=1041339&r2=1041340&view=diff
==============================================================================
--- wicket/trunk/wicket/src/test/java/org/apache/wicket/util/lang/BytesTest.java (original)
+++ wicket/trunk/wicket/src/test/java/org/apache/wicket/util/lang/BytesTest.java Thu Dec  2 11:56:00 2010
@@ -143,8 +143,23 @@ public class BytesTest extends TestCase
 		assertEquals("1G", Bytes.bytes(1024 * 1024 * 1024L).toString());
 		assertEquals("1T", Bytes.bytes(1024 * 1024 * 1024 * 1024L).toString());
 		assertEquals("1.5K", Bytes.bytes(1024 * 1.5).toString());
-		assertEquals("N/A", Bytes.bytes(-1).toString());
 
 		assertEquals("1 bytes", Bytes.bytes(1).toString(Locale.GERMAN));
 	}
+
+	/**
+	 * Negative values are not supported
+	 */
+	public void testNegative()
+	{
+		try
+		{
+			Bytes.bytes(-1);
+			fail("Bytes should not support negative values!");
+		}
+		catch (IllegalArgumentException iax)
+		{
+			;
+		}
+	}
 }