mirror of
https://github.com/denoland/deno.git
synced 2025-08-04 10:59:13 +00:00
refactor: unify CDP types in a single module (#21094)
This commit moves all Chrome Devtools Protocol messages to `cli/cdp.rs` and refactors all places using these types to pull them from a common place. No functional changes.
This commit is contained in:
parent
68a964346d
commit
fdb4953ea4
12 changed files with 225 additions and 240 deletions
|
@ -3,6 +3,7 @@
|
|||
use crate::args::CoverageFlags;
|
||||
use crate::args::FileFlags;
|
||||
use crate::args::Flags;
|
||||
use crate::cdp;
|
||||
use crate::colors;
|
||||
use crate::factory::CliFactory;
|
||||
use crate::npm::CliNpmResolver;
|
||||
|
@ -34,11 +35,9 @@ use std::path::PathBuf;
|
|||
use text_lines::TextLines;
|
||||
use uuid::Uuid;
|
||||
|
||||
mod json_types;
|
||||
mod merge;
|
||||
mod range_tree;
|
||||
|
||||
use json_types::*;
|
||||
use merge::ProcessCoverage;
|
||||
|
||||
pub struct CoverageCollector {
|
||||
pub dir: PathBuf,
|
||||
|
@ -84,8 +83,8 @@ impl CoverageCollector {
|
|||
|
||||
async fn start_precise_coverage(
|
||||
&mut self,
|
||||
parameters: StartPreciseCoverageParameters,
|
||||
) -> Result<StartPreciseCoverageReturnObject, AnyError> {
|
||||
parameters: cdp::StartPreciseCoverageArgs,
|
||||
) -> Result<cdp::StartPreciseCoverageResponse, AnyError> {
|
||||
let return_value = self
|
||||
.session
|
||||
.post_message("Profiler.startPreciseCoverage", Some(parameters))
|
||||
|
@ -98,7 +97,7 @@ impl CoverageCollector {
|
|||
|
||||
async fn take_precise_coverage(
|
||||
&mut self,
|
||||
) -> Result<TakePreciseCoverageReturnObject, AnyError> {
|
||||
) -> Result<cdp::TakePreciseCoverageResponse, AnyError> {
|
||||
let return_value = self
|
||||
.session
|
||||
.post_message::<()>("Profiler.takePreciseCoverage", None)
|
||||
|
@ -113,7 +112,7 @@ impl CoverageCollector {
|
|||
self.enable_debugger().await?;
|
||||
self.enable_profiler().await?;
|
||||
self
|
||||
.start_precise_coverage(StartPreciseCoverageParameters {
|
||||
.start_precise_coverage(cdp::StartPreciseCoverageArgs {
|
||||
call_count: true,
|
||||
detailed: true,
|
||||
allow_triggered_updates: false,
|
||||
|
@ -180,7 +179,7 @@ struct CoverageReport {
|
|||
}
|
||||
|
||||
fn generate_coverage_report(
|
||||
script_coverage: &ScriptCoverage,
|
||||
script_coverage: &cdp::ScriptCoverage,
|
||||
script_source: String,
|
||||
maybe_source_map: &Option<Vec<u8>>,
|
||||
output: &Option<PathBuf>,
|
||||
|
@ -570,8 +569,8 @@ impl CoverageReporter for PrettyCoverageReporter {
|
|||
|
||||
fn collect_coverages(
|
||||
files: FileFlags,
|
||||
) -> Result<Vec<ScriptCoverage>, AnyError> {
|
||||
let mut coverages: Vec<ScriptCoverage> = Vec::new();
|
||||
) -> Result<Vec<cdp::ScriptCoverage>, AnyError> {
|
||||
let mut coverages: Vec<cdp::ScriptCoverage> = Vec::new();
|
||||
let file_paths = FileCollector::new(|file_path| {
|
||||
file_path
|
||||
.extension()
|
||||
|
@ -590,7 +589,7 @@ fn collect_coverages(
|
|||
|
||||
for file_path in file_paths {
|
||||
let json = fs::read_to_string(file_path.as_path())?;
|
||||
let new_coverage: ScriptCoverage = serde_json::from_str(&json)?;
|
||||
let new_coverage: cdp::ScriptCoverage = serde_json::from_str(&json)?;
|
||||
coverages.push(new_coverage);
|
||||
}
|
||||
|
||||
|
@ -600,11 +599,11 @@ fn collect_coverages(
|
|||
}
|
||||
|
||||
fn filter_coverages(
|
||||
coverages: Vec<ScriptCoverage>,
|
||||
coverages: Vec<cdp::ScriptCoverage>,
|
||||
include: Vec<String>,
|
||||
exclude: Vec<String>,
|
||||
npm_resolver: &dyn CliNpmResolver,
|
||||
) -> Vec<ScriptCoverage> {
|
||||
) -> Vec<cdp::ScriptCoverage> {
|
||||
let include: Vec<Regex> =
|
||||
include.iter().map(|e| Regex::new(e).unwrap()).collect();
|
||||
|
||||
|
@ -629,7 +628,7 @@ fn filter_coverages(
|
|||
|
||||
(include.is_empty() || is_included) && !is_excluded && !is_internal
|
||||
})
|
||||
.collect::<Vec<ScriptCoverage>>()
|
||||
.collect::<Vec<cdp::ScriptCoverage>>()
|
||||
}
|
||||
|
||||
pub async fn cover_files(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue