summaryrefslogtreecommitdiffstats
path: root/runtime/jni_internal_test.cc
diff options
context:
space:
mode:
authorIan Rogers <irogers@google.com>2014-11-11 08:43:05 -0800
committerIan Rogers <irogers@google.com>2014-11-11 08:43:05 -0800
commit2f022bd02badb6a3b3edd5b65416a4235c665ccc (patch)
treea763fd066cca00d009884ea76622e4ca84a88fa3 /runtime/jni_internal_test.cc
parent3385675ee6fc835929c6c0385d328b207b662169 (diff)
downloadandroid_art-2f022bd02badb6a3b3edd5b65416a4235c665ccc.tar.gz
android_art-2f022bd02badb6a3b3edd5b65416a4235c665ccc.tar.bz2
android_art-2f022bd02badb6a3b3edd5b65416a4235c665ccc.zip
Add jni_internal_test for GetArrayLength(NULL).
Change-Id: I6c6ad38de3b60d58e6bcf734714f5fad29e73c30
Diffstat (limited to 'runtime/jni_internal_test.cc')
-rw-r--r--runtime/jni_internal_test.cc10
1 files changed, 9 insertions, 1 deletions
diff --git a/runtime/jni_internal_test.cc b/runtime/jni_internal_test.cc
index cab907c378..b57cc179a9 100644
--- a/runtime/jni_internal_test.cc
+++ b/runtime/jni_internal_test.cc
@@ -1170,7 +1170,15 @@ TEST_F(JniInternalTest, NewObjectArrayWithInitialValue) {
}
TEST_F(JniInternalTest, GetArrayLength) {
- // Already tested in NewObjectArray/NewPrimitiveArray.
+ // Already tested in NewObjectArray/NewPrimitiveArray except for NULL.
+ CheckJniAbortCatcher jni_abort_catcher;
+ bool old_check_jni = vm_->SetCheckJniEnabled(false);
+ EXPECT_EQ(0, env_->GetArrayLength(nullptr));
+ jni_abort_catcher.Check("java_array == null");
+ EXPECT_FALSE(vm_->SetCheckJniEnabled(true));
+ EXPECT_EQ(JNI_ERR, env_->GetArrayLength(nullptr));
+ jni_abort_catcher.Check("jarray was NULL");
+ EXPECT_TRUE(vm_->SetCheckJniEnabled(old_check_jni));
}
TEST_F(JniInternalTest, GetObjectClass) {