Mercurial > hg > graal-jvmci-8
changeset 22033:547ae53182bf
Add test for isLeaf
author | Tom Rodriguez <tom.rodriguez@oracle.com> |
---|---|
date | Fri, 19 Jun 2015 09:28:17 -0700 |
parents | d1a41fbfcfd2 |
children | 0cebd06508ca |
files | jvmci/com.oracle.jvmci.runtime.test/src/com/oracle/jvmci/runtime/test/TestResolvedJavaField.java jvmci/com.oracle.jvmci.runtime.test/src/com/oracle/jvmci/runtime/test/TestResolvedJavaMethod.java jvmci/com.oracle.jvmci.runtime.test/src/com/oracle/jvmci/runtime/test/TestResolvedJavaType.java |
diffstat | 3 files changed, 20 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/jvmci/com.oracle.jvmci.runtime.test/src/com/oracle/jvmci/runtime/test/TestResolvedJavaField.java Thu Jun 18 10:07:27 2015 -0700 +++ b/jvmci/com.oracle.jvmci.runtime.test/src/com/oracle/jvmci/runtime/test/TestResolvedJavaField.java Fri Jun 19 09:28:17 2015 -0700 @@ -120,7 +120,8 @@ // @formatter:off private static final String[] untestedApiMethods = { "getDeclaringClass", - "isInternal" + "isInternal", + "isFinal" }; // @formatter:on
--- a/jvmci/com.oracle.jvmci.runtime.test/src/com/oracle/jvmci/runtime/test/TestResolvedJavaMethod.java Thu Jun 18 10:07:27 2015 -0700 +++ b/jvmci/com.oracle.jvmci.runtime.test/src/com/oracle/jvmci/runtime/test/TestResolvedJavaMethod.java Fri Jun 19 09:28:17 2015 -0700 @@ -403,6 +403,7 @@ "toParameterTypes", "getParameterAnnotation", "getSpeculationLog", + "isFinal", "$jacocoInit" }; // @formatter:on
--- a/jvmci/com.oracle.jvmci.runtime.test/src/com/oracle/jvmci/runtime/test/TestResolvedJavaType.java Thu Jun 18 10:07:27 2015 -0700 +++ b/jvmci/com.oracle.jvmci.runtime.test/src/com/oracle/jvmci/runtime/test/TestResolvedJavaType.java Fri Jun 19 09:28:17 2015 -0700 @@ -838,6 +838,23 @@ } @Test + public void isLeafTest() { + for (Class<?> c : classes) { + ResolvedJavaType type = metaAccess.lookupJavaType(c); + ResolvedJavaType arrayType = c != void.class ? metaAccess.lookupJavaType(getArrayClass(c)) : null; + if (c.isPrimitive()) { + assertTrue(type.isLeaf()); + assertTrue(arrayType == null || arrayType.isLeaf()); + } else { + assertTrue(c.toString(), type.isLeaf() == arrayType.isLeaf()); + if (!c.isArray()) { + assertTrue(c.toString(), type.isLeaf() == Modifier.isFinal(c.getModifiers())); + } + } + } + } + + @Test public void findMethodTest() { try { ResolvedJavaMethod findFoo = metaAccess.lookupJavaType(D.class).findMethod("foo", metaAccess.parseMethodDescriptor("()V"));