aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoonas Reynders <joonas.reynders@iki.fi>2012-01-30 19:32:23 +0200
committerPekka Enberg <penberg@kernel.org>2012-01-30 22:22:53 +0200
commitf784e9727db3d2c891bf0bb20a1ad4135a9fe5c8 (patch)
treee701c9bb796ef10707365ca3d47b34ba0fde9502
parent3180779548d06ff5e98af3a930518e29f7372c9c (diff)
downloadjato-f784e9727db3d2c891bf0bb20a1ad4135a9fe5c8.tar.gz
Add test for JNI function GetObjectClass
Signed-off-by: Joonas Reynders <joonas.reynders@iki.fi> Signed-off-by: Pekka Enberg <penberg@kernel.org>
-rw-r--r--test/functional/java/lang/JNITest.java6
-rw-r--r--test/functional/jni/jnitest.c10
2 files changed, 16 insertions, 0 deletions
diff --git a/test/functional/java/lang/JNITest.java b/test/functional/java/lang/JNITest.java
index b5e03688..c2fff009 100644
--- a/test/functional/java/lang/JNITest.java
+++ b/test/functional/java/lang/JNITest.java
@@ -98,6 +98,7 @@ public class JNITest extends TestCase {
native static public Object testNewObject(Class<?> clazz, String constructorSignature, Object args);
native static public Object testNewObjectA(Class<?> clazz, String constructorSignature, Object args);
native static public Object testNewObjectV(Class<?> clazz, String constructorSignature, Object args);
+ native static public Class<?> testGetObjectClass(Object obj);
native static public boolean isInstanceOf(Object obj, Class<?> clazz);
private static JNITest jniTest = new JNITest();
@@ -362,6 +363,10 @@ public class JNITest extends TestCase {
}, InstantiationException.class);
}
+ public static void testGetObjectClass() {
+ assertEquals(String.class, testGetObjectClass(""));
+ }
+
public static void testIsInstanceOf() {
assertTrue(isInstanceOf(jniTest, JNITest.class));
}
@@ -393,6 +398,7 @@ public class JNITest extends TestCase {
testNewObject();
testNewObjectA();
testNewObjectV();
+ testGetObjectClass();
testIsInstanceOf();
}
}
diff --git a/test/functional/jni/jnitest.c b/test/functional/jni/jnitest.c
index 82642bbc..4498d3c1 100644
--- a/test/functional/jni/jnitest.c
+++ b/test/functional/jni/jnitest.c
@@ -743,6 +743,16 @@ JNIEXPORT jobject JNICALL Java_java_lang_JNITest_testNewObjectV(JNIEnv *env, jcl
/*
* Class: java_lang_JNITest
+ * Method: testGetObjectClass
+ * Signature: (Ljava/lang/Object;)Ljava/lang/Object
+ */
+JNIEXPORT jobject JNICALL Java_java_lang_JNITest_testGetObjectClass(JNIEnv *env, jclass clazz, jobject obj)
+{
+ return (*env)->GetObjectClass(env, obj);
+}
+
+/*
+ * Class: java_lang_JNITest
* Method: isInstanceOf
* Signature: (Ljava/lang/Class;)Ljava/lang/Object;
*/