Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(146)

Side by Side Diff: content/browser/android/java/gin_java_method_invocation_helper_unittest.cc

Issue 897773002: Update {virtual,override,final} to follow C++11 style. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/browser/android/java/gin_java_method_invocation_helper.h" 5 #include "content/browser/android/java/gin_java_method_invocation_helper.h"
6 6
7 #include "base/android/jni_android.h" 7 #include "base/android/jni_android.h"
8 #include "content/browser/android/java/jni_helper.h" 8 #include "content/browser/android/java/jni_helper.h"
9 #include "content/common/android/gin_java_bridge_value.h" 9 #include "content/common/android/gin_java_bridge_value.h"
10 #include "testing/gtest/include/gtest/gtest.h" 10 #include "testing/gtest/include/gtest/gtest.h"
11 11
12 namespace content { 12 namespace content {
13 13
14 namespace { 14 namespace {
15 15
16 class NullObjectDelegate 16 class NullObjectDelegate
17 : public GinJavaMethodInvocationHelper::ObjectDelegate { 17 : public GinJavaMethodInvocationHelper::ObjectDelegate {
18 public: 18 public:
19 NullObjectDelegate() {} 19 NullObjectDelegate() {}
20 20
21 virtual ~NullObjectDelegate() {} 21 ~NullObjectDelegate() override {}
22 22
23 virtual base::android::ScopedJavaLocalRef<jobject> GetLocalRef( 23 base::android::ScopedJavaLocalRef<jobject> GetLocalRef(JNIEnv* env) override {
24 JNIEnv* env) override {
25 return base::android::ScopedJavaLocalRef<jobject>(); 24 return base::android::ScopedJavaLocalRef<jobject>();
26 } 25 }
27 26
28 virtual base::android::ScopedJavaLocalRef<jclass> GetLocalClassRef( 27 base::android::ScopedJavaLocalRef<jclass> GetLocalClassRef(
29 JNIEnv* env) override { 28 JNIEnv* env) override {
30 return base::android::ScopedJavaLocalRef<jclass>(); 29 return base::android::ScopedJavaLocalRef<jclass>();
31 } 30 }
32 31
33 virtual const JavaMethod* FindMethod(const std::string& method_name, 32 const JavaMethod* FindMethod(const std::string& method_name,
34 size_t num_parameters) override { 33 size_t num_parameters) override {
35 return NULL; 34 return NULL;
36 } 35 }
37 36
38 virtual bool IsObjectGetClassMethod(const JavaMethod* method) override { 37 bool IsObjectGetClassMethod(const JavaMethod* method) override {
39 return false; 38 return false;
40 } 39 }
41 40
42 virtual const base::android::JavaRef<jclass>& GetSafeAnnotationClass() 41 const base::android::JavaRef<jclass>& GetSafeAnnotationClass() override {
43 override {
44 return safe_annotation_class_; 42 return safe_annotation_class_;
45 } 43 }
46 44
47 private: 45 private:
48 base::android::ScopedJavaLocalRef<jclass> safe_annotation_class_; 46 base::android::ScopedJavaLocalRef<jclass> safe_annotation_class_;
49 47
50 DISALLOW_COPY_AND_ASSIGN(NullObjectDelegate); 48 DISALLOW_COPY_AND_ASSIGN(NullObjectDelegate);
51 }; 49 };
52 50
53 class NullDispatcherDelegate 51 class NullDispatcherDelegate
54 : public GinJavaMethodInvocationHelper::DispatcherDelegate { 52 : public GinJavaMethodInvocationHelper::DispatcherDelegate {
55 public: 53 public:
56 NullDispatcherDelegate() {} 54 NullDispatcherDelegate() {}
57 55
58 virtual ~NullDispatcherDelegate() {} 56 ~NullDispatcherDelegate() override {}
59 57
60 virtual JavaObjectWeakGlobalRef GetObjectWeakRef( 58 JavaObjectWeakGlobalRef GetObjectWeakRef(
61 GinJavaBoundObject::ObjectID object_id) override { 59 GinJavaBoundObject::ObjectID object_id) override {
62 return JavaObjectWeakGlobalRef(); 60 return JavaObjectWeakGlobalRef();
63 } 61 }
64 62
65 DISALLOW_COPY_AND_ASSIGN(NullDispatcherDelegate); 63 DISALLOW_COPY_AND_ASSIGN(NullDispatcherDelegate);
66 }; 64 };
67 65
68 } // namespace 66 } // namespace
69 67
70 class GinJavaMethodInvocationHelperTest : public testing::Test { 68 class GinJavaMethodInvocationHelperTest : public testing::Test {
71 }; 69 };
72 70
73 namespace { 71 namespace {
74 72
75 class CountingDispatcherDelegate 73 class CountingDispatcherDelegate
76 : public GinJavaMethodInvocationHelper::DispatcherDelegate { 74 : public GinJavaMethodInvocationHelper::DispatcherDelegate {
77 public: 75 public:
78 CountingDispatcherDelegate() {} 76 CountingDispatcherDelegate() {}
79 77
80 virtual ~CountingDispatcherDelegate() {} 78 ~CountingDispatcherDelegate() override {}
81 79
82 virtual JavaObjectWeakGlobalRef GetObjectWeakRef( 80 JavaObjectWeakGlobalRef GetObjectWeakRef(
83 GinJavaBoundObject::ObjectID object_id) override { 81 GinJavaBoundObject::ObjectID object_id) override {
84 counters_[object_id]++; 82 counters_[object_id]++;
85 return JavaObjectWeakGlobalRef(); 83 return JavaObjectWeakGlobalRef();
86 } 84 }
87 85
88 void AssertInvocationsCount(GinJavaBoundObject::ObjectID begin_object_id, 86 void AssertInvocationsCount(GinJavaBoundObject::ObjectID begin_object_id,
89 GinJavaBoundObject::ObjectID end_object_id) { 87 GinJavaBoundObject::ObjectID end_object_id) {
90 EXPECT_EQ(end_object_id - begin_object_id, 88 EXPECT_EQ(end_object_id - begin_object_id,
91 static_cast<int>(counters_.size())); 89 static_cast<int>(counters_.size()));
92 for (GinJavaBoundObject::ObjectID i = begin_object_id; 90 for (GinJavaBoundObject::ObjectID i = begin_object_id;
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
169 base::android::ScopedJavaLocalRef<jobject> method_obj( 167 base::android::ScopedJavaLocalRef<jobject> method_obj(
170 env, 168 env,
171 env->ToReflectedMethod( 169 env->ToReflectedMethod(
172 base::android::GetClass(env, "java/lang/Object").obj(), 170 base::android::GetClass(env, "java/lang/Object").obj(),
173 method_id, 171 method_id,
174 false)); 172 false));
175 EXPECT_TRUE(method_obj.obj()); 173 EXPECT_TRUE(method_obj.obj());
176 method_.reset(new JavaMethod(method_obj)); 174 method_.reset(new JavaMethod(method_obj));
177 } 175 }
178 176
179 virtual ~ObjectIsGoneObjectDelegate() {} 177 ~ObjectIsGoneObjectDelegate() override {}
180 178
181 virtual base::android::ScopedJavaLocalRef<jobject> GetLocalRef( 179 base::android::ScopedJavaLocalRef<jobject> GetLocalRef(JNIEnv* env) override {
182 JNIEnv* env) override {
183 get_local_ref_called_ = true; 180 get_local_ref_called_ = true;
184 return NullObjectDelegate::GetLocalRef(env); 181 return NullObjectDelegate::GetLocalRef(env);
185 } 182 }
186 183
187 virtual const JavaMethod* FindMethod(const std::string& method_name, 184 const JavaMethod* FindMethod(const std::string& method_name,
188 size_t num_parameters) override { 185 size_t num_parameters) override {
189 return method_.get(); 186 return method_.get();
190 } 187 }
191 188
192 bool get_local_ref_called() { return get_local_ref_called_; } 189 bool get_local_ref_called() { return get_local_ref_called_; }
193 190
194 const std::string& get_method_name() { return method_->name(); } 191 const std::string& get_method_name() { return method_->name(); }
195 192
196 protected: 193 protected:
197 scoped_ptr<JavaMethod> method_; 194 scoped_ptr<JavaMethod> method_;
198 bool get_local_ref_called_; 195 bool get_local_ref_called_;
(...skipping 24 matching lines...) Expand all
223 EXPECT_TRUE(helper->GetPrimitiveResult().empty()); 220 EXPECT_TRUE(helper->GetPrimitiveResult().empty());
224 EXPECT_EQ(kGinJavaBridgeObjectIsGone, helper->GetInvocationError()); 221 EXPECT_EQ(kGinJavaBridgeObjectIsGone, helper->GetInvocationError());
225 } 222 }
226 223
227 namespace { 224 namespace {
228 225
229 class MethodNotFoundObjectDelegate : public NullObjectDelegate { 226 class MethodNotFoundObjectDelegate : public NullObjectDelegate {
230 public: 227 public:
231 MethodNotFoundObjectDelegate() : find_method_called_(false) {} 228 MethodNotFoundObjectDelegate() : find_method_called_(false) {}
232 229
233 virtual ~MethodNotFoundObjectDelegate() {} 230 ~MethodNotFoundObjectDelegate() override {}
234 231
235 virtual base::android::ScopedJavaLocalRef<jobject> GetLocalRef( 232 base::android::ScopedJavaLocalRef<jobject> GetLocalRef(JNIEnv* env) override {
236 JNIEnv* env) override {
237 return base::android::ScopedJavaLocalRef<jobject>( 233 return base::android::ScopedJavaLocalRef<jobject>(
238 env, static_cast<jobject>(env->FindClass("java/lang/String"))); 234 env, static_cast<jobject>(env->FindClass("java/lang/String")));
239 } 235 }
240 236
241 virtual const JavaMethod* FindMethod(const std::string& method_name, 237 const JavaMethod* FindMethod(const std::string& method_name,
242 size_t num_parameters) override { 238 size_t num_parameters) override {
243 find_method_called_ = true; 239 find_method_called_ = true;
244 return NULL; 240 return NULL;
245 } 241 }
246 242
247 bool find_method_called() const { return find_method_called_; } 243 bool find_method_called() const { return find_method_called_; }
248 244
249 protected: 245 protected:
250 bool find_method_called_; 246 bool find_method_called_;
251 247
252 private: 248 private:
(...skipping 22 matching lines...) Expand all
275 EXPECT_TRUE(helper->GetPrimitiveResult().empty()); 271 EXPECT_TRUE(helper->GetPrimitiveResult().empty());
276 EXPECT_EQ(kGinJavaBridgeMethodNotFound, helper->GetInvocationError()); 272 EXPECT_EQ(kGinJavaBridgeMethodNotFound, helper->GetInvocationError());
277 } 273 }
278 274
279 namespace { 275 namespace {
280 276
281 class GetClassObjectDelegate : public MethodNotFoundObjectDelegate { 277 class GetClassObjectDelegate : public MethodNotFoundObjectDelegate {
282 public: 278 public:
283 GetClassObjectDelegate() : get_class_called_(false) {} 279 GetClassObjectDelegate() : get_class_called_(false) {}
284 280
285 virtual ~GetClassObjectDelegate() {} 281 ~GetClassObjectDelegate() override {}
286 282
287 virtual const JavaMethod* FindMethod(const std::string& method_name, 283 const JavaMethod* FindMethod(const std::string& method_name,
288 size_t num_parameters) override { 284 size_t num_parameters) override {
289 find_method_called_ = true; 285 find_method_called_ = true;
290 return kFakeGetClass; 286 return kFakeGetClass;
291 } 287 }
292 288
293 virtual bool IsObjectGetClassMethod(const JavaMethod* method) override { 289 bool IsObjectGetClassMethod(const JavaMethod* method) override {
294 get_class_called_ = true; 290 get_class_called_ = true;
295 return kFakeGetClass == method; 291 return kFakeGetClass == method;
296 } 292 }
297 293
298 bool get_class_called() const { return get_class_called_; } 294 bool get_class_called() const { return get_class_called_; }
299 295
300 private: 296 private:
301 static const JavaMethod* kFakeGetClass; 297 static const JavaMethod* kFakeGetClass;
302 bool get_class_called_; 298 bool get_class_called_;
303 299
(...skipping 26 matching lines...) Expand all
330 helper->Invoke(); 326 helper->Invoke();
331 EXPECT_TRUE(object_delegate->find_method_called()); 327 EXPECT_TRUE(object_delegate->find_method_called());
332 EXPECT_TRUE(object_delegate->get_class_called()); 328 EXPECT_TRUE(object_delegate->get_class_called());
333 EXPECT_TRUE(helper->HoldsPrimitiveResult()); 329 EXPECT_TRUE(helper->HoldsPrimitiveResult());
334 EXPECT_TRUE(helper->GetPrimitiveResult().empty()); 330 EXPECT_TRUE(helper->GetPrimitiveResult().empty());
335 EXPECT_EQ(kGinJavaBridgeAccessToObjectGetClassIsBlocked, 331 EXPECT_EQ(kGinJavaBridgeAccessToObjectGetClassIsBlocked,
336 helper->GetInvocationError()); 332 helper->GetInvocationError());
337 } 333 }
338 334
339 } // namespace content 335 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/android/java/gin_java_bridge_dispatcher_host.cc ('k') | content/browser/android/java/jni_helper_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698