[llvm-commits] CVS: llvm-java/test/Programs/SingleSource/UnitTests/test.c Test.java
Alkis Evlogimenos
alkis at cs.uiuc.edu
Sat Apr 2 18:05:44 PST 2005
Changes in directory llvm-java/test/Programs/SingleSource/UnitTests:
test.c updated: 1.5 -> 1.6
Test.java updated: 1.8 -> 1.9
---
Log message:
Add tests for static field access through JNI.
---
Diffs of the changes: (+58 -0)
Test.java | 10 ++++++++++
test.c | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 58 insertions(+)
Index: llvm-java/test/Programs/SingleSource/UnitTests/test.c
diff -u llvm-java/test/Programs/SingleSource/UnitTests/test.c:1.5 llvm-java/test/Programs/SingleSource/UnitTests/test.c:1.6
--- llvm-java/test/Programs/SingleSource/UnitTests/test.c:1.5 Sat Apr 2 19:10:15 2005
+++ llvm-java/test/Programs/SingleSource/UnitTests/test.c Sat Apr 2 20:05:33 2005
@@ -90,3 +90,51 @@
b = (*env)->GetByteField(env, obj, id);
Java_Test_println__I(env, objClass, b);
}
+
+void Java_Test_printStaticFields(JNIEnv *env, jclass clazz)
+{
+ jclass classTest;
+ jfieldID id;
+ jboolean z;
+ jint i;
+ jlong l;
+ jfloat f;
+ jdouble d;
+ jshort s;
+ jbyte b;
+
+ classTest = (*env)->FindClass(env, "Test");
+ if (!classTest)
+ printf("ERROR: Class Test not found!\n");
+
+ if (!(*env)->IsAssignableFrom(env, clazz, classTest))
+ printf("ERROR: IsAssignableFrom\n");
+
+ id = (*env)->GetStaticFieldID(env, clazz, "Z", "Z");
+ z = (*env)->GetStaticBooleanField(env, clazz, id);
+ Java_Test_println__Z(env, clazz, z);
+
+ id = (*env)->GetStaticFieldID(env, clazz, "I", "I");
+ i = (*env)->GetStaticIntField(env, clazz, id);
+ Java_Test_println__I(env, clazz, i);
+
+ id = (*env)->GetStaticFieldID(env, clazz, "L", "J");
+ l = (*env)->GetStaticLongField(env, clazz, id);
+ Java_Test_println__J(env, clazz, l);
+
+ id = (*env)->GetStaticFieldID(env, clazz, "F", "F");
+ f = (*env)->GetStaticFloatField(env, clazz, id);
+ Java_Test_println__F(env, clazz, f);
+
+ id = (*env)->GetStaticFieldID(env, clazz, "D", "D");
+ d = (*env)->GetStaticDoubleField(env, clazz, id);
+ Java_Test_println__D(env, clazz, d);
+
+ id = (*env)->GetStaticFieldID(env, clazz, "S", "S");
+ s = (*env)->GetStaticShortField(env, clazz, id);
+ Java_Test_println__I(env, clazz, s);
+
+ id = (*env)->GetStaticFieldID(env, clazz, "B", "B");
+ b = (*env)->GetStaticByteField(env, clazz, id);
+ Java_Test_println__I(env, clazz, b);
+}
Index: llvm-java/test/Programs/SingleSource/UnitTests/Test.java
diff -u llvm-java/test/Programs/SingleSource/UnitTests/Test.java:1.8 llvm-java/test/Programs/SingleSource/UnitTests/Test.java:1.9
--- llvm-java/test/Programs/SingleSource/UnitTests/Test.java:1.8 Sat Apr 2 19:10:15 2005
+++ llvm-java/test/Programs/SingleSource/UnitTests/Test.java Sat Apr 2 20:05:33 2005
@@ -8,6 +8,14 @@
public short s = 456;
public byte b = 78;
+ public static boolean Z = true;
+ public static int I = 321;
+ public static long L = 1234567890987654321L;
+ public static float F = 46.753F;
+ public static double D = -75346.46;
+ public static short S = 654;
+ public static byte B = 87;
+
static {
System.loadLibrary("test");
}
@@ -28,6 +36,7 @@
private static native void println(byte[] a);
public native void printFields();
+ public static native void printStaticFields();
public static void main(String[] args) {
println(true);
@@ -43,6 +52,7 @@
println(new byte[] { 'H', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd' });
println("Hello world");
+ printStaticFields();
new Test().printFields();
}
}
More information about the llvm-commits
mailing list