#include "chrome/test/base/devtools_listener.h"
#include <stddef.h>
#include <map>
#include <string>
#include <string_view>
#include <utility>
#include <vector>
#include "base/containers/span.h"
#include "base/files/file_util.h"
#include "base/hash/md5.h"
#include "base/json/json_reader.h"
#include "base/json/json_writer.h"
#include "base/logging.h"
#include "base/run_loop.h"
#include "base/strings/strcat.h"
#include "base/strings/stringprintf.h"
#include "base/task/single_thread_task_runner.h"
#include "base/time/time.h"
#include "url/url_util.h"
namespace coverage {
namespace {
std::string_view SpanToStringPiece(const base::span<const uint8_t>& s) { … }
std::string EncodeURIComponent(const std::string& component) { … }
}
DevToolsListener::DevToolsListener(content::DevToolsAgentHost* host,
uint32_t uuid)
: … { … }
DevToolsListener::~DevToolsListener() = default;
void DevToolsListener::Navigated(content::DevToolsAgentHost* host) { … }
bool DevToolsListener::HasCoverage(content::DevToolsAgentHost* host) { … }
void DevToolsListener::GetCoverage(content::DevToolsAgentHost* host,
const base::FilePath& store,
const std::string& test) { … }
void DevToolsListener::Detach(content::DevToolsAgentHost* host) { … }
std::string DevToolsListener::HostString(content::DevToolsAgentHost* host,
const std::string& prefix) { … }
void DevToolsListener::SetupCoverageStore(const base::FilePath& store_path) { … }
void DevToolsListener::Start(content::DevToolsAgentHost* host) { … }
bool DevToolsListener::StartJSCoverage(content::DevToolsAgentHost* host) { … }
void DevToolsListener::StopAndStoreJSCoverage(content::DevToolsAgentHost* host,
const base::FilePath& store,
const std::string& test) { … }
void DevToolsListener::VerifyAllScriptsAreParsedRepeatedly(
const base::Value::List* coverage_entries,
base::OnceClosure done_callback,
int retries) { … }
void DevToolsListener::StoreScripts(content::DevToolsAgentHost* host,
const base::FilePath& store) { … }
void DevToolsListener::SendCommandMessage(content::DevToolsAgentHost* host,
const std::string& command) { … }
bool DevToolsListener::AwaitCommandResponse(int id) { … }
void DevToolsListener::DispatchProtocolMessage(
content::DevToolsAgentHost* host,
base::span<const uint8_t> message) { … }
bool DevToolsListener::MayAttachToURL(const GURL& url, bool is_webui) { … }
void DevToolsListener::AgentHostClosed(content::DevToolsAgentHost* host) { … }
}