| OLD | NEW |
| 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 #ifndef EXTENSIONS_BROWSER_API_TEST_UTILS_H_ | 5 #ifndef EXTENSIONS_BROWSER_API_TEST_UTILS_H_ |
| 6 #define EXTENSIONS_BROWSER_API_TEST_UTILS_H_ | 6 #define EXTENSIONS_BROWSER_API_TEST_UTILS_H_ |
| 7 | 7 |
| 8 #include <string> | 8 #include <string> |
| 9 | 9 |
| 10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 48 base::Value* RunFunctionAndReturnSingleResult( | 48 base::Value* RunFunctionAndReturnSingleResult( |
| 49 UIThreadExtensionFunction* function, | 49 UIThreadExtensionFunction* function, |
| 50 const std::string& args, | 50 const std::string& args, |
| 51 content::BrowserContext* context); | 51 content::BrowserContext* context); |
| 52 base::Value* RunFunctionAndReturnSingleResult( | 52 base::Value* RunFunctionAndReturnSingleResult( |
| 53 UIThreadExtensionFunction* function, | 53 UIThreadExtensionFunction* function, |
| 54 const std::string& args, | 54 const std::string& args, |
| 55 content::BrowserContext* context, | 55 content::BrowserContext* context, |
| 56 RunFunctionFlags flags); | 56 RunFunctionFlags flags); |
| 57 | 57 |
| 58 // Run |function| with |args| and return the resulting error. Adds an error to |
| 59 // the current test if |function| returns a result. Takes ownership of |
| 60 // |function|. |
| 61 std::string RunFunctionAndReturnError(UIThreadExtensionFunction* function, |
| 62 const std::string& args, |
| 63 content::BrowserContext* context, |
| 64 RunFunctionFlags flags); |
| 65 std::string RunFunctionAndReturnError(UIThreadExtensionFunction* function, |
| 66 const std::string& args, |
| 67 content::BrowserContext* context); |
| 68 |
| 58 // Create and run |function| with |args|. Works with both synchronous and async | 69 // Create and run |function| with |args|. Works with both synchronous and async |
| 59 // functions. Ownership of |function| remains with the caller. | 70 // functions. Ownership of |function| remains with the caller. |
| 60 // | 71 // |
| 61 // TODO(aa): It would be nice if |args| could be validated against the schema | 72 // TODO(aa): It would be nice if |args| could be validated against the schema |
| 62 // that |function| expects. That way, we know that we are testing something | 73 // that |function| expects. That way, we know that we are testing something |
| 63 // close to what the bindings would actually send. | 74 // close to what the bindings would actually send. |
| 64 // | 75 // |
| 65 // TODO(aa): I'm concerned that this style won't scale to all the bits and bobs | 76 // TODO(aa): I'm concerned that this style won't scale to all the bits and bobs |
| 66 // we're going to need to frob for all the different extension functions. But | 77 // we're going to need to frob for all the different extension functions. But |
| 67 // we can refactor when we see what is needed. | 78 // we can refactor when we see what is needed. |
| 68 bool RunFunction(UIThreadExtensionFunction* function, | 79 bool RunFunction(UIThreadExtensionFunction* function, |
| 69 const std::string& args, | 80 const std::string& args, |
| 70 content::BrowserContext* context, | 81 content::BrowserContext* context, |
| 71 scoped_ptr<ExtensionFunctionDispatcher> dispatcher, | 82 scoped_ptr<ExtensionFunctionDispatcher> dispatcher, |
| 72 RunFunctionFlags flags); | 83 RunFunctionFlags flags); |
| 73 | 84 |
| 74 } // namespace function_test_utils | 85 } // namespace function_test_utils |
| 75 } // namespace extensions | 86 } // namespace extensions |
| 76 | 87 |
| 77 #endif // EXTENSIONS_BROWSER_API_TEST_UTILS_H_ | 88 #endif // EXTENSIONS_BROWSER_API_TEST_UTILS_H_ |
| OLD | NEW |