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

Side by Side Diff: chrome/browser/extensions/extension_function_test_utils.cc

Issue 10694106: Added support for multiple parameters to Extension API callbacks. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Indentation fixes and comment. Created 8 years, 5 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "chrome/browser/extensions/extension_function_test_utils.h" 5 #include "chrome/browser/extensions/extension_function_test_utils.h"
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "base/file_path.h" 9 #include "base/file_path.h"
10 #include "base/json/json_reader.h" 10 #include "base/json/json_reader.h"
(...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after
123 const std::string& args, 123 const std::string& args,
124 Browser* browser) { 124 Browser* browser) {
125 return RunFunctionAndReturnError(function, args, browser, NONE); 125 return RunFunctionAndReturnError(function, args, browser, NONE);
126 } 126 }
127 std::string RunFunctionAndReturnError(UIThreadExtensionFunction* function, 127 std::string RunFunctionAndReturnError(UIThreadExtensionFunction* function,
128 const std::string& args, 128 const std::string& args,
129 Browser* browser, 129 Browser* browser,
130 RunFunctionFlags flags) { 130 RunFunctionFlags flags) {
131 scoped_refptr<ExtensionFunction> function_owner(function); 131 scoped_refptr<ExtensionFunction> function_owner(function);
132 RunFunction(function, args, browser, flags); 132 RunFunction(function, args, browser, flags);
133 EXPECT_FALSE(function->GetResultValue()) << "Did not expect a result"; 133 EXPECT_FALSE(function->GetResultsListValue()) << "Did not expect a result";
134 return function->GetError(); 134 return function->GetError();
135 } 135 }
136 136
137 base::Value* RunFunctionAndReturnResult(UIThreadExtensionFunction* function, 137 base::Value* RunFunctionAndReturnSingleResult(
138 const std::string& args, 138 UIThreadExtensionFunction* function,
139 Browser* browser) { 139 const std::string& args,
140 return RunFunctionAndReturnResult(function, args, browser, NONE); 140 Browser* browser) {
141 return RunFunctionAndReturnSingleResult(function, args, browser, NONE);
141 } 142 }
142 base::Value* RunFunctionAndReturnResult(UIThreadExtensionFunction* function, 143 base::Value* RunFunctionAndReturnSingleResult(
143 const std::string& args, 144 UIThreadExtensionFunction* function,
144 Browser* browser, 145 const std::string& args,
145 RunFunctionFlags flags) { 146 Browser* browser,
147 RunFunctionFlags flags) {
146 scoped_refptr<ExtensionFunction> function_owner(function); 148 scoped_refptr<ExtensionFunction> function_owner(function);
147 RunFunction(function, args, browser, flags); 149 RunFunction(function, args, browser, flags);
148 EXPECT_TRUE(function->GetError().empty()) << "Unexpected error: " 150 EXPECT_TRUE(function->GetError().empty()) << "Unexpected error: "
149 << function->GetError(); 151 << function->GetError();
150 return (function->GetResultValue() == NULL) ? NULL : 152 base::Value* single_result;
Aaron Boodman 2012/07/09 04:39:31 initialize primitives
Matt Tytel 2012/07/10 18:50:45 Done.
151 function->GetResultValue()->DeepCopy(); 153 if (function->GetResultsListValue() != NULL &&
154 function->GetResultsListValue()->Get(0, &single_result)) {
155 return single_result->DeepCopy();
156 }
157 return NULL;
152 } 158 }
153 159
154 // This helps us be able to wait until an AsyncExtensionFunction calls 160 // This helps us be able to wait until an AsyncExtensionFunction calls
155 // SendResponse. 161 // SendResponse.
156 class SendResponseDelegate 162 class SendResponseDelegate
157 : public UIThreadExtensionFunction::DelegateForTests { 163 : public UIThreadExtensionFunction::DelegateForTests {
158 public: 164 public:
159 SendResponseDelegate() : should_post_quit_(false) {} 165 SendResponseDelegate() : should_post_quit_(false) {}
160 166
161 virtual ~SendResponseDelegate() {} 167 virtual ~SendResponseDelegate() {}
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
215 if (!response_delegate.HasResponse()) { 221 if (!response_delegate.HasResponse()) {
216 response_delegate.set_should_post_quit(true); 222 response_delegate.set_should_post_quit(true);
217 ui_test_utils::RunMessageLoop(); 223 ui_test_utils::RunMessageLoop();
218 } 224 }
219 225
220 EXPECT_TRUE(response_delegate.HasResponse()); 226 EXPECT_TRUE(response_delegate.HasResponse());
221 return response_delegate.GetResponse(); 227 return response_delegate.GetResponse();
222 } 228 }
223 229
224 } // namespace extension_function_test_utils 230 } // namespace extension_function_test_utils
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698