1) Fix for 23775 (three files changed for this)

2) Many OJI unit tests added.
This commit is contained in:
drapeau%eng.sun.com 2000-06-23 02:28:31 +00:00
Родитель 81f4263907
Коммит 7f384b86a6
82 изменённых файлов: 215 добавлений и 112 удалений

Просмотреть файл

@ -434,7 +434,6 @@ jsj_DiscardJavaClassReflections(JNIEnv *jEnv)
cx = JSJ_callbacks->map_jsj_thread_to_js_context(jsj_env,
jEnv, &err_msg);
#endif
JS_ASSERT(cx);
if (!cx)
return;
} else {

Просмотреть файл

@ -44,6 +44,7 @@
#include "nsIPluginHost.h"
#include "nsIServiceManager.h"
#include "nsIEventQueueService.h"
#include "nsIPref.h"
#include "lcglue.h"
extern "C" int XP_PROGRESS_STARTING_JAVA;
@ -53,6 +54,8 @@ extern "C" int XP_JAVA_GENERAL_FAILURE;
extern "C" int XP_JAVA_STARTUP_FAILED;
extern "C" int XP_JAVA_DEBUGGER_FAILED;
static NS_DEFINE_CID(kPrefCID, NS_PREF_CID);
static NS_DEFINE_CID(kPluginManagerCID, NS_PLUGINMANAGER_CID);
static NS_DEFINE_IID(kPluginHostIID, NS_IPLUGINHOST_IID);
static NS_DEFINE_IID(kPluginManagerIID, NS_IPLUGINMANAGER_IID);
@ -623,20 +626,30 @@ nsJVMManager::ShutdownJVM(PRBool fullShutdown)
////////////////////////////////////////////////////////////////////////////////
/**
* This is called when the user changes the state of the
* security.enable_java preference.
*/
static int PR_CALLBACK
JavaPrefChanged(const char *prefStr, void* data)
{
nsJVMManager* mgr = (nsJVMManager*)data;
PRBool prefBool = TRUE;
#if defined(XP_MAC)
// beard: under Mozilla, no way to enable this right now.
prefBool = TRUE;
#else
/*TODO: hshaw: Use the new prefs api. Get to it from service manager and use nsIPref.
PREF_GetBoolPref(prefStr, &prefBool);
*/
#endif
mgr->SetJVMEnabled(prefBool);
PRBool prefBool = PR_TRUE;
nsCOMPtr<nsIPref> prefs(do_GetService(kPrefCID));
nsresult rv;
// check for success
if (!prefs) {
return 0;
}
rv = prefs->GetBoolPref("security.enable_java", &prefBool);
if (NS_SUCCEEDED(rv)) {
mgr->SetJVMEnabled(prefBool);
}
return 0;
}
@ -655,15 +668,43 @@ nsJVMManager::SetJVMEnabled(PRBool enabled)
}
}
/**
* Called from GetJVMStatus. <P>
* We only take action once per nsJVMManager instance.
*/
void
nsJVMManager::EnsurePrefCallbackRegistered(void)
{
if (fRegisteredJavaPrefChanged != PR_TRUE) {
fRegisteredJavaPrefChanged = PR_TRUE;
/*TODO: hshaw: Use the new prefs api. Get to it from service manager.
PREF_RegisterCallback("security.enable_java", JavaPrefChanged, this);
*/
JavaPrefChanged("security.enable_java", this);
nsCOMPtr<nsIPref> prefs(do_GetService(kPrefCID));
PRBool isJavaEnabled = PR_TRUE;
nsresult rv;
// check for success
if (!prefs) {
return;
}
// step one, register the callback for the pref changing.
rv = prefs->RegisterCallback("security.enable_java",
JavaPrefChanged, this);
if (NS_SUCCEEDED(rv)) {
fRegisteredJavaPrefChanged = PR_TRUE;
}
// step two, update our fStatus ivar with the current value of the
// pref
rv = prefs->GetBoolPref("security.enable_java", &isJavaEnabled);
if (NS_SUCCEEDED(rv)) {
if (!isJavaEnabled) {
fStatus = nsJVMStatus_Disabled;
}
// else, we leave it with the value it had at construction
}
}
}

Просмотреть файл

@ -17,6 +17,12 @@
# Rights Reserved.
#
# Contributor(s):
!if defined(MOZ_DEBUG)
WIN32DIR=WIN32_D.OBJ
!else
WIN32DIR=WIN32_O.OBJ
!endif
INCLUDES = $(INCLUDES) \
-I. \
-I$(TOP_DIR)/src/include \
@ -24,10 +30,14 @@ INCLUDES = $(INCLUDES) \
-I$(JAVAHOME)/include/win32 \
-I$(MOZILLA_HOME)/include \
-I$(MOZILLA_HOME)/dist/include \
-I$(MOZILLA_HOME)/dist/WIN32_D.OBJ/include \
-I$(MOZILLA_HOME)/dist/WIN32_D.OBJ/include/obsolete
-I$(MOZILLA_HOME)/dist/$(WIN32DIR)/include \
-I$(MOZILLA_HOME)/dist/$(WIN32DIR)/include/obsolete
!if defined(MOZ_DEBUG)
DEFINES=-DXP_PC -DXP_WIN -DDEBUG
!else
DEFINES=-DXP_PC -DXP_WIN
!endif
CC_OBJ=@cl $(DEFINES) /Zi /nologo $(INCLUDES) /c /Fo$(OBJ_DIR)\ /Fd$(OBJ_DIR)/default.pdb

Просмотреть файл

@ -19,8 +19,14 @@
# Contributor(s):
LIBS = nspr4.lib xpcom.lib oji.lib plc4.lib
!if defined(MOZ_DEBUG)
LD_FLAGS = /LIBPATH:$(MOZILLA_HOME)/dist/WIN32_D.OBJ/lib \
/LIBPATH:$(OBJ_DIR)
!else
LD_FLAGS = /LIBPATH:$(MOZILLA_HOME)/dist/WIN32_O.OBJ/lib \
/LIBPATH:$(OBJ_DIR)
!endif
ADD_CPP=@echo

Просмотреть файл

@ -27,8 +27,8 @@ JNI_OJIAPITest(JNIEnv_GetStaticFloatField_5)
IMPLEMENT_GetStaticFieldID_METHOD("Test1", "static_name_float", "F");
env->SetStaticFloatField(clazz, fieldID, MIN_JFLOAT);
jint value = env->GetStaticFloatField(clazz, fieldID);
printf("value = %d\n", (int)value);
jfloat value = env->GetStaticFloatField(clazz, fieldID);
printf("value = %f\n", value);
if(value==MIN_JFLOAT){
return TestResult::PASS("GetStaticFloatField with val == MIN_JFLOAT return correct value");
}else{

Просмотреть файл

@ -27,8 +27,8 @@ JNI_OJIAPITest(JNIEnv_GetStaticFloatField_6)
IMPLEMENT_GetStaticFieldID_METHOD("Test1", "static_name_float", "F");
env->SetStaticFloatField(clazz, fieldID, MAX_JFLOAT);
jint value = env->GetStaticFloatField(clazz, fieldID);
printf("value = %d\n", (int)value);
jfloat value = env->GetStaticFloatField(clazz, fieldID);
printf("value = %f\n", value);
if(value==MAX_JFLOAT){
return TestResult::PASS("GetStaticFloatField with val == MAX_JFLOAT return correct value");
}else{

Просмотреть файл

@ -29,15 +29,15 @@ JNI_OJIAPITest(JNIEnv_GetByteArrayRegion_1)
jsize start = 0;
jsize leng = 3;
jbyte buf[3];
buf[0] = MAX_JINT;
buf[1] = MIN_JINT;
buf[0] = MAX_JBYTE;
buf[1] = MIN_JBYTE;
buf[2] = 0;
env->SetByteArrayRegion(arr, start, leng, buf);
jbyte val[3];
env->GetByteArrayRegion(arr, start, leng, val);
if((val[0]==MAX_JINT)&&(val[1]==MIN_JINT)&&(val[2]==0)){
if((val[0]==MAX_JBYTE)&&(val[1]==MIN_JBYTE)&&(val[2]==0)){
return TestResult::PASS("GetByteArrayRegion(all right) returns correct value");
}else{
return TestResult::FAIL("GetByteArrayRegion(all right) returns incorrect value");

Просмотреть файл

@ -32,7 +32,7 @@ JNI_OJIAPITest(JNIEnv_NewObjectArray_5)
jarray arr = env->NewObjectArray(5, clazz, obj_incor);
if(arr==NULL){
if(arr != NULL){ //NULL is returned only if OutOfMemoryException is thrown
return TestResult::PASS("NewObjectArray(obj is incorrect) returns correct value");
}else{
return TestResult::FAIL("NewObjectArray(obj is incorrect) returns incorrect value");

Просмотреть файл

@ -35,10 +35,10 @@ JNI_OJIAPITest(JNIEnv_SetObjectArrayElement_5)
jstring str1 = env->NewString(str_chars1, 8);
jclass clazz_incor = env->FindClass("Test1");
jobject obj_incor = env->AllocObject(clazz_incor);
env->SetObjectArrayElement(arr, (jsize)6, obj_incor);
env->SetObjectArrayElement(arr, (jsize)2, obj_incor);
jthrowable excep = env->ExceptionOccurred();
if(env->IsInstanceOf(excep, clazz_exp)){
printf("ArrayIndexOutOfBoundsException is thrown. It is correct!\n");
//printf("ArrayIndexOutOfBoundsException is thrown. It is correct!\n");
return TestResult::PASS("SetObjectArrayElement(incorrect object) returns correct value - empty array");
}else{
return TestResult::FAIL("SetObjectArrayElement(incorrect object) returns incorrect value");

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallBooleanMethod_3)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_bool", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Z");
jboolean value = env->CallBooleanMethod(obj, MethodID, JNI_TRUE, 0, 'a', 1, 123, 0, 0, 100, NULL, NULL);
jboolean value = env->CallBooleanMethod(obj, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == JNI_TRUE){
return TestResult::PASS("CallBooleanMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Z) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallBooleanMethod_4)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_bool", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Z");
jboolean value = env->CallBooleanMethod(obj, MethodID, JNI_FALSE, 0, 'a', 1, 123, 0, 0, 100, NULL, NULL);
jboolean value = env->CallBooleanMethod(obj, MethodID, (jboolean)JNI_FALSE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == JNI_FALSE){
return TestResult::PASS("CallBooleanMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Z) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallByteMethod_3)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_byte", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)B");
jbyte value = env->CallByteMethod(obj, MethodID, JNI_TRUE, MIN_JBYTE, 'a', 1, 123, 0, 0, 100, NULL, NULL);
jbyte value = env->CallByteMethod(obj, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)'a', (jshort)1, (jint)123, (jlong)0, (jfloat)0., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MIN_JBYTE){
return TestResult::PASS("CallByteMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)B) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallByteMethod_4)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_byte", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)B");
jbyte value = env->CallByteMethod(obj, MethodID, JNI_TRUE, MAX_JBYTE, 'a', 1, 123, 0, 0, 100, NULL, NULL);
jbyte value = env->CallByteMethod(obj, MethodID, (jboolean)JNI_TRUE, (jbyte)MAX_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MAX_JBYTE){
return TestResult::PASS("CallByteMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)B) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallDoubleMethod_3)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_double", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)D");
jdouble value = env->CallDoubleMethod(obj, MethodID, JNI_TRUE, 0, 'a', 1, 123, 0, 0, MAX_JDOUBLE, NULL, NULL);
jdouble value = env->CallDoubleMethod(obj, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)MAX_JDOUBLE, (jobject)NULL, (jobject)NULL);
if(value == MAX_JDOUBLE){
return TestResult::PASS("CallDoubleMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)D) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallDoubleMethod_4)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_double", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)D");
jdouble value = env->CallDoubleMethod(obj, MethodID, JNI_TRUE, 0, 'a', 1, 123, 0, 0, MIN_JDOUBLE, NULL, NULL);
jdouble value = env->CallDoubleMethod(obj, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)MIN_JDOUBLE, (jobject)NULL, (jobject)NULL);
if(value == MIN_JDOUBLE){
return TestResult::PASS("CallDoubleMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)D) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallFloatMethod_3)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_float", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)F");
jfloat value = env->CallFloatMethod(obj, MethodID, JNI_TRUE, 0, 'a', 1, 123, 0, MIN_JFLOAT, 100, NULL, NULL);
jfloat value = env->CallFloatMethod(obj, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)MIN_JFLOAT, (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MIN_JFLOAT){
return TestResult::PASS("CallFloatMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)F) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallFloatMethod_4)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_float", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)F");
jfloat value = env->CallFloatMethod(obj, MethodID, JNI_TRUE, 0, 'a', 1, 123, 0, MAX_JFLOAT, 100, NULL, NULL);
jfloat value = env->CallFloatMethod(obj, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)MAX_JFLOAT, (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MAX_JFLOAT){
return TestResult::PASS("CallFloatMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)F) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallIntMethod_16)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_int", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)I");
jint value = env->CallIntMethod(obj, MethodID, JNI_TRUE, 0, 'a', 1, MAX_JINT, 0, 0, MAX_JDOUBLE, NULL, NULL);
jint value = env->CallIntMethod(obj, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)MAX_JINT, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MAX_JINT){
return TestResult::PASS("CallIntMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)I) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallIntMethod_17)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_int", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)I");
jint value = env->CallIntMethod(obj, MethodID, JNI_TRUE, 0, 'a', 1, MIN_JINT, 0, 0, MAX_JDOUBLE, NULL, NULL);
jint value = env->CallIntMethod(obj, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)MIN_JINT, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MIN_JINT){
return TestResult::PASS("CallIntMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)I) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallLongMethod_3)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_long", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)J");
jlong value = env->CallLongMethod(obj, MethodID, JNI_TRUE, 0, 'a', 1, 123, MAX_JLONG, 0, MAX_JDOUBLE, NULL, NULL);
jlong value = env->CallLongMethod(obj, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)MAX_JLONG, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MAX_JLONG){
return TestResult::PASS("CallLongMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)J) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallLongMethod_4)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_long", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)J");
jlong value = env->CallLongMethod(obj, MethodID, JNI_TRUE, 0, 'a', 1, 123, MIN_JLONG, 0, MAX_JDOUBLE, NULL, NULL);
jlong value = env->CallLongMethod(obj, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)MIN_JLONG, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MIN_JLONG){
return TestResult::PASS("CallLongMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)J) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallNonvirtualBooleanMethod_3)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_bool", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Z");
jboolean value = env->CallNonvirtualBooleanMethod(obj, env->GetSuperclass(clazz), MethodID, JNI_TRUE, 0, 'a', 1, 123, 0, 0, 100, NULL, NULL);
jboolean value = env->CallNonvirtualBooleanMethod(obj, env->GetSuperclass(clazz), MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == JNI_TRUE){
return TestResult::PASS("CallNonvirtualBooleanMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Z) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallNonvirtualBooleanMethod_4)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_bool", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Z");
jboolean value = env->CallNonvirtualBooleanMethod(obj, env->GetSuperclass(clazz), MethodID, JNI_FALSE, 0, 'a', 1, 123, 0, 0, 100, NULL, NULL);
jboolean value = env->CallNonvirtualBooleanMethod(obj, env->GetSuperclass(clazz), MethodID, (jboolean)JNI_FALSE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == JNI_FALSE){
return TestResult::PASS("CallNonvirtualBooleanMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Z) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallNonvirtualDoubleMethod_3)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_double", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)D");
jdouble value = env->CallNonvirtualDoubleMethod(obj, env->GetSuperclass(clazz), MethodID, JNI_TRUE, 0, 'a', 1, 123, 0, 0, MAX_JDOUBLE, NULL, NULL);
jdouble value = env->CallNonvirtualDoubleMethod(obj, env->GetSuperclass(clazz), MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)MAX_JDOUBLE, (jobject)NULL, (jobject)NULL);
if(value == MAX_JDOUBLE){
return TestResult::PASS("CallNonvirtualDoubleMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)D) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallNonvirtualDoubleMethod_4)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_double", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)D");
jdouble value = env->CallNonvirtualDoubleMethod(obj, env->GetSuperclass(clazz), MethodID, JNI_TRUE, 0, 'a', 1, 123, 0, 0, MIN_JDOUBLE, NULL, NULL);
jdouble value = env->CallNonvirtualDoubleMethod(obj, env->GetSuperclass(clazz), MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)MIN_JDOUBLE, (jobject)NULL, (jobject)NULL);
if(value == MIN_JDOUBLE){
return TestResult::PASS("CallNonvirtualDoubleMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)D) return correct value");
}else{

Просмотреть файл

@ -28,7 +28,7 @@ JNI_OJIAPITest(JNIEnv_CallNonvirtualObjectMethod_3)
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_string", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Ljava/lang/String;");
char *path = "asdf";
jstring jpath=env->NewStringUTF("sdsadasdasd");
jstring value = (jstring)env->CallNonvirtualObjectMethod(obj, env->GetSuperclass(clazz), MethodID, JNI_TRUE, 0, 'a', MIN_JSHORT, 123, 0, 0, MAX_JDOUBLE, jpath, NULL);
jstring value = (jstring)env->CallNonvirtualObjectMethod(obj, env->GetSuperclass(clazz), MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)jpath, (jobject)NULL);
if(env->GetStringLength(value) == 11){
return TestResult::PASS("CallNonvirtualObjectMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Ljava/lang/String;) return correct value");
}else{

Просмотреть файл

@ -28,7 +28,7 @@ JNI_OJIAPITest(JNIEnv_CallNonvirtualObjectMethod_4)
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_string", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Ljava/lang/String;");
char *path = "asdf";
jstring jpath=env->NewStringUTF("sdsadasdasd");
jstring value = (jstring)env->CallNonvirtualObjectMethod(obj, env->GetSuperclass(clazz), MethodID, JNI_TRUE, 0, 'a', MIN_JSHORT, 123, 0, 0, MAX_JDOUBLE, NULL, NULL);
jstring value = (jstring)env->CallNonvirtualObjectMethod(obj, env->GetSuperclass(clazz), MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == NULL){
return TestResult::PASS("CallNonvirtualObjectMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Ljava/lang/String;) return correct value");
}else{

Просмотреть файл

@ -37,9 +37,10 @@ JNI_OJIAPITest(JNIEnv_CallNonvirtualObjectMethod_7)
if(arr==NULL){
printf("arr is NULL!\n");
}
jobjectArray value = (jobjectArray)env->CallNonvirtualObjectMethod(obj, env->GetSuperclass(clazz), MethodID, JNI_TRUE, 0, 'a', MIN_JSHORT, 123, 0, 0, MAX_JDOUBLE, jpath, NULL);
jobjectArray value = (jobjectArray)env->CallNonvirtualObjectMethod(obj, env->GetSuperclass(clazz), MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)jpath, (jobject)arr);
if(value == NULL){
printf("value is NULL!!! \n\n");
return TestResult::FAIL("CallNonvirtualObjectMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)[Ljava/lang/String;) return NULL");
}
jstring str_ret = (jstring)env->GetObjectArrayElement(value, (jsize) 1);
char* str_chars_ret = (char *) env->GetStringUTFChars(str, NULL);

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallNonvirtualByteMethod_3)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_byte", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)B");
jbyte value = env->CallNonvirtualByteMethod(obj, env->GetSuperclass(clazz), MethodID, JNI_TRUE, MIN_JBYTE, 'a', 1, 123, 0, 0, 100, NULL, NULL);
jbyte value = env->CallNonvirtualByteMethod(obj, env->GetSuperclass(clazz), MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MIN_JBYTE){
return TestResult::PASS("CallNonvirtualByteMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)B) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallNonvirtualByteMethod_4)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_byte", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)B");
jbyte value = env->CallNonvirtualByteMethod(obj, env->GetSuperclass(clazz), MethodID, JNI_TRUE, MAX_JBYTE, 'a', 1, 123, 0, 0, 100, NULL, NULL);
jbyte value = env->CallNonvirtualByteMethod(obj, env->GetSuperclass(clazz), MethodID, (jboolean)JNI_TRUE, (jbyte)MAX_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MAX_JBYTE){
return TestResult::PASS("CallNonvirtualByteMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)B) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallNonvirtualCharMethod_3)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_char", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)C");
jchar value = env->CallNonvirtualCharMethod(obj, env->GetSuperclass(clazz), MethodID, JNI_TRUE, MIN_JBYTE, 'a', 1, 123, 0, 0, 100, NULL, NULL);
jchar value = env->CallNonvirtualCharMethod(obj, env->GetSuperclass(clazz), MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)'a', (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == 'a'){
return TestResult::PASS("CallNonvirtualCharMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)C) return correct value");
}else{

Просмотреть файл

@ -26,8 +26,8 @@ JNI_OJIAPITest(JNIEnv_CallNonvirtualCharMethod_4)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_char", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)C");
jchar value = env->CallNonvirtualCharMethod(obj, env->GetSuperclass(clazz), MethodID, JNI_TRUE, MIN_JBYTE, NULL, 1, 123, 0, 0, 100, NULL, NULL);
if(value == (jchar)NULL){
jchar value = env->CallNonvirtualCharMethod(obj, env->GetSuperclass(clazz), MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == (jchar)0){
return TestResult::PASS("CallNonvirtualCharMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)C) return correct value");
}else{
return TestResult::FAIL("CallNonvirtualCharMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)C) return incorrect value");

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallNonvirtualFloatMethod_3)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_float", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)F");
jfloat value = env->CallNonvirtualFloatMethod(obj, env->GetSuperclass(clazz), MethodID, JNI_TRUE, 0, 'a', 1, 123, 0, MIN_JFLOAT, 100, NULL, NULL);
jfloat value = env->CallNonvirtualFloatMethod(obj, env->GetSuperclass(clazz), MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)MIN_JFLOAT, (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MIN_JFLOAT){
return TestResult::PASS("CallNonvirtualFloatMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)F) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallNonvirtualFloatMethod_4)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_float", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)F");
jfloat value = env->CallNonvirtualFloatMethod(obj, env->GetSuperclass(clazz), MethodID, JNI_TRUE, 0, 'a', 1, 123, 0, MAX_JFLOAT, 100, NULL, NULL);
jfloat value = env->CallNonvirtualFloatMethod(obj, env->GetSuperclass(clazz), MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)MAX_JFLOAT, (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MAX_JFLOAT){
return TestResult::PASS("CallNonvirtualFloatMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)F) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallNonvirtualIntMethod_31)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_int", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)I");
jint value = env->CallNonvirtualIntMethod(obj, env->GetSuperclass(clazz), MethodID, JNI_TRUE, 0, 'a', 1, MAX_JINT, 0, 0, MAX_JDOUBLE, NULL, NULL);
jint value = env->CallNonvirtualIntMethod(obj, env->GetSuperclass(clazz), MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)MAX_JINT, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MAX_JINT){
return TestResult::PASS("CallNonvirtualIntMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)I) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallNonvirtualIntMethod_32)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_int", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)I");
jint value = env->CallNonvirtualIntMethod(obj, env->GetSuperclass(clazz), MethodID, JNI_TRUE, 0, 'a', 1, MIN_JINT, 0, 0, MAX_JDOUBLE, NULL, NULL);
jint value = env->CallNonvirtualIntMethod(obj, env->GetSuperclass(clazz), MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)MIN_JINT, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MIN_JINT){
return TestResult::PASS("CallNonvirtualIntMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)I) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallNonvirtualLongMethod_3)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_long", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)J");
jlong value = env->CallNonvirtualLongMethod(obj, env->GetSuperclass(clazz), MethodID, JNI_TRUE, 0, 'a', 1, 123, MAX_JLONG, 0, MAX_JDOUBLE, NULL, NULL);
jlong value = env->CallNonvirtualLongMethod(obj, env->GetSuperclass(clazz), MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)MAX_JLONG, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MAX_JLONG){
return TestResult::PASS("CallNonvirtualLongMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)J) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallNonvirtualLongMethod_4)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_long", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)J");
jlong value = env->CallNonvirtualLongMethod(obj, env->GetSuperclass(clazz), MethodID, JNI_TRUE, 0, 'a', 1, 123, MIN_JLONG, 0, MAX_JDOUBLE, NULL, NULL);
jlong value = env->CallNonvirtualLongMethod(obj, env->GetSuperclass(clazz), MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)MIN_JLONG, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MIN_JLONG){
return TestResult::PASS("CallNonvirtualLongMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)J) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallNonvirtualShortMethod_3)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_short", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)S");
jshort value = env->CallNonvirtualShortMethod(obj, env->GetSuperclass(clazz), MethodID, JNI_TRUE, 0, 'a', MAX_JSHORT, 123, 0, 0, MAX_JDOUBLE, NULL, NULL);
jshort value = env->CallNonvirtualShortMethod(obj, env->GetSuperclass(clazz), MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)MAX_JSHORT, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MAX_JSHORT){
return TestResult::PASS("CallNonvirtualShortMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)S) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallNonvirtualShortMethod_4)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_short", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)S");
jshort value = env->CallNonvirtualShortMethod(obj, env->GetSuperclass(clazz), MethodID, JNI_TRUE, 0, 'a', MIN_JSHORT, 123, 0, 0, MAX_JDOUBLE, NULL, NULL);
jshort value = env->CallNonvirtualShortMethod(obj, env->GetSuperclass(clazz), MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)MIN_JSHORT, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MIN_JSHORT){
return TestResult::PASS("CallNonvirtualShortMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)S) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallNonvirtualVoidMethod_2)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method2", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)V");
env->CallNonvirtualVoidMethod(obj, env->GetSuperclass(clazz), MethodID, JNI_TRUE, 0, 'a', 1, 123, 0, 0, 100, NULL, NULL);
env->CallNonvirtualVoidMethod(obj, env->GetSuperclass(clazz), MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
return TestResult::PASS("CallNonvirtualVoidMethodA for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Z) return correct value");
}

Просмотреть файл

@ -28,7 +28,7 @@ JNI_OJIAPITest(JNIEnv_CallObjectMethod_3)
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_string", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Ljava/lang/String;");
char *path = "asdf";
jstring jpath=env->NewStringUTF("sdsadasdasd");
jstring value = (jstring)env->CallObjectMethod(obj, MethodID, JNI_TRUE, 0, 'a', MIN_JSHORT, 123, 0, 0, MAX_JDOUBLE, jpath, NULL);
jstring value = (jstring)env->CallObjectMethod(obj, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)jpath, (jobject)NULL);
if(env->GetStringLength(value) == 11){
return TestResult::PASS("CallObjectMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Ljava/lang/String;) return correct value");
}else{

Просмотреть файл

@ -28,7 +28,7 @@ JNI_OJIAPITest(JNIEnv_CallObjectMethod_4)
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_string", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Ljava/lang/String;");
char *path = "asdf";
jstring jpath=env->NewStringUTF("sdsadasdasd");
jstring value = (jstring)env->CallObjectMethod(obj, MethodID, JNI_TRUE, 0, 'a', MIN_JSHORT, 123, 0, 0, MAX_JDOUBLE, NULL, NULL);
jstring value = (jstring)env->CallObjectMethod(obj, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == NULL){
return TestResult::PASS("CallObjectMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Ljava/lang/String;) return correct value");
}else{

Просмотреть файл

@ -37,9 +37,10 @@ JNI_OJIAPITest(JNIEnv_CallObjectMethod_7)
if(arr==NULL){
printf("arr is NULL!\n");
}
jobjectArray value = (jobjectArray)env->CallObjectMethod(obj, MethodID, JNI_TRUE, 0, 'a', MIN_JSHORT, 123, 0, 0, MAX_JDOUBLE, jpath, NULL);
jobjectArray value = (jobjectArray)env->CallObjectMethod(obj, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)jpath, (jobject)arr);
if(value == NULL){
printf("value is NULL!!! \n\n");
return TestResult::FAIL("CallObjectMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)[Ljava/lang/String;) return NULL");
}
jstring str_ret = (jstring)env->GetObjectArrayElement(value, (jsize) 1);
char* str_chars_ret = (char *) env->GetStringUTFChars(str, NULL);

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallShortMethod_3)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_short", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)S");
jshort value = env->CallShortMethod(obj, MethodID, JNI_TRUE, 0, 'a', MAX_JSHORT, 123, 0, 0, MAX_JDOUBLE, NULL, NULL);
jshort value = env->CallShortMethod(obj, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)MAX_JSHORT, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MAX_JSHORT){
return TestResult::PASS("CallShortMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)S) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallShortMethod_4)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_short", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)S");
jshort value = env->CallShortMethod(obj, MethodID, JNI_TRUE, 0, 'a', MIN_JSHORT, 123, 0, 0, MAX_JDOUBLE, NULL, NULL);
jshort value = env->CallShortMethod(obj, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)MIN_JSHORT, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MIN_JSHORT){
return TestResult::PASS("CallShortMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)S) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallVoidMethod_2)
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method2", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)V");
env->CallVoidMethod(obj, MethodID, JNI_TRUE, 0, 'a', 1, 123, 0, 0, 100, NULL, NULL);
env->CallVoidMethod(obj, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
return TestResult::PASS("CallVoidMethodA for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Z) return correct value");
}

Просмотреть файл

@ -27,9 +27,10 @@ JNI_OJIAPITest(JNIEnv_GetMethodID_16)
jclass clazz = env->FindClass("Test3");
if(clazz == NULL){
printf("Class is NULL!!!");
return TestResult::FAIL("GetMethodID: class not found");
}
jmethodID methodID = env->GetMethodID(clazz, "Test_method", "()V");
if(methodID == NULL){
if(methodID != NULL){
return TestResult::PASS("GetMethodID for public method from interface return correct value (0)");
}else{
return TestResult::FAIL("GetMethodID for public method from interface return incorrect value (non-0)");

Просмотреть файл

@ -25,10 +25,18 @@ JNI_OJIAPITest(JNIEnv_GetMethodID_5)
{
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "name_not_exist", "(Ljava/lang/String;)V");
jclass clazz = env->FindClass("Test1");
if(clazz == NULL){
return TestResult::FAIL("Cannot find class");
}
jmethodID MethodID = env->GetMethodID(clazz, "name_not_exist", "(Ljava/lang/String;)V");
printf("ID of method = %d\n", (int)MethodID);
//IMPLEMENT_GetMethodID_METHOD("Test1", "name_not_exist", "(Ljava/lang/String;)V");
//env->CallVoidMethod(obj, MethodID, 10);
if(MethodID == NULL){
if(MethodID == NULL && env->ExceptionOccurred()) {
env->ExceptionDescribe(); //exception should be thrown){
return TestResult::PASS("GetMethodID for not existing name return 0, its correct");
}else{
return TestResult::FAIL("GetMethodID for not existing name doesnt return 0, its incorrect");

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticBooleanMethod_3)
GET_JNI_FOR_TEST
IMPLEMENT_GetStaticMethodID_METHOD("Test1", "Test1_method_bool_static", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Z");
jboolean value = env->CallStaticBooleanMethod(clazz, MethodID, JNI_TRUE, 0, 'a', 1, 123, 0, 0, 100, NULL, NULL);
jboolean value = env->CallStaticBooleanMethod(clazz, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == JNI_TRUE){
return TestResult::PASS("CallStaticBooleanMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Z) return correct value");
}else{

Просмотреть файл

@ -18,6 +18,7 @@
*
* Contributor(s):
*/
#include "JNIEnvTests.h"
#include "CallingStaticMethods.h"
@ -25,8 +26,8 @@ JNI_OJIAPITest(JNIEnv_CallStaticBooleanMethod_4)
{
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_bool_static", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Z");
jboolean value = env->CallStaticBooleanMethod(clazz, MethodID, JNI_FALSE, 0, 'a', 1, 123, 0, 0, 100, NULL, NULL);
IMPLEMENT_GetStaticMethodID_METHOD("Test1", "Test1_method_bool_static", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Z");
jboolean value = env->CallStaticBooleanMethod(clazz, MethodID, (jboolean)JNI_FALSE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == JNI_FALSE){
return TestResult::PASS("CallStaticBooleanMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Z) return correct value");
}else{
@ -35,3 +36,21 @@ JNI_OJIAPITest(JNIEnv_CallStaticBooleanMethod_4)
}
/*
#include "JNIEnvTests.h"
#include "CallingStaticMethods.h"
JNI_OJIAPITest(JNIEnv_CallStaticBooleanMethod_4)
{
GET_JNI_FOR_TEST
IMPLEMENT_GetMethodID_METHOD("Test1", "Test1_method_bool_static", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Z");
jboolean value = env->CallStaticBooleanMethod(clazz, MethodID, (jboolean)JNI_FALSE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == JNI_FALSE){
return TestResult::PASS("CallStaticBooleanMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Z) return correct value");
}else{
return TestResult::FAIL("CallStaticBooleanMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Z) return incorrect value");
}
}
*/

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticByteMethod_3)
GET_JNI_FOR_TEST
IMPLEMENT_GetStaticMethodID_METHOD("Test1", "Test1_method_byte_static", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)B");
jbyte value = env->CallStaticByteMethod(clazz, MethodID, JNI_TRUE, MIN_JBYTE, 'a', 1, 123, 0, 0, 100, NULL, NULL);
jbyte value = env->CallStaticByteMethod(clazz, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MIN_JBYTE){
return TestResult::PASS("CallStaticByteMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)B) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticByteMethod_4)
GET_JNI_FOR_TEST
IMPLEMENT_GetStaticMethodID_METHOD("Test1", "Test1_method_byte_static", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)B");
jbyte value = env->CallStaticByteMethod(clazz, MethodID, JNI_TRUE, MAX_JBYTE, 'a', 1, 123, 0, 0, 100, NULL, NULL);
jbyte value = env->CallStaticByteMethod(clazz, MethodID, (jboolean)JNI_TRUE, (jbyte)MAX_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MAX_JBYTE){
return TestResult::PASS("CallStaticByteMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)B) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticCharMethod_3)
GET_JNI_FOR_TEST
IMPLEMENT_GetStaticMethodID_METHOD("Test1", "Test1_method_char_static", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)C");
jchar value = env->CallStaticCharMethod(clazz, MethodID, JNI_TRUE, MIN_JBYTE, 'a', 1, 123, 0, 0, 100, NULL, NULL);
jchar value = env->CallStaticCharMethod(clazz, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)'a', (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == 'a'){
return TestResult::PASS("CallStaticCharMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)C) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticCharMethod_4)
GET_JNI_FOR_TEST
IMPLEMENT_GetStaticMethodID_METHOD("Test1", "Test1_method_char_static", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)C");
jchar value = env->CallStaticCharMethod(clazz, MethodID, JNI_TRUE, MIN_JBYTE, NULL, 1, 123, 0, 0, 100, NULL, NULL);
jchar value = env->CallStaticCharMethod(clazz, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == 0){
return TestResult::PASS("CallStaticCharMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)C) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticDoubleMethod_3)
GET_JNI_FOR_TEST
IMPLEMENT_GetStaticMethodID_METHOD("Test1", "Test1_method_double_static", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)D");
jdouble value = env->CallStaticDoubleMethod(clazz, MethodID, JNI_TRUE, 0, 'a', 1, 123, 0, 0, MAX_JDOUBLE, NULL, NULL);
jdouble value = env->CallStaticDoubleMethod(clazz, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)MAX_JDOUBLE, (jobject)NULL, (jobject)NULL);
if(value == MAX_JDOUBLE){
return TestResult::PASS("CallStaticDoubleMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)D) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticDoubleMethod_4)
GET_JNI_FOR_TEST
IMPLEMENT_GetStaticMethodID_METHOD("Test1", "Test1_method_double_static", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)D");
jdouble value = env->CallStaticDoubleMethod(clazz, MethodID, JNI_TRUE, 0, 'a', 1, 123, 0, 0, MIN_JDOUBLE, NULL, NULL);
jdouble value = env->CallStaticDoubleMethod(clazz, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)MIN_JDOUBLE, (jobject)NULL, (jobject)NULL);
if(value == MIN_JDOUBLE){
return TestResult::PASS("CallStaticDoubleMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)D) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticFloatMethod_3)
GET_JNI_FOR_TEST
IMPLEMENT_GetStaticMethodID_METHOD("Test1", "Test1_method_float_static", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)F");
jfloat value = env->CallStaticFloatMethod(clazz, MethodID, JNI_TRUE, 0, 'a', 1, 123, 0, MIN_JFLOAT, 100, NULL, NULL);
jfloat value = env->CallStaticFloatMethod(clazz, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)MIN_JFLOAT, (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MIN_JFLOAT){
return TestResult::PASS("CallStaticFloatMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)F) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticFloatMethod_4)
GET_JNI_FOR_TEST
IMPLEMENT_GetStaticMethodID_METHOD("Test1", "Test1_method_float_static", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)F");
jfloat value = env->CallStaticFloatMethod(clazz, MethodID, JNI_TRUE, 0, 'a', 1, 123, 0, MAX_JFLOAT, 100, NULL, NULL);
jfloat value = env->CallStaticFloatMethod(clazz, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)MAX_JFLOAT, (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MAX_JFLOAT){
return TestResult::PASS("CallStaticFloatMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)F) return correct value");
}else{

Просмотреть файл

@ -42,7 +42,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticIntMethod_10)
args[9].l = NULL;
jint value = env->CallStaticIntMethodA(clazz, MethodID, args);
jthrowable excep = env->ExceptionOccurred();
if(value==121){
if(value==0){ //value shouldn't change
if((excep != NULL) && (env->IsInstanceOf(excep, clazz_exp))){
printf("Exception Occurred, it is correct!!!!\n");
return TestResult::PASS("CallStaticIntMethodA for no-modifiers not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)I) return correct value");

Просмотреть файл

@ -42,7 +42,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticIntMethod_12)
args[9].l = NULL;
jint value = env->CallStaticIntMethodA(clazz, MethodID, args);
jthrowable excep = env->ExceptionOccurred();
if(value==121){
if(value==0){
if((excep != NULL) && (env->IsInstanceOf(excep, clazz_exp))){
printf("Exception Occurred, it is correct!!!!\n");
return TestResult::PASS("CallStaticIntMethodA for private inherited from superclass method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)I) return correct value");

Просмотреть файл

@ -42,7 +42,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticIntMethod_13)
args[9].l = NULL;
jint value = env->CallStaticIntMethodA(clazz, MethodID, args);
jthrowable excep = env->ExceptionOccurred();
if(value==121){
if(value==0){
if((excep != NULL) && (env->IsInstanceOf(excep, clazz_exp))){
printf("Exception Occurred, it is correct!!!!\n");
return TestResult::PASS("CallStaticIntMethodA for protected inherited from superclass method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)I) return correct value");

Просмотреть файл

@ -42,7 +42,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticIntMethod_14)
args[9].l = NULL;
jint value = env->CallStaticIntMethodA(clazz, MethodID, args);
jthrowable excep = env->ExceptionOccurred();
if(value==121){
if(value==0){ //value shouldn't change
if((excep != NULL) && (env->IsInstanceOf(excep, clazz_exp))){
printf("Exception Occurred, it is correct!!!!\n");
return TestResult::PASS("CallStaticIntMethodA for no-modifiers inherited from superclass method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)I) return correct value");

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticIntMethod_20)
GET_JNI_FOR_TEST
IMPLEMENT_GetStaticMethodID_METHOD("Test1", "Test1_method_int_static", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)I");
jint value = env->CallStaticIntMethod(clazz, MethodID, JNI_TRUE, 0, 'a', 1, MAX_JINT, 0, 0, MAX_JDOUBLE, NULL, NULL);
jint value = env->CallStaticIntMethod(clazz, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)MAX_JINT, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MAX_JINT){
return TestResult::PASS("CallStaticIntMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)I) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticIntMethod_21)
GET_JNI_FOR_TEST
IMPLEMENT_GetStaticMethodID_METHOD("Test1", "Test1_method_int_static", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)I");
jint value = env->CallStaticIntMethod(clazz, MethodID, JNI_TRUE, 0, 'a', 1, MIN_JINT, 0, 0, MAX_JDOUBLE, NULL, NULL);
jint value = env->CallStaticIntMethod(clazz, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)MIN_JINT, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MIN_JINT){
return TestResult::PASS("CallStaticIntMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)I) return correct value");
}else{

Просмотреть файл

@ -42,7 +42,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticIntMethod_8)
args[9].l = NULL;
jint value = env->CallStaticIntMethodA(clazz, MethodID, args);
jthrowable excep = env->ExceptionOccurred();
if(value==121){
if(value==0){
if((excep != NULL) && (env->IsInstanceOf(excep, clazz_exp))){
printf("Exception Occurred, it is correct!!!!\n");
return TestResult::PASS("CallStaticIntMethodA for private not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)I) return correct value");

Просмотреть файл

@ -42,7 +42,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticIntMethod_9)
args[9].l = NULL;
jint value = env->CallStaticIntMethodA(clazz, MethodID, args);
jthrowable excep = env->ExceptionOccurred();
if(value==121){
if(value==0){
if((excep != NULL) && (env->IsInstanceOf(excep, clazz_exp))){
printf("Exception Occurred, it is correct!!!!\n");
return TestResult::PASS("CallStaticIntMethodA for protected not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)I) return correct value");

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticLongMethod_3)
GET_JNI_FOR_TEST
IMPLEMENT_GetStaticMethodID_METHOD("Test1", "Test1_method_long_static", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)J");
jlong value = env->CallStaticLongMethod(clazz, MethodID, JNI_TRUE, 0, 'a', 1, 123, MAX_JLONG, 0, MAX_JDOUBLE, NULL, NULL);
jlong value = env->CallStaticLongMethod(clazz, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)MAX_JLONG, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MAX_JLONG){
return TestResult::PASS("CallStaticLongMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)J) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticLongMethod_4)
GET_JNI_FOR_TEST
IMPLEMENT_GetStaticMethodID_METHOD("Test1", "Test1_method_long_static", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)J");
jlong value = env->CallStaticLongMethod(clazz, MethodID, JNI_TRUE, 0, 'a', 1, 123, MIN_JLONG, 0, MAX_JDOUBLE, NULL, NULL);
jlong value = env->CallStaticLongMethod(clazz, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)MIN_JLONG, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MIN_JLONG){
return TestResult::PASS("CallStaticLongMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)J) return correct value");
}else{

Просмотреть файл

@ -28,7 +28,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticObjectMethod_3)
IMPLEMENT_GetStaticMethodID_METHOD("Test1", "Test1_method_string_static", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Ljava/lang/String;");
char *path = "asdf";
jstring jpath=env->NewStringUTF("sdsadasdasd");
jstring value = (jstring)env->CallStaticObjectMethod(clazz, MethodID, JNI_TRUE, 0, 'a', MIN_JSHORT, 123, 0, 0, MAX_JDOUBLE, jpath, NULL);
jstring value = (jstring)env->CallStaticObjectMethod(clazz, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)jpath, (jobject)NULL);
if(env->GetStringLength(value) == 11){
return TestResult::PASS("CallStaticObjectMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Ljava/lang/String;) return correct value");
}else{

Просмотреть файл

@ -28,7 +28,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticObjectMethod_4)
IMPLEMENT_GetStaticMethodID_METHOD("Test1", "Test1_method_string_static", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Ljava/lang/String;");
char *path = "asdf";
jstring jpath=env->NewStringUTF("sdsadasdasd");
jstring value = (jstring)env->CallStaticObjectMethod(clazz, MethodID, JNI_TRUE, 0, 'a', MIN_JSHORT, 123, 0, 0, MAX_JDOUBLE, NULL, NULL);
jstring value = (jstring)env->CallStaticObjectMethod(clazz, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == NULL){
return TestResult::PASS("CallStaticObjectMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Ljava/lang/String;) return correct value");
}else{

Просмотреть файл

@ -37,9 +37,10 @@ JNI_OJIAPITest(JNIEnv_CallStaticObjectMethod_7)
if(arr==NULL){
printf("arr is NULL!\n");
}
jobjectArray value = (jobjectArray)env->CallStaticObjectMethod(clazz, MethodID, JNI_TRUE, 0, 'a', MIN_JSHORT, 123, 0, 0, MAX_JDOUBLE, jpath, NULL);
jobjectArray value = (jobjectArray)env->CallStaticObjectMethod(clazz, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)arr);
if(value == NULL){
printf("value is NULL!!! \n\n");
return TestResult::FAIL("CallObjectMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)[Ljava/lang/String;) return NULL");
}
jstring str_ret = (jstring)env->GetObjectArrayElement(value, (jsize) 1);
char* str_chars_ret = (char *) env->GetStringUTFChars(str, NULL);

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticShortMethod_3)
GET_JNI_FOR_TEST
IMPLEMENT_GetStaticMethodID_METHOD("Test1", "Test1_method_short_static", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)S");
jshort value = env->CallStaticShortMethod(clazz, MethodID, JNI_TRUE, 0, 'a', MAX_JSHORT, 123, 0, 0, MAX_JDOUBLE, NULL, NULL);
jshort value = env->CallStaticShortMethod(clazz, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)MAX_JSHORT, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MAX_JSHORT){
return TestResult::PASS("CallStaticShortMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)S) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticShortMethod_4)
GET_JNI_FOR_TEST
IMPLEMENT_GetStaticMethodID_METHOD("Test1", "Test1_method_short_static", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)S");
jshort value = env->CallStaticShortMethod(clazz, MethodID, JNI_TRUE, 0, 'a', MIN_JSHORT, 123, 0, 0, MAX_JDOUBLE, NULL, NULL);
jshort value = env->CallStaticShortMethod(clazz, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)MIN_JSHORT, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
if(value == MIN_JSHORT){
return TestResult::PASS("CallStaticShortMethod for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)S) return correct value");
}else{

Просмотреть файл

@ -26,7 +26,7 @@ JNI_OJIAPITest(JNIEnv_CallStaticVoidMethod_2)
GET_JNI_FOR_TEST
IMPLEMENT_GetStaticMethodID_METHOD("Test1", "Test1_method2_static", "(ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)V");
env->CallStaticVoidMethod(clazz, MethodID, JNI_TRUE, 0, 'a', 1, 123, 0, 0, 100, NULL, NULL);
env->CallStaticVoidMethod(clazz, MethodID, (jboolean)JNI_TRUE, (jbyte)MIN_JBYTE, (jchar)0, (jshort)1, (jint)123, (jlong)20, (jfloat)10., (jdouble)100, (jobject)NULL, (jobject)NULL);
return TestResult::PASS("CallStaticVoidMethodA for public not inherited method (sig = (ZBCSIJFDLjava/lang/String;[Ljava/lang/String;)Z) return correct value");
}

Просмотреть файл

@ -24,12 +24,12 @@
JNI_OJIAPITest(JNIEnv_GetStaticMethodID_12)
{
GET_JNI_FOR_TEST
IMPLEMENT_GetStaticMethodID_METHOD("Test1", "Get_int_field_static", "()I");
IMPLEMENT_GetStaticMethodID_METHOD("Test1", "Get_static_int_field", "()I");
if(clazz == NULL){
printf("Class is NULL!!!");
}
jint value = env->CallStaticIntMethod(clazz, MethodID, NULL);
if ((value == 0) && (MethodID != NULL)){
if ((value == 1) && (MethodID != NULL)){
return TestResult::PASS("GetStaticMethodID for public static method from non-abstract class, not inherited return correct value");
}else{
return TestResult::FAIL("GetStaticMethodID for public static method from non-abstract class, not inherited return incorrect value");

Просмотреть файл

@ -30,10 +30,7 @@ JNI_OJIAPITest(JNIEnv_DeleteGlobalRef_1)
jobject obj_ref = env->NewGlobalRef(obj);
env->DeleteGlobalRef(obj_ref);
if(obj_ref== NULL){
return TestResult::PASS("DeleteGlobalRef work properly with correct parameter");
}else{
return TestResult::FAIL("DeleteGlobalRef dont work properly with correct parameter");
}
//no ideas how to check that it works ...
return TestResult::PASS("DeleteGlobalRef work properly with correct parameter");
}

Просмотреть файл

@ -29,9 +29,8 @@ JNI_OJIAPITest(JNIEnv_IsSameObject_1)
jclass clazz1 = env->FindClass("Test1");
jobject obj1 = env->AllocObject(clazz1);
jobject obj2 = env->AllocObject(clazz1);
if(env->IsSameObject(obj1, obj2) ){
if(env->IsSameObject(obj1, obj1) == JNI_TRUE){
return TestResult::PASS("IsSameObject(obj, obj) return correct value");
}else{
return TestResult::FAIL("IsSameObject(obj, obj) return incorrect value");

Просмотреть файл

@ -31,7 +31,7 @@ JNI_OJIAPITest(JNIEnv_IsSameObject_2)
jobject obj2 = env->AllocObject(clazz1);
jobject obj = env->AllocObject(clazz);
if(!env->IsSameObject(obj, obj1)){
if(env->IsSameObject(obj1, obj2) == JNI_TRUE){
return TestResult::FAIL("IsSameObject(obj, another obj) return incorrect value");
}else{
return TestResult::PASS("IsSameObject(obj, another obj) return correct value");

Просмотреть файл

@ -31,7 +31,7 @@ JNI_OJIAPITest(JNIEnv_IsSameObject_3)
jobject obj2 = env->AllocObject(clazz1);
jobject obj = env->AllocObject(clazz);
if(env->IsSameObject(obj, NULL) ){
if(env->IsSameObject(obj, NULL) == JNI_TRUE){
return TestResult::FAIL("IsSameObject(obj, NULL) return incorrect value");
}else{
return TestResult::PASS("IsSameObject(obj, NULL) return correct value");

Просмотреть файл

@ -31,7 +31,7 @@ JNI_OJIAPITest(JNIEnv_IsSameObject_4)
jobject obj2 = env->AllocObject(clazz1);
jobject obj = env->AllocObject(clazz);
if(env->IsSameObject(NULL, NULL) ){
if(env->IsSameObject(NULL, NULL) == JNI_FALSE){
return TestResult::FAIL("IsSameObject(NULL, NULL) return incorrect value");
}else{
return TestResult::PASS("IsSameObject(NULL, NULL) return correct value");

Просмотреть файл

@ -23,7 +23,7 @@
//mozilla specific headers
#include "nspr.h"
#include "nsString.h"
#include "nsString2.h"
#define OJI_TEST_RESULTS "OJITestResults.txt"
#define OJI_TESTS_LIST "OJITests.lst"
@ -99,9 +99,20 @@ enum StatusValue {
class TestResult {
public:
/*
static TestResult* PASS(nsString comment) {
return new TestResult(PASS_value, comment);
}
*/
/** added by raju */
static TestResult* PASS(char *comment) {
char *msg = (char*)calloc(1, PL_strlen(comment)+1024);
sprintf(msg, "Method %s", comment);
CBufDescriptor *bufDescr = new CBufDescriptor(msg, PR_FALSE, PL_strlen(msg)+1, PL_strlen(msg));
nsString *str = new nsAutoString(*bufDescr);
return new TestResult(PASS_value, *str);
}
static TestResult* FAIL(nsString comment) {
return new TestResult(FAIL_value, comment);
@ -110,15 +121,24 @@ public:
static TestResult* FAIL(char *method, nsresult rc) {
char *comment = (char*)calloc(1, PL_strlen(method)+1024);
sprintf(comment, "Method %s returned %X", method, rc);
return new TestResult(FAIL_value, comment);
CBufDescriptor *bufDescr = new CBufDescriptor(comment, PR_FALSE, PL_strlen(comment)+1, PL_strlen(comment));
nsString *str = new nsAutoString(*bufDescr);
return new TestResult(FAIL_value, *str);
}
static TestResult* FAIL(char *method, char* comment, nsresult rc) {
char *outComment = (char*)calloc(1, PL_strlen(method)+1024);
sprintf(outComment, "Method %s returned %X: %s", method, rc, comment);
return new TestResult(FAIL_value, outComment);
CBufDescriptor *bufDescr = new CBufDescriptor(comment, PR_FALSE, PL_strlen(comment)+1, PL_strlen(comment));
nsString *str = new nsAutoString(*bufDescr);
return new TestResult(FAIL_value, *str);
}
static TestResult* FAIL(char *comment) {
CBufDescriptor *bufDescr = new CBufDescriptor(comment, PR_FALSE, PL_strlen(comment)+1, PL_strlen(comment));
nsString *str = new nsAutoString(*bufDescr);
return new TestResult(FAIL_value, *str);
}
TestResult ( StatusValue status, nsString comment) {
this->status = status;