#include "bytebuffer.h" static void test_buffer (JNIEnv *env, jobject buffer, const char *name) { void *tmp = (*env)->GetDirectBufferAddress (env, buffer); if (tmp == NULL) printf ("PASS: address of %s\n", name); else printf ("FAIL: address of %s\n", name); int tmplen = (*env)->GetDirectBufferCapacity (env, buffer); if (tmplen == -1) printf ("PASS: length of %s\n", name); else printf ("FAIL: length of %s\n", name); } JNIEXPORT void JNICALL Java_bytebuffer_testByteBuffer (JNIEnv *env, jclass k, jobject buffer) { test_buffer (env, buffer, "java.nio.ByteBuffer"); } JNIEXPORT void JNICALL Java_bytebuffer_testCharBuffer (JNIEnv *env, jclass k, jobject buffer) { test_buffer (env, buffer, "java.nio.CharBuffer"); } JNIEXPORT void JNICALL Java_bytebuffer_testDoubleBuffer (JNIEnv *env, jclass k, jobject buffer) { test_buffer (env, buffer, "java.nio.DoubleBuffer"); } JNIEXPORT void JNICALL Java_bytebuffer_testFloatBuffer (JNIEnv *env, jclass k, jobject buffer) { test_buffer (env, buffer, "java.nio.FloatBuffer"); } JNIEXPORT void JNICALL Java_bytebuffer_testIntBuffer (JNIEnv *env, jclass k, jobject buffer) { test_buffer (env, buffer, "java.nio.IntBuffer"); } JNIEXPORT void JNICALL Java_bytebuffer_testLongBuffer (JNIEnv *env, jclass k, jobject buffer) { test_buffer (env, buffer, "java.nio.LongBuffer"); } JNIEXPORT void JNICALL Java_bytebuffer_testShortBuffer (JNIEnv *env, jclass k, jobject buffer) { test_buffer (env, buffer, "java.nio.ShortBuffer"); }