diff options
author | David Sherret <dsherret@users.noreply.github.com> | 2024-01-15 19:15:39 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-01-15 19:15:39 -0500 |
commit | 4e72ca313a8fa1d826783bdc5657937da97d590c (patch) | |
tree | 254bb4074df8a8dfe42200bc0e613b7e082651f3 /cli/tools/coverage/mod.rs | |
parent | 3ff80eb1521c49a43e0fae53840e5a636571ebfe (diff) |
refactor: use globbing from deno_config (#21925)
Diffstat (limited to 'cli/tools/coverage/mod.rs')
-rw-r--r-- | cli/tools/coverage/mod.rs | 31 |
1 files changed, 20 insertions, 11 deletions
diff --git a/cli/tools/coverage/mod.rs b/cli/tools/coverage/mod.rs index c7d84d91d..ec77c1bb8 100644 --- a/cli/tools/coverage/mod.rs +++ b/cli/tools/coverage/mod.rs @@ -9,12 +9,13 @@ use crate::npm::CliNpmResolver; use crate::tools::fmt::format_json; use crate::tools::test::is_supported_test_path; use crate::util::fs::FileCollector; -use crate::util::glob::FilePatterns; -use crate::util::glob::PathOrPatternSet; use crate::util::text_encoding::source_map_from_code; use deno_ast::MediaType; use deno_ast::ModuleSpecifier; +use deno_config::glob::FilePatterns; +use deno_config::glob::PathOrPattern; +use deno_config::glob::PathOrPatternSet; use deno_core::anyhow::anyhow; use deno_core::anyhow::Context; use deno_core::error::generic_error; @@ -375,19 +376,25 @@ fn collect_coverages( files: FileFlags, initial_cwd: &Path, ) -> Result<Vec<cdp::ScriptCoverage>, AnyError> { - let files = files.with_absolute_paths(initial_cwd); let mut coverages: Vec<cdp::ScriptCoverage> = Vec::new(); let file_patterns = FilePatterns { include: Some({ - let files = if files.include.is_empty() { - vec![initial_cwd.to_path_buf()] + if files.include.is_empty() { + PathOrPatternSet::new(vec![PathOrPattern::Path( + initial_cwd.to_path_buf(), + )]) } else { - files.include - }; - PathOrPatternSet::from_absolute_paths(files)? + PathOrPatternSet::from_relative_path_or_patterns( + initial_cwd, + &files.include, + )? + } }), - exclude: PathOrPatternSet::from_absolute_paths(files.ignore) - .context("Invalid ignore pattern.")?, + exclude: PathOrPatternSet::from_relative_path_or_patterns( + initial_cwd, + &files.ignore, + ) + .context("Invalid ignore pattern.")?, }; let file_paths = FileCollector::new(|file_path, _| { file_path @@ -463,7 +470,9 @@ pub async fn cover_files( assert!(!coverage_flags.files.include.is_empty()); // Use the first include path as the default output path. - let coverage_root = coverage_flags.files.include[0].clone(); + let coverage_root = cli_options + .initial_cwd() + .join(&coverage_flags.files.include[0]); let script_coverages = collect_coverages(coverage_flags.files, cli_options.initial_cwd())?; if script_coverages.is_empty() { |