@Test public void testExecutable() throws Exception { assertThat(JavaType.EXECUTABLE.getTypeStub().getName(), is("java.lang.reflect.Executable")); assertThat( JavaType.EXECUTABLE.getTypeStub().getModifiers(), is(Opcodes.ACC_PUBLIC | Opcodes.ACC_ABSTRACT)); assertThat( JavaType.EXECUTABLE.getTypeStub().getSuperClass(), is((TypeDefinition) new TypeDescription.ForLoadedType(AccessibleObject.class))); assertThat(JavaType.EXECUTABLE.getTypeStub().getInterfaces().size(), is(2)); assertThat( JavaType.EXECUTABLE .getTypeStub() .getInterfaces() .contains(new TypeDescription.Generic.OfNonGenericType.ForLoadedType(Member.class)), is(true)); assertThat( JavaType.EXECUTABLE .getTypeStub() .getInterfaces() .contains( new TypeDescription.Generic.OfNonGenericType.ForLoadedType( GenericDeclaration.class)), is(true)); }
@Test @JavaVersionRule.Enforce(8) public void testJava8Types() throws Exception { assertThat(JavaType.EXECUTABLE.load(), notNullValue(Class.class)); }