diff options
author | acolyer <acolyer> | 2005-12-06 15:39:08 +0000 |
---|---|---|
committer | acolyer <acolyer> | 2005-12-06 15:39:08 +0000 |
commit | 6e8bf5292686224d2110cbf8c2184e2568bcabe3 (patch) | |
tree | 17436880b8cd00bffc5a80faca5f62fef59bae86 /aspectj5rt | |
parent | c11af72b292ae060578c8649c969307595c3e25e (diff) | |
download | aspectj-6e8bf5292686224d2110cbf8c2184e2568bcabe3.tar.gz aspectj-6e8bf5292686224d2110cbf8c2184e2568bcabe3.zip |
tests and fix for pr119352
Diffstat (limited to 'aspectj5rt')
-rw-r--r-- | aspectj5rt/java5-src/org/aspectj/internal/lang/reflect/AjTypeImpl.java | 2 | ||||
-rw-r--r-- | aspectj5rt/java5-testsrc/org/aspectj/internal/lang/reflect/AjTypeTests.java | 12 |
2 files changed, 12 insertions, 2 deletions
diff --git a/aspectj5rt/java5-src/org/aspectj/internal/lang/reflect/AjTypeImpl.java b/aspectj5rt/java5-src/org/aspectj/internal/lang/reflect/AjTypeImpl.java index 8534d0743..440a139e2 100644 --- a/aspectj5rt/java5-src/org/aspectj/internal/lang/reflect/AjTypeImpl.java +++ b/aspectj5rt/java5-src/org/aspectj/internal/lang/reflect/AjTypeImpl.java @@ -120,7 +120,7 @@ public class AjTypeImpl<T> implements AjType<T> { */ public AjType<? super T> getSupertype() { Class<? super T> superclass = clazz.getSuperclass(); - return (AjType<? super T>) new AjTypeImpl(superclass); + return superclass==null ? null : (AjType<? super T>) new AjTypeImpl(superclass); } /* (non-Javadoc) diff --git a/aspectj5rt/java5-testsrc/org/aspectj/internal/lang/reflect/AjTypeTests.java b/aspectj5rt/java5-testsrc/org/aspectj/internal/lang/reflect/AjTypeTests.java index f634d6c73..9416979de 100644 --- a/aspectj5rt/java5-testsrc/org/aspectj/internal/lang/reflect/AjTypeTests.java +++ b/aspectj5rt/java5-testsrc/org/aspectj/internal/lang/reflect/AjTypeTests.java @@ -62,9 +62,19 @@ public class AjTypeTests extends TestCase { public void testGetSupertype() { Class<?> stringSuper = String.class.getSuperclass(); AjType ajSuper = stringType.getSupertype(); - assertEquals(AjTypeSystem.getAjType(stringSuper),ajSuper); + assertEquals(AjTypeSystem.getAjType(stringSuper),ajSuper); } + public void testObjectSupertype() { + AjType<?> objectSuper = AjTypeSystem.getAjType(Object.class).getSupertype(); + assertNull(objectSuper); + } + + public void testInterfaceSupertype() { + AjType<?> serializableSuper = AjTypeSystem.getAjType(Serializable.class).getSupertype(); + assertNull(serializableSuper); + } + public void testGetGenericSupertype() { Type t = AjTypeSystem.getAjType(Goo.class).getGenericSupertype(); assertEquals(Foo.class,t); |