Add JNI GetArrayLength and start throwing from FindClass.
Change-Id: I080a6ffc5496b47454273acd58c230bda5e04cdd
diff --git a/src/class_linker_test.cc b/src/class_linker_test.cc
index 2583fcf..4fb433f 100644
--- a/src/class_linker_test.cc
+++ b/src/class_linker_test.cc
@@ -12,8 +12,10 @@
class ClassLinkerTest : public CommonTest {
protected:
- void AssertNonExistantClass(const StringPiece& descriptor) {
+ void AssertNonExistentClass(const StringPiece& descriptor) {
EXPECT_TRUE(class_linker_->FindSystemClass(descriptor) == NULL);
+ EXPECT_TRUE(Thread::Current()->IsExceptionPending());
+ Thread::Current()->ClearException();
}
void AssertPrimitiveClass(const StringPiece& descriptor) {
@@ -218,10 +220,8 @@
};
TEST_F(ClassLinkerTest, FindClassNonexistent) {
- Class* result1 = class_linker_->FindSystemClass("NoSuchClass;");
- EXPECT_TRUE(result1 == NULL);
- Class* result2 = class_linker_->FindSystemClass("LNoSuchClass;");
- EXPECT_TRUE(result2 == NULL);
+ AssertNonExistentClass("NoSuchClass;");
+ AssertNonExistentClass("LNoSuchClass;");
}
TEST_F(ClassLinkerTest, FindClassNested) {
@@ -247,7 +247,7 @@
char* s = reinterpret_cast<char*>(&ch);
StringPiece descriptor(s, 1);
if (expected.find(ch) == StringPiece::npos) {
- AssertNonExistantClass(descriptor);
+ AssertNonExistentClass(descriptor);
} else {
AssertPrimitiveClass(descriptor);
}
@@ -282,7 +282,7 @@
scoped_ptr<DexFile> dex(OpenDexFileBase64(kMyClassDex, "kMyClassDex"));
PathClassLoader* class_loader = AllocPathClassLoader(dex.get());
- EXPECT_TRUE(linker->FindSystemClass("LMyClass;") == NULL);
+ AssertNonExistentClass("LMyClass;");
Class* MyClass = linker->FindClass("LMyClass;", class_loader);
ASSERT_TRUE(MyClass != NULL);
ASSERT_TRUE(MyClass->GetClass() != NULL);
@@ -319,7 +319,7 @@
AssertArrayClass("[[C", 2, "C", NULL);
AssertArrayClass("[[[LMyClass;", 3, "LMyClass;", class_loader);
// or not available at all
- AssertNonExistantClass("[[[[LNonExistantClass;");
+ AssertNonExistentClass("[[[[LNonExistentClass;");
}
TEST_F(ClassLinkerTest, LibCore) {