TEST(MainThreadTaskRunnerTest, RemoveRunner) { RawPtr<NullExecutionContext> context = new NullExecutionContext(); RawPtr<MainThreadTaskRunner> runner = MainThreadTaskRunner::create(context.get()); bool isMarked = false; context->setTasksNeedSuspension(true); runner->postTask(BLINK_FROM_HERE, createSameThreadTask(&markBoolean, &isMarked)); runner.clear(); blink::testing::runPendingTasks(); EXPECT_FALSE(isMarked); }
void ConsoleBase::internalAddMessage(MessageType type, MessageLevel level, ScriptState* scriptState, RawPtr<ScriptArguments> scriptArguments, bool acceptNoArguments) { RawPtr<ScriptArguments> arguments = scriptArguments; if (!acceptNoArguments && (!arguments || !arguments->argumentCount())) return; if (scriptState && !scriptState->contextIsValid()) arguments.clear(); String message; if (arguments) arguments->getFirstArgumentAsString(message); RawPtr<ConsoleMessage> consoleMessage = ConsoleMessage::create(ConsoleAPIMessageSource, level, message); consoleMessage->setType(type); consoleMessage->setScriptState(scriptState); consoleMessage->setScriptArguments(arguments); consoleMessage->setCallStack(ScriptCallStack::captureForConsole()); reportMessageToConsole(consoleMessage.release()); }