Home | History | Annotate | Download | only in runtime

Lines Matching defs:env_

44     vm_->AttachCurrentThread(&env_, NULL);
46 ScopedLocalRef<jclass> aioobe(env_,
47 env_->FindClass("java/lang/ArrayIndexOutOfBoundsException"));
49 aioobe_ = reinterpret_cast<jclass>(env_->NewGlobalRef(aioobe.get()));
51 ScopedLocalRef<jclass> ase(env_, env_->FindClass("java/lang/ArrayStoreException"));
53 ase_ = reinterpret_cast<jclass>(env_->NewGlobalRef(ase.get()));
55 ScopedLocalRef<jclass> sioobe(env_,
56 env_->FindClass("java/lang/StringIndexOutOfBoundsException"));
58 sioobe_ = reinterpret_cast<jclass>(env_->NewGlobalRef(sioobe.get()));
63 env_->DeleteGlobalRef(aioobe_);
67 env_->DeleteGlobalRef(ase_);
71 env_->DeleteGlobalRef(sioobe_);
720 JNIEnv* env_;
727 jclass c = env_->FindClass("java/lang/String");
729 jobject o = env_->AllocObject(c);
733 ASSERT_TRUE(env_->IsInstanceOf(o, c));
736 ASSERT_EQ(0, env_->GetIntField(o, env_->GetFieldID(c, "count", "I")));
737 ASSERT_EQ(0, env_->GetIntField(o, env_->GetFieldID(c, "offset", "I")));
738 ASSERT_TRUE(env_->GetObjectField(o, env_->GetFieldID(c, "value", "[C")) == NULL);
742 ASSERT_EQ(JNI_VERSION_1_6, env_->GetVersion());
746 EXPECT_TRUE(env_->FindClass(NAME) != NULL); \
747 EXPECT_FALSE(env_->ExceptionCheck())
750 EXPECT_TRUE(env_->FindClass(NAME) == NULL); \
751 EXPECT_TRUE(env_->ExceptionCheck()); \
752 env_->ExceptionClear()
793 EXPECT_TRUE(env_->ExceptionCheck()); \
794 jthrowable exception = env_->ExceptionOccurred(); \
796 env_->ExceptionClear(); \
797 EXPECT_TRUE(env_->IsInstanceOf(exception, exception_class)); \
801 jclass jlnsfe = env_->FindClass("java/lang/NoSuchFieldError");
803 jclass c = env_->FindClass("java/lang/String");
807 jfieldID fid = env_->GetFieldID(c, "count", "J");
812 fid = env_->GetFieldID(c, "count", "Lrod/jane/freddy;");
817 fid = env_->GetFieldID(c, "Count", "I");
822 fid = env_->GetFieldID(c, "count", "I");
825 EXPECT_FALSE(env_->ExceptionCheck());
828 c = env_->FindClass("java/lang/StringBuilder");
829 fid = env_->GetFieldID(c, "count", "I");
832 EXPECT_FALSE(env_->ExceptionCheck());
835 fid = env_->GetFieldID(c, "CASE_INSENSITIVE_ORDER", "Ljava/util/Comparator;");
841 jclass jlnsfe = env_->FindClass("java/lang/NoSuchFieldError");
843 jclass c = env_->FindClass("java/lang/String");
847 jfieldID fid = env_->GetStaticFieldID(c, "CASE_INSENSITIVE_ORDER", "J");
852 fid = env_->GetStaticFieldID(c, "CASE_INSENSITIVE_ORDER", "Lrod/jane/freddy;");
857 fid = env_->GetStaticFieldID(c, "cASE_INSENSITIVE_ORDER", "Ljava/util/Comparator;");
862 fid = env_->GetStaticFieldID(c, "CASE_INSENSITIVE_ORDER", "Ljava/util/Comparator;");
865 EXPECT_FALSE(env_->ExceptionCheck());
868 fid = env_->GetStaticFieldID(c, "count", "I");
874 jclass jlobject = env_->FindClass("java/lang/Object");
875 jclass jlstring = env_->FindClass("java/lang/String");
876 jclass jlnsme = env_->FindClass("java/lang/NoSuchMethodError");
879 ASSERT_FALSE(env_->ExceptionCheck());
883 jmethodID method = env_->GetMethodID(jlobject, "foo", "()V");
888 method = env_->GetMethodID(jlobject, "equals", "(Ljava/lang/Object;)Z");
890 EXPECT_FALSE(env_->ExceptionCheck());
894 method = env_->GetMethodID(jlstring, "valueOf", "(I)Ljava/lang/String;");
899 method = env_->GetMethodID(jlnsme, "<init>", "(Ljava/lang/String;)V");
901 EXPECT_FALSE(env_->ExceptionCheck());
905 jclass jlobject = env_->FindClass("java/lang/Object");
906 jclass jlnsme = env_->FindClass("java/lang/NoSuchMethodError");
909 ASSERT_FALSE(env_->ExceptionCheck());
913 jmethodID method = env_->GetStaticMethodID(jlobject, "foo", "()V");
919 method = env_->GetStaticMethodID(jlobject, "equals", "(Ljava/lang/Object;)Z");
924 jclass jlstring = env_->FindClass("java/lang/String");
925 method = env_->GetStaticMethodID(jlstring, "valueOf",
928 EXPECT_FALSE(env_->ExceptionCheck());
932 jclass jlrField = env_->FindClass("java/lang/reflect/Field");
933 jclass c = env_->FindClass("java/lang/String");
935 jfieldID fid = env_->GetFieldID(c, "count", "I");
938 jobject field = env_->ToReflectedField(c, fid, JNI_FALSE);
940 ASSERT_TRUE(env_->IsInstanceOf(field, jlrField));
942 jfieldID fid2 = env_->FromReflectedField(field);
945 jstring s = env_->NewStringUTF("poop");
946 ASSERT_EQ(4, env_->GetIntField(s, fid2));
950 jclass jlrMethod = env_->FindClass("java/lang/reflect/Method");
951 jclass c = env_->FindClass("java/lang/String");
953 jmethodID mid = env_->GetMethodID(c, "length", "()I");
956 jobject method = env_->ToReflectedMethod(c, mid, JNI_FALSE);
958 ASSERT_TRUE(env_->IsInstanceOf(method, jlrMethod));
960 jmethodID mid2 = env_->FromReflectedMethod(method);
963 jstring s = env_->NewStringUTF("poop");
968 ASSERT_EQ(0, env_->CallIntMethod(s, mid2));
976 jclass jlobject = env_->FindClass("java/lang/Object");
977 jclass jlnsme = env_->FindClass("java/lang/NoSuchMethodError");
980 ASSERT_FALSE(env_->ExceptionCheck());
986 env_->RegisterNatives(jlobject, methods, 1);
993 env_->RegisterNatives(jlobject, methods, 1);
1000 env_->RegisterNatives(jlobject, methods, 1);
1002 EXPECT_FALSE(env_->ExceptionCheck());
1004 env_
1016 scalar_type ## Array a = env_->new_fn(size); \
1018 EXPECT_TRUE(env_->IsInstanceOf(a, env_->FindClass(expected_class_descriptor))); \
1019 EXPECT_EQ(size, env_->GetArrayLength(a)); \
1021 env_->get_region_fn(a, -1, 1, NULL); \
1023 env_->set_region_fn(a, -1, 1, NULL); \
1026 env_->get_region_fn(a, 0, -1, NULL); \
1028 env_->set_region_fn(a, 0, -1, NULL); \
1031 env_->get_region_fn(a, size - 1, size, NULL); \
1033 env_->set_region_fn(a, size - 1, size, NULL); \
1041 env_->set_region_fn(a, 0, size, &src_buf[0]); \
1043 env_->get_region_fn(a, 1, size - 2, &dst_buf[1]); \
1047 env_->get_region_fn(a, 0, 1, &dst_buf[0]); \
1048 env_->get_region_fn(a, size - 1, 1, &dst_buf[size - 1]); \
1052 env_->get_region_fn(a, 0, size, &dst_buf[0]); \
1056 void* v = env_->GetPrimitiveArrayCritical(a, NULL); \
1059 env_->ReleasePrimitiveArrayCritical(a, v, 0); \
1061 scalar_type* xs = env_->get_elements_fn(a, NULL); \
1064 env_->release_elements_fn(a, xs, 0); \
1105 jclass element_class = env_->FindClass("java/lang/String");
1107 jclass array_class = env_->FindClass("[Ljava/lang/String;");
1112 a = env_->NewObjectArray(0, element_class, NULL);
1114 EXPECT_TRUE(env_->IsInstanceOf(a, array_class));
1115 EXPECT_EQ(0, env_->GetArrayLength(a));
1117 a = env_->NewObjectArray(1, element_class, NULL);
1119 EXPECT_TRUE(env_->IsInstanceOf(a, array_class));
1120 EXPECT_EQ(1, env_->GetArrayLength(a));
1121 EXPECT_TRUE(env_->IsSameObject(env_->GetObjectArrayElement(a, 0), NULL));
1123 jstring s = env_->NewStringUTF("poop");
1124 a = env_->NewObjectArray(2, element_class, s);
1126 EXPECT_TRUE(env_->IsInstanceOf(a, array_class));
1127 EXPECT_EQ(2, env_->GetArrayLength(a));
1128 EXPECT_TRUE(env_->IsSameObject(env_->GetObjectArrayElement(a, 0), s));
1129 EXPECT_TRUE(env_->IsSameObject(env_->GetObjectArrayElement(a, 1), s));
1137 jclass string_class = env_->FindClass("java/lang/String");
1139 jclass class_class = env_->FindClass("java/lang/Class");
1142 jstring s = env_->NewStringUTF("poop");
1143 jclass c = env_->GetObjectClass(s);
1144 ASSERT_TRUE(env_->IsSameObject(string_class, c));
1146 jclass c2 = env_->GetObjectClass(c);
1147 ASSERT_TRUE(env_->IsSameObject(class_class, env_->GetObjectClass(c2)));
1151 jclass object_class = env_->FindClass("java/lang/Object");
1153 jclass string_class = env_->FindClass("java/lang/String");
1155 jclass runnable_interface = env_->FindClass("java/lang/Runnable");
1157 ASSERT_TRUE(env_->IsSameObject(object_class, env_->GetSuperclass(string_class)));
1158 ASSERT_TRUE(env_->GetSuperclass(object_class) == NULL);
1159 ASSERT_TRUE(env_->IsSameObject(object_class, env_->GetSuperclass(runnable_interface)));
1163 jclass object_class = env_->FindClass("java/lang/Object");
1165 jclass string_class = env_->FindClass("java/lang/String");
1168 ASSERT_TRUE(env_->IsAssignableFrom(object_class, string_class));
1169 ASSERT_FALSE(env_->IsAssignableFrom(string_class, object_class));
1173 jclass local = env_->FindClass("java/lang/Object");
1175 EXPECT_EQ(JNILocalRefType, env_->GetObjectRefType(local));
1177 jobject global = env_->NewGlobalRef(local);
1178 EXPECT_EQ(JNIGlobalRefType, env_->GetObjectRefType(global));
1180 jweak weak_global = env_->NewWeakGlobalRef(local);
1181 EXPECT_EQ(JNIWeakGlobalRefType, env_->GetObjectRefType(weak_global));
1184 EXPECT_EQ(JNIInvalidRefType, env_->GetObjectRefType(invalid));
1190 EXPECT_TRUE(env_->NewStringUTF(NULL) == NULL);
1193 s = env_->NewStringUTF("");
1195 EXPECT_EQ(0, env_->GetStringLength(s));
1196 EXPECT_EQ(0, env_->GetStringUTFLength(s));
1197 s = env_->NewStringUTF("hello");
1199 EXPECT_EQ(5, env_->GetStringLength(s));
1200 EXPECT_EQ(5, env_->GetStringUTFLength(s));
1208 s = env_->NewString(chars, 0);
1210 EXPECT_EQ(0, env_->GetStringLength(s));
1211 EXPECT_EQ(0, env_->GetStringUTFLength(s));
1212 s = env_->NewString(chars, 2);
1214 EXPECT_EQ(2, env_->GetStringLength(s));
1215 EXPECT_EQ(2, env_->GetStringUTFLength(s));
1221 jstring s = env_->NewString(NULL, 0);
1223 EXPECT_EQ(0, env_->GetStringLength(s));
1228 ASSERT_DEATH(env_->NewString(NULL, 1), "");
1236 jstring s = env_->NewStringUTF("hello");
1239 env_->GetStringRegion(s, -1, 0, NULL);
1241 env_->GetStringRegion(s, 0, -1, NULL);
1243 env_->GetStringRegion(s, 0, 10, NULL);
1245 env_->GetStringRegion(s, 10, 1, NULL);
1249 env_->GetStringRegion(s, 1, 2, &chars[1]);
1255 env_->GetStringUTFRegion(s, -1, 0, NULL);
1257 env_->GetStringUTFRegion(s, 0, -1, NULL);
1259 env_->GetStringUTFRegion(s, 0, 10, NULL);
1261 env_->GetStringUTFRegion(s, 10, 1, NULL);
1265 env_->GetStringUTFRegion(s, 1, 2, &bytes[1]);
1276 EXPECT_TRUE(env_->GetStringUTFChars(NULL, NULL) == NULL);
1280 jstring s = env_->NewStringUTF("hello");
1283 const char* utf = env_->GetStringUTFChars(s, NULL);
1285 env_->ReleaseStringUTFChars(s, utf);
1288 utf = env_->GetStringUTFChars(s, &is_copy);
1291 env_->ReleaseStringUTFChars(s, utf);
1295 jstring s = env_->NewStringUTF("hello");
1299 const jchar* chars = env_->GetStringChars(s, NULL);
1305 env_->ReleaseStringChars(s, chars);
1308 chars = env_->GetStringChars(s, &is_copy);
1315 env_->ReleaseStringChars(s, chars);
1319 jstring s = env_->NewStringUTF("hello");
1323 const jchar* chars = env_->GetStringCritical(s, NULL);
1329 env_->ReleaseStringCritical(s, chars);
1332 chars = env_->GetStringCritical(s, &is_copy);
1339 env_->ReleaseStringCritical(s, chars);
1343 jclass java_lang_Class = env_->FindClass("java/lang/Class");
1346 jobjectArray array = env_->NewObjectArray(1, java_lang_Class, NULL);
1348 EXPECT_TRUE(env_->GetObjectArrayElement(array, 0) == NULL);
1349 env_->SetObjectArrayElement(array, 0, java_lang_Class);
1350 EXPECT_TRUE(env_->IsSameObject(env_->GetObjectArrayElement(array, 0), java_lang_Class));
1353 env_->SetObjectArrayElement(array, -1, java_lang_Class);
1357 env_->SetObjectArrayElement(array, 1, java_lang_Class);
1361 env_->SetObjectArrayElement(array, 0, env_->NewStringUTF("not a jclass!"));
1367 jfieldID fid = env_->GetStaticFieldID(c, field_name, sig); \
1369 env_->SetStatic ## type ## Field(c, fid, value1); \
1370 EXPECT_TRUE(value1 == env_->GetStatic ## type ## Field(c, fid)); \
1371 env_->SetStatic ## type ## Field(c, fid, value2); \
1372 EXPECT_TRUE(value2 == env_->GetStatic ## type ## Field(c, fid)); \
1377 jfieldID fid = env_->GetFieldID(c, field_name, sig); \
1379 env_->Set ## type ## Field(instance, fid, value1); \
1380 EXPECT_TRUE(value1 == env_->Get ## type ## Field(instance, fid)); \
1381 env_->Set ## type ## Field(instance, fid, value2); \
1382 EXPECT_TRUE(value2 == env_->Get ## type ## Field(instance, fid)); \
1393 jclass c = env_->FindClass("AllFields");
1395 jobject o = env_->AllocObject(c);
1422 jclass c = env_->FindClass("AllFields");
1424 jobject o = env_->AllocObject(c);
1427 jstring s1 = env_->NewStringUTF("hello");
1429 jstring s2 = env_->NewStringUTF("world");
1432 jfieldID s_fid = env_->GetStaticFieldID(c, "sObject", "Ljava/lang/Object;");
1434 jfieldID i_fid = env_->GetFieldID(c, "iObject", "Ljava/lang/Object;");
1437 env_->SetStaticObjectField(c, s_fid, s1);
1438 ASSERT_TRUE(env_->IsSameObject(s1, env_->GetStaticObjectField(c, s_fid)));
1439 env_->SetStaticObjectField(c, s_fid, s2);
1440 ASSERT_TRUE(env_->IsSameObject(s2, env_->GetStaticObjectField(c, s_fid)));
1442 env_->SetObjectField(o, i_fid, s1);
1443 ASSERT_TRUE(env_->IsSameObject(s1, env_->GetObjectField(o, i_fid)));
1444 env_->SetObjectField(o, i_fid, s2);
1445 ASSERT_TRUE(env_->IsSameObject(s2, env_->GetObjectField(o, i_fid)));
1450 EXPECT_TRUE(env_->NewLocalRef(NULL) == NULL);
1454 jstring s = env_->NewStringUTF("");
1456 jobject o = env_->NewLocalRef(s);
1460 EXPECT_EQ(JNILocalRefType, env_->GetObjectRefType(o));
1464 env_->DeleteLocalRef(NULL);
1468 jstring s = env_->NewStringUTF("");
1470 env_->DeleteLocalRef(s);
1475 env_->DeleteLocalRef(s);
1482 s = env_->NewStringUTF("");
1484 jobject o = env_->NewLocalRef(s);
1487 env_->DeleteLocalRef(s);
1488 env_->DeleteLocalRef(o);
1496 ASSERT_EQ(JNI_OK, env_->PushLocalFrame(0));
1497 env_->PopLocalFrame(NULL);
1500 ASSERT_EQ(JNI_ERR, env_->PushLocalFrame(-1));
1503 ASSERT_EQ(JNI_ERR, env_->PushLocalFrame(8192));
1507 jobject original = env_->NewStringUTF("");
1512 ScopedObjectAccess soa(env_);
1515 ASSERT_EQ(JNI_OK, env_->PushLocalFrame(4));
1516 outer = env_->NewLocalRef(original);
1519 ASSERT_EQ(JNI_OK, env_->PushLocalFrame(4));
1520 inner1 = env_->NewLocalRef(outer);
1521 inner2 = env_->NewStringUTF("survivor");
1523 env_->PopLocalFrame(inner2);
1526 EXPECT_EQ(JNILocalRefType, env_->GetObjectRefType(original));
1527 EXPECT_EQ(JNILocalRefType, env_->GetObjectRefType(outer));
1528 EXPECT_EQ(JNIInvalidRefType, env_->GetObjectRefType(inner1));
1532 EXPECT_EQ(JNIInvalidRefType, env_->GetObjectRefType(inner2));
1534 JNIEnvExt* env = reinterpret_cast<JNIEnvExt*>(env_);
1537 env_->PopLocalFrame(NULL);
1539 EXPECT_EQ(JNILocalRefType, env_->GetObjectRefType(original));
1540 EXPECT_EQ(JNIInvalidRefType, env_->GetObjectRefType(outer));
1541 EXPECT_EQ(JNIInvalidRefType, env_->GetObjectRefType(inner1));
1542 EXPECT_EQ(JNIInvalidRefType, env_->GetObjectRefType(inner2));
1546 EXPECT_TRUE(env_->NewGlobalRef(NULL) == NULL);
1550 jstring s = env_->NewStringUTF("");
1552 jobject o = env_->NewGlobalRef(s);
1560 env_->DeleteGlobalRef(NULL);
1564 jstring s = env_->NewStringUTF("");
1567 jobject o = env_->NewGlobalRef(s);
1569 env_->DeleteGlobalRef(o);
1574 env_->DeleteGlobalRef(o);
1581 jobject o1 = env_->NewGlobalRef(s);
1583 jobject o2 = env_->NewGlobalRef(s);
1586 env_->DeleteGlobalRef(o1);
1587 env_->DeleteGlobalRef(o2);
1591 EXPECT_TRUE(env_->NewWeakGlobalRef(NULL) == NULL);
1595 jstring s = env_->NewStringUTF("");
1597 jobject o = env_->NewWeakGlobalRef(s);
1605 env_->DeleteWeakGlobalRef(NULL);
1609 jstring s = env_->NewStringUTF("");
1612 jobject o = env_->NewWeakGlobalRef(s);
1614 env_->DeleteWeakGlobalRef(o);
1619 env_->DeleteWeakGlobalRef(o);
1626 jobject o1 = env_->NewWeakGlobalRef(s);
1628 jobject o2 = env_->NewWeakGlobalRef(s);
1631 env_->DeleteWeakGlobalRef(o1);
1632 env_->DeleteWeakGlobalRef(o2);
1806 EXPECT_EQ(JNI_ERR, env_->Throw(NULL));
1808 jclass exception_class = env_->FindClass("java/lang/RuntimeException");
1810 jthrowable exception = reinterpret_cast<jthrowable>(env_->AllocObject(exception_class));
1813 EXPECT_EQ(JNI_OK, env_->Throw(exception));
1814 EXPECT_TRUE(env_->ExceptionCheck());
1815 jthrowable thrown_exception = env_->ExceptionOccurred();
1816 env_->ExceptionClear();
1817 EXPECT_TRUE(env_->IsSameObject(exception, thrown_exception));
1821 EXPECT_EQ(JNI_ERR, env_->Throw(NULL));
1823 jclass exception_class = env_->FindClass("java/lang/RuntimeException");
1828 EXPECT_EQ(JNI_OK, env_->ThrowNew(exception_class, "hello world"));
1829 EXPECT_TRUE(env_->ExceptionCheck());
1830 thrown_exception = env_->ExceptionOccurred();
1831 env_->ExceptionClear();
1832 EXPECT_TRUE(env_->IsInstanceOf(thrown_exception, exception_class));
1834 EXPECT_EQ(JNI_OK, env_->ThrowNew(exception_class, NULL));
1835 EXPECT_TRUE(env_->ExceptionCheck());
1836 thrown_exception = env_->ExceptionOccurred();
1837 env_->ExceptionClear();
1838 EXPECT_TRUE(env_->IsInstanceOf(thrown_exception, exception_class));
1843 jclass buffer_class = env_->FindClass("java/nio/Buffer");
1847 jobject buffer = env_->NewDirectByteBuffer(bytes, sizeof(bytes));
1849 ASSERT_TRUE(env_->IsInstanceOf(buffer, buffer_class));
1850 ASSERT_TRUE(env_->GetDirectBufferAddress(buffer) == bytes);
1851 ASSERT_TRUE(env_->GetDirectBufferCapacity(buffer) == sizeof(bytes));
1856 jclass object_class = env_->FindClass("java/lang/Object");
1858 jobject object = env_->AllocObject(object_class);
1862 jclass imse_class = env_->FindClass("java/lang/IllegalMonitorStateException");
1868 env_->MonitorExit(object);
1869 EXPECT_TRUE(env_->ExceptionCheck());
1870 thrown_exception = env_->ExceptionOccurred();
1871 env_->ExceptionClear();
1872 EXPECT_TRUE(env_->IsInstanceOf(thrown_exception, imse_class));
1875 env_->MonitorEnter(object);
1876 EXPECT_FALSE(env_->ExceptionCheck());
1878 env_->MonitorExit(object);
1879 EXPECT_FALSE(env_->ExceptionCheck());
1884 env_->MonitorEnter(object);
1885 EXPECT_FALSE(env_->ExceptionCheck());
1889 env_->MonitorExit(object);
1890 EXPECT_FALSE(env_->ExceptionCheck());
1894 env_->MonitorExit(object);
1895 EXPECT_TRUE(env_->ExceptionCheck());
1896 thrown_exception = env_->ExceptionOccurred();
1897 env_->ExceptionClear();
1898 EXPECT_TRUE(env_->IsInstanceOf(thrown_exception, imse_class));
1903 env_->MonitorEnter(NULL);
1906 env_->MonitorExit(NULL);
1918 vm_->AttachCurrentThread(&env_, NULL); // need attached thread for CommonTest::TearDown