Author: joehni
Date: Mon Jul  4 22:49:33 2011
New Revision: 1142841

URL: http://svn.apache.org/viewvc?rev=1142841&view=rev
Log:
Enrich ClasUtils tests for inner types.

Modified:
    
commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/ClassUtilsTest.java

Modified: 
commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/ClassUtilsTest.java
URL: 
http://svn.apache.org/viewvc/commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/ClassUtilsTest.java?rev=1142841&r1=1142840&r2=1142841&view=diff
==============================================================================
--- 
commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/ClassUtilsTest.java
 (original)
+++ 
commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/ClassUtilsTest.java
 Mon Jul  4 22:49:33 2011
@@ -62,6 +62,12 @@ public class ClassUtilsTest extends Test
         assertEquals("ClassUtilsTest.Inner", ClassUtils.getShortClassName(new 
Inner(), "<null>"));
         assertEquals("String", ClassUtils.getShortClassName("hello", 
"<null>"));
         assertEquals("<null>", ClassUtils.getShortClassName(null, "<null>"));
+
+        // Inner types
+        class Named extends Object {};
+        assertEquals("ClassUtilsTest.1", ClassUtils.getShortClassName(new 
Object(){}, "<null>"));
+        assertEquals("ClassUtilsTest.1Named", ClassUtils.getShortClassName(new 
Named(), "<null>"));
+        assertEquals("ClassUtilsTest.Inner", ClassUtils.getShortClassName(new 
Inner(), "<null>"));
     }
 
     public void test_getShortClassName_Class() {
@@ -97,6 +103,12 @@ public class ClassUtilsTest extends Test
         assertEquals("String[][]", 
ClassUtils.getShortClassName(String[][].class));
         assertEquals("String[][][]", 
ClassUtils.getShortClassName(String[][][].class));
         assertEquals("String[][][][]", 
ClassUtils.getShortClassName(String[][][][].class));
+        
+        // Inner types
+        class Named extends Object {};
+        assertEquals("ClassUtilsTest.2", ClassUtils.getShortClassName(new 
Object(){}.getClass()));
+        assertEquals("ClassUtilsTest.2Named", 
ClassUtils.getShortClassName(Named.class));
+        assertEquals("ClassUtilsTest.Inner", 
ClassUtils.getShortClassName(Inner.class));
     }
 
 
@@ -141,6 +153,11 @@ public class ClassUtilsTest extends Test
         assertEquals("String[][]", ClassUtils.getSimpleName(String[][].class));
         assertEquals("String[][][]", 
ClassUtils.getSimpleName(String[][][].class));
         assertEquals("String[][][][]", 
ClassUtils.getSimpleName(String[][][][].class));
+        
+        // On-the-fly types
+        class Named extends Object {};
+        assertEquals("", ClassUtils.getSimpleName(new Object(){}.getClass()));
+        assertEquals("Named", ClassUtils.getSimpleName(Named.class));
     }
 
     public void test_getSimpleName_Object() {
@@ -179,6 +196,11 @@ public class ClassUtilsTest extends Test
         assertEquals("java.lang", ClassUtils.getPackageName(String[][].class));
         assertEquals("java.lang", 
ClassUtils.getPackageName(String[][][].class));
         assertEquals("java.lang", 
ClassUtils.getPackageName(String[][][][].class));
+        
+        // On-the-fly types
+        class Named extends Object {};
+        assertEquals("org.apache.commons.lang3", ClassUtils.getPackageName(new 
Object(){}.getClass()));
+        assertEquals("org.apache.commons.lang3", 
ClassUtils.getPackageName(Named.class));
     }
 
     public void test_getPackageName_String() {
@@ -243,7 +265,7 @@ public class ClassUtilsTest extends Test
         assertEquals(null, result.get(1));
         assertEquals(Object.class, result.get(2));
 
-        @SuppressWarnings("unchecked") // test what happens when non-gneric 
code adds wrong type of element
+        @SuppressWarnings("unchecked") // test what happens when non-generic 
code adds wrong type of element
         List<Object> olist = (List<Object>)(List<?>)list;
         olist.add(new Object());
         try {
@@ -267,7 +289,7 @@ public class ClassUtilsTest extends Test
         assertEquals(null, result.get(1));
         assertEquals("java.lang.Object", result.get(2));
 
-        @SuppressWarnings("unchecked") // test what happens when non-gneric 
code adds wrong type of element
+        @SuppressWarnings("unchecked") // test what happens when non-generic 
code adds wrong type of element
         List<Object> olist = (List<Object>)(List<?>)list;
         olist.add(new Object());
         try {
@@ -990,6 +1012,12 @@ public class ClassUtilsTest extends Test
         assertEquals("ClassUtils[][]", ClassUtils.getShortCanonicalName(new 
ClassUtils[0][0], "<null>"));
         assertEquals("int[]", ClassUtils.getShortCanonicalName(new int[0], 
"<null>"));
         assertEquals("int[][]", ClassUtils.getShortCanonicalName(new 
int[0][0], "<null>"));
+
+        // Inner types
+        class Named extends Object {};
+        assertEquals("ClassUtilsTest.6", ClassUtils.getShortCanonicalName(new 
Object(){}, "<null>"));
+        assertEquals("ClassUtilsTest.5Named", 
ClassUtils.getShortCanonicalName(new Named(), "<null>"));
+        assertEquals("ClassUtilsTest.Inner", 
ClassUtils.getShortCanonicalName(new Inner(), "<null>"));
     }
 
     public void test_getShortCanonicalName_Class() {
@@ -998,6 +1026,12 @@ public class ClassUtilsTest extends Test
         assertEquals("ClassUtils[][]", 
ClassUtils.getShortCanonicalName(ClassUtils[][].class));
         assertEquals("int[]", ClassUtils.getShortCanonicalName(int[].class));
         assertEquals("int[][]", 
ClassUtils.getShortCanonicalName(int[][].class));
+        
+        // Inner types
+        class Named extends Object {};
+        assertEquals("ClassUtilsTest.7", ClassUtils.getShortCanonicalName(new 
Object(){}.getClass()));
+        assertEquals("ClassUtilsTest.6Named", 
ClassUtils.getShortCanonicalName(Named.class));
+        assertEquals("ClassUtilsTest.Inner", 
ClassUtils.getShortCanonicalName(Inner.class));
     }
 
     public void test_getShortCanonicalName_String() {
@@ -1010,6 +1044,11 @@ public class ClassUtilsTest extends Test
         assertEquals("int[][]", ClassUtils.getShortCanonicalName("[[I"));
         assertEquals("int[]", ClassUtils.getShortCanonicalName("int[]"));
         assertEquals("int[][]", ClassUtils.getShortCanonicalName("int[][]"));
+        
+        // Inner types
+        assertEquals("ClassUtilsTest.6", 
ClassUtils.getShortCanonicalName("org.apache.commons.lang3.ClassUtilsTest$6"));
+        assertEquals("ClassUtilsTest.5Named", 
ClassUtils.getShortCanonicalName("org.apache.commons.lang3.ClassUtilsTest$5Named"));
+        assertEquals("ClassUtilsTest.Inner", 
ClassUtils.getShortCanonicalName("org.apache.commons.lang3.ClassUtilsTest$Inner"));
     }
 
     public void test_getPackageCanonicalName_Object() {
@@ -1019,6 +1058,12 @@ public class ClassUtilsTest extends Test
         assertEquals("org.apache.commons.lang3", 
ClassUtils.getPackageCanonicalName(new ClassUtils[0][0], "<null>"));
         assertEquals("", ClassUtils.getPackageCanonicalName(new int[0], 
"<null>"));
         assertEquals("", ClassUtils.getPackageCanonicalName(new int[0][0], 
"<null>"));
+        
+        // Inner types
+        class Named extends Object {};
+        assertEquals("org.apache.commons.lang3", 
ClassUtils.getPackageCanonicalName(new Object(){}, "<null>"));
+        assertEquals("org.apache.commons.lang3", 
ClassUtils.getPackageCanonicalName(new Named(), "<null>"));
+        assertEquals("org.apache.commons.lang3", 
ClassUtils.getPackageCanonicalName(new Inner(), "<null>"));
     }
 
     public void test_getPackageCanonicalName_Class() {
@@ -1027,6 +1072,12 @@ public class ClassUtilsTest extends Test
         assertEquals("org.apache.commons.lang3", 
ClassUtils.getPackageCanonicalName(ClassUtils[][].class));
         assertEquals("", ClassUtils.getPackageCanonicalName(int[].class));
         assertEquals("", ClassUtils.getPackageCanonicalName(int[][].class));
+        
+        // Inner types
+        class Named extends Object {};
+        assertEquals("org.apache.commons.lang3", 
ClassUtils.getPackageCanonicalName(new Object(){}.getClass()));
+        assertEquals("org.apache.commons.lang3", 
ClassUtils.getPackageCanonicalName(Named.class));
+        assertEquals("org.apache.commons.lang3", 
ClassUtils.getPackageCanonicalName(Inner.class));
     }
 
     public void test_getPackageCanonicalName_String() {
@@ -1044,6 +1095,11 @@ public class ClassUtilsTest extends Test
         assertEquals("", ClassUtils.getPackageCanonicalName("[[I"));
         assertEquals("", ClassUtils.getPackageCanonicalName("int[]"));
         assertEquals("", ClassUtils.getPackageCanonicalName("int[][]"));
+        
+        // Inner types
+        assertEquals("org.apache.commons.lang3", 
ClassUtils.getPackageCanonicalName("org.apache.commons.lang3.ClassUtilsTest$6"));
+        assertEquals("org.apache.commons.lang3", 
ClassUtils.getPackageCanonicalName("org.apache.commons.lang3.ClassUtilsTest$5Named"));
+        assertEquals("org.apache.commons.lang3", 
ClassUtils.getPackageCanonicalName("org.apache.commons.lang3.ClassUtilsTest$Inner"));
     }
 
 }


Reply via email to