| Index: extensions/renderer/api_test_base.cc
|
| diff --git a/extensions/renderer/api_test_base.cc b/extensions/renderer/api_test_base.cc
|
| index bbffee98c7dea4bf43489e5f6f336e61308af0aa..8a2babad979145f53a082275ac83f51dbe4df434 100644
|
| --- a/extensions/renderer/api_test_base.cc
|
| +++ b/extensions/renderer/api_test_base.cc
|
| @@ -204,12 +204,21 @@ void ApiTestEnvironment::RunTestInner(const std::string& test_name,
|
| const base::Closure& quit_closure) {
|
| v8::HandleScope scope(env()->isolate());
|
| ModuleSystem::NativesEnabledScope natives_enabled(env()->module_system());
|
| - v8::Local<v8::Value> result =
|
| - env()->module_system()->CallModuleMethod("testBody", test_name);
|
| - if (!result->IsTrue()) {
|
| - base::ThreadTaskRunnerHandle::Get()->PostTask(FROM_HERE, quit_closure);
|
| - FAIL() << "Failed to run test \"" << test_name << "\"";
|
| - }
|
| + v8::Local<v8::Value> result;
|
| + bool did_run = false;
|
| + auto callback = [](bool* did_run, const base::Closure& quit_closure,
|
| + const std::string& test_name,
|
| + const std::vector<v8::Local<v8::Value>>& result) {
|
| + *did_run = true;
|
| + if (result.empty() || result[0].IsEmpty() || !result[0]->IsTrue()) {
|
| + base::ThreadTaskRunnerHandle::Get()->PostTask(FROM_HERE, quit_closure);
|
| + FAIL() << "Failed to run test \"" << test_name << "\"";
|
| + }
|
| + };
|
| + env()->module_system()->CallModuleMethodSafe(
|
| + "testBody", test_name, 0, nullptr,
|
| + base::Bind(callback, &did_run, quit_closure, test_name));
|
| + ASSERT_TRUE(did_run);
|
| }
|
|
|
| void ApiTestEnvironment::RunPromisesAgain() {
|
|
|