tests: Convert usage of base::Bind to Once or Repeating (see issue #3140)

This commit is contained in:
Marshall Greenblatt
2021-06-19 15:54:45 -04:00
parent ed1840ddb5
commit 529b91bc6e
90 changed files with 1430 additions and 1332 deletions

View File

@@ -54,8 +54,9 @@ class DevToolsMessageTestHandler : public TestHandler {
if (load_ct_ == 1) {
// STEP 2: 1st load has completed. Now enable page domain notifications
// and wait for the method result.
ExecuteMethod("Page.enable", "",
base::Bind(&DevToolsMessageTestHandler::Navigate, this));
ExecuteMethod(
"Page.enable", "",
base::BindOnce(&DevToolsMessageTestHandler::Navigate, this));
} else if (load_ct_ == 2) {
MaybeDestroyTest();
}
@@ -185,7 +186,7 @@ class DevToolsMessageTestHandler : public TestHandler {
// |expected_result| can be a fragment that the result should start with.
void ExecuteMethod(const std::string& method,
const std::string& params,
const base::Closure& next_step,
base::OnceClosure next_step,
const std::string& expected_result = "{}",
bool expected_success = true) {
CHECK(!method.empty());
@@ -202,7 +203,7 @@ class DevToolsMessageTestHandler : public TestHandler {
// Set expected result state.
pending_message_ = message.str();
pending_result_next_ = next_step;
pending_result_next_ = std::move(next_step);
pending_result_ = {message_id, expected_success, expected_result};
if (message_id % 2 == 0) {
@@ -246,11 +247,10 @@ class DevToolsMessageTestHandler : public TestHandler {
last_result_id_ = result.message_id;
// Continue asynchronously to allow the callstack to unwind.
CefPostTask(TID_UI, pending_result_next_);
CefPostTask(TID_UI, std::move(pending_result_next_));
// Clear expected result state.
pending_message_.clear();
pending_result_next_.Reset();
pending_result_ = {};
}
@@ -264,17 +264,16 @@ class DevToolsMessageTestHandler : public TestHandler {
<< "\nand expected params=" << pending_event_.params;
// Continue asynchronously to allow the callstack to unwind.
CefPostTask(TID_UI, pending_event_next_);
CefPostTask(TID_UI, std::move(pending_event_next_));
// Clear expected result state.
pending_event_ = {};
pending_event_next_.Reset();
}
void Navigate() {
pending_event_ = {"Page.frameNavigated", "{\"frame\":"};
pending_event_next_ =
base::Bind(&DevToolsMessageTestHandler::AfterNavigate, this);
base::BindOnce(&DevToolsMessageTestHandler::AfterNavigate, this);
std::stringstream params;
params << "{\"url\":\"" << kTestUrl2 << "\"}";
@@ -291,7 +290,7 @@ class DevToolsMessageTestHandler : public TestHandler {
// notifications.
ExecuteMethod(
"Page.disable", "",
base::Bind(&DevToolsMessageTestHandler::AfterPageDisabled, this));
base::BindOnce(&DevToolsMessageTestHandler::AfterPageDisabled, this));
}
void AfterPageDisabled() {
@@ -299,7 +298,7 @@ class DevToolsMessageTestHandler : public TestHandler {
// method to verify an error result, and then destroy the test when done.
ExecuteMethod(
"Foo.doesNotExist", "",
base::Bind(&DevToolsMessageTestHandler::MaybeDestroyTest, this),
base::BindOnce(&DevToolsMessageTestHandler::MaybeDestroyTest, this),
/*expected_result=*/
"{\"code\":-32601,\"message\":\"'Foo.doesNotExist' wasn't found\"}",
/*expected_success=*/false);
@@ -336,13 +335,13 @@ class DevToolsMessageTestHandler : public TestHandler {
// Tracks the last message ID received.
int last_result_id_ = -1;
// When received, execute this callback.
base::Closure pending_result_next_;
base::OnceClosure pending_result_next_;
// Wait for |pending_event_.method| in OnEvent.
// The params should start with the |pending_event_.params| fragment.
Event pending_event_;
// When received, execute this callback.
base::Closure pending_event_next_;
base::OnceClosure pending_event_next_;
CefRefPtr<CefRegistration> registration_;