| Index: content/browser/renderer_host/java/jni_helper_unittest.cc
|
| diff --git a/base/android/jni_android_unittest.cc b/content/browser/renderer_host/java/jni_helper_unittest.cc
|
| similarity index 63%
|
| copy from base/android/jni_android_unittest.cc
|
| copy to content/browser/renderer_host/java/jni_helper_unittest.cc
|
| index 920b395659025c4784a774439237fb645bcb4831..34b17c23c7bd67d8262b76a4b77ceaa84f4771c0 100644
|
| --- a/base/android/jni_android_unittest.cc
|
| +++ b/content/browser/renderer_host/java/jni_helper_unittest.cc
|
| @@ -1,15 +1,15 @@
|
| -// Copyright (c) 2012 The Chromium Authors. All rights reserved.
|
| +// Copyright 2013 The Chromium Authors. All rights reserved.
|
| // Use of this source code is governed by a BSD-style license that can be
|
| // found in the LICENSE file.
|
|
|
| -#include "base/android/jni_android.h"
|
| +#include "content/browser/renderer_host/java/jni_helper.h"
|
|
|
| +#include "base/android/jni_android.h"
|
| #include "base/at_exit.h"
|
| #include "base/logging.h"
|
| #include "testing/gtest/include/gtest/gtest.h"
|
|
|
| -namespace base {
|
| -namespace android {
|
| +namespace content {
|
|
|
| namespace {
|
|
|
| @@ -39,7 +39,7 @@ jmethodID GetMethodIDWrapper(JNIEnv* env, jclass clazz, const char* method,
|
| class JNIAndroidTest : public testing::Test {
|
| protected:
|
| virtual void SetUp() {
|
| - JNIEnv* env = AttachCurrentThread();
|
| + JNIEnv* env = base::android::AttachCurrentThread();
|
| g_previous_functions = env->functions;
|
| hooked_functions = *g_previous_functions;
|
| env->functions = &hooked_functions;
|
| @@ -47,7 +47,7 @@ class JNIAndroidTest : public testing::Test {
|
| }
|
|
|
| virtual void TearDown() {
|
| - JNIEnv* env = AttachCurrentThread();
|
| + JNIEnv* env = base::android::AttachCurrentThread();
|
| env->functions = g_previous_functions;
|
| Reset();
|
| }
|
| @@ -66,7 +66,7 @@ class JNIAndroidTest : public testing::Test {
|
| };
|
|
|
| TEST_F(JNIAndroidTest, GetMethodIDFromClassNameCaching) {
|
| - JNIEnv* env = AttachCurrentThread();
|
| + JNIEnv* env = base::android::AttachCurrentThread();
|
|
|
| Reset();
|
| jmethodID id1 = GetMethodIDFromClassName(env, kJavaLangObject, kGetClass,
|
| @@ -91,51 +91,4 @@ TEST_F(JNIAndroidTest, GetMethodIDFromClassNameCaching) {
|
| EXPECT_EQ(g_last_method_id, id3);
|
| }
|
|
|
| -namespace {
|
| -
|
| -base::subtle::AtomicWord g_atomic_id = 0;
|
| -int LazyMethodIDCall(JNIEnv* env, jclass clazz, int p) {
|
| - jmethodID id = base::android::MethodID::LazyGet<
|
| - base::android::MethodID::TYPE_STATIC>(
|
| - env, clazz,
|
| - "abs",
|
| - "(I)I",
|
| - &g_atomic_id);
|
| -
|
| - return env->CallStaticIntMethod(clazz, id, p);
|
| -}
|
| -
|
| -int MethodIDCall(JNIEnv* env, jclass clazz, jmethodID id, int p) {
|
| - return env->CallStaticIntMethod(clazz, id, p);
|
| -}
|
| -
|
| -} // namespace
|
| -
|
| -TEST(JNIAndroidMicrobenchmark, MethodId) {
|
| - JNIEnv* env = AttachCurrentThread();
|
| - ScopedJavaLocalRef<jclass> clazz(GetClass(env, "java/lang/Math"));
|
| - base::Time start_lazy = base::Time::Now();
|
| - int o = 0;
|
| - for (int i = 0; i < 1024; ++i)
|
| - o += LazyMethodIDCall(env, clazz.obj(), i);
|
| - base::Time end_lazy = base::Time::Now();
|
| -
|
| - jmethodID id = reinterpret_cast<jmethodID>(g_atomic_id);
|
| - base::Time start = base::Time::Now();
|
| - for (int i = 0; i < 1024; ++i)
|
| - o += MethodIDCall(env, clazz.obj(), id, i);
|
| - base::Time end = base::Time::Now();
|
| -
|
| - // On a Galaxy Nexus, results were in the range of:
|
| - // JNI LazyMethodIDCall (us) 1984
|
| - // JNI MethodIDCall (us) 1861
|
| - LOG(ERROR) << "JNI LazyMethodIDCall (us) " <<
|
| - base::TimeDelta(end_lazy - start_lazy).InMicroseconds();
|
| - LOG(ERROR) << "JNI MethodIDCall (us) " <<
|
| - base::TimeDelta(end - start).InMicroseconds();
|
| - LOG(ERROR) << "JNI " << o;
|
| -}
|
| -
|
| -
|
| -} // namespace android
|
| -} // namespace base
|
| +} // namespace content
|
|
|