summaryrefslogtreecommitdiff
path: root/cli/main.rs
diff options
context:
space:
mode:
Diffstat (limited to 'cli/main.rs')
-rw-r--r--cli/main.rs88
1 files changed, 21 insertions, 67 deletions
diff --git a/cli/main.rs b/cli/main.rs
index 39fdd4654..4469fe57c 100644
--- a/cli/main.rs
+++ b/cli/main.rs
@@ -94,7 +94,6 @@ use std::pin::Pin;
use std::rc::Rc;
use std::sync::Arc;
use upgrade::upgrade_command;
-use worker::WebWorker;
fn write_to_stdout_ignore_sigpipe(bytes: &[u8]) -> Result<(), std::io::Error> {
use std::io::ErrorKind;
@@ -237,8 +236,6 @@ async fn lint_command(
async fn cache_command(
flags: Flags,
files: Vec<String>,
- worker_specifiers: Option<Vec<String>>,
- test_patterns: Option<Vec<String>>,
) -> Result<(), AnyError> {
let main_module =
ModuleSpecifier::resolve_url_or_path("./$deno$cache.ts").unwrap();
@@ -252,48 +249,6 @@ async fn cache_command(
worker.preload_module(&specifier).await.map(|_| ())?;
}
- if let Some(worker_specifiers) = worker_specifiers {
- let mut web_worker = WebWorker::new(
- "".to_string(),
- Permissions::allow_all(),
- main_module,
- program_state.clone(),
- true,
- );
- for specifier in worker_specifiers {
- let specifier = ModuleSpecifier::resolve_url_or_path(&specifier)?;
- web_worker.preload_module(&specifier).await.map(|_| ())?;
- }
- }
-
- if let Some(test_patterns) = test_patterns {
- let cwd = std::env::current_dir().expect("No current directory");
- let mut include = test_patterns;
- if include.is_empty() {
- include.push(".".to_string());
- }
- let specifier = ModuleSpecifier::resolve_path("$deno$test.ts")?;
- // Create a dummy source file.
- let source_file = SourceFile {
- filename: specifier.as_url().to_file_path().unwrap(),
- url: specifier.as_url().clone(),
- types_header: None,
- media_type: MediaType::TypeScript,
- source_code: test_runner::render_test_file(
- test_runner::prepare_test_modules_urls(include, &cwd)?,
- false,
- false,
- None,
- ),
- };
- // Save our fake file into file fetcher cache
- // to allow module access by TS compiler
- program_state
- .file_fetcher
- .save_source_file_in_cache(&specifier, source_file);
- worker.preload_module(&specifier).await.map(|_| ())?;
- }
-
Ok(())
}
@@ -677,19 +632,26 @@ async fn test_command(
}
return Ok(());
}
- let main_module = ModuleSpecifier::resolve_path("$deno$test.ts")?;
+
+ let test_file_path = cwd.join("$deno$test.ts");
+ let test_file_url =
+ Url::from_file_path(&test_file_path).expect("Should be valid file url");
+ let test_file = test_runner::render_test_file(
+ test_modules.clone(),
+ fail_fast,
+ quiet,
+ filter,
+ );
+ let main_module =
+ ModuleSpecifier::resolve_url(&test_file_url.to_string()).unwrap();
+ let mut worker = MainWorker::new(&program_state, main_module.clone());
// Create a dummy source file.
let source_file = SourceFile {
- filename: main_module.as_url().to_file_path().unwrap(),
- url: main_module.as_url().clone(),
+ filename: test_file_url.to_file_path().unwrap(),
+ url: test_file_url.clone(),
types_header: None,
media_type: MediaType::TypeScript,
- source_code: test_runner::render_test_file(
- test_modules.clone(),
- fail_fast,
- quiet,
- filter,
- ),
+ source_code: test_file.clone(),
};
// Save our fake file into file fetcher cache
// to allow module access by TS compiler
@@ -697,8 +659,6 @@ async fn test_command(
.file_fetcher
.save_source_file_in_cache(&main_module, source_file);
- let mut worker = MainWorker::new(&program_state, main_module.clone());
-
let mut maybe_coverage_collector = if flags.coverage {
let session = worker.create_inspector_session();
let mut coverage_collector = CoverageCollector::new(session);
@@ -720,11 +680,8 @@ async fn test_command(
let coverages = coverage_collector.collect().await?;
coverage_collector.stop_collecting().await?;
- let filtered_coverages = coverage::filter_script_coverages(
- coverages,
- main_module.as_url().clone(),
- test_modules,
- );
+ let filtered_coverages =
+ coverage::filter_script_coverages(coverages, test_file_url, test_modules);
let mut coverage_reporter = PrettyCoverageReporter::new(quiet);
for coverage in filtered_coverages {
@@ -814,12 +771,9 @@ pub fn main() {
code,
as_typescript,
} => eval_command(flags, code, as_typescript, print).boxed_local(),
- DenoSubcommand::Cache {
- files,
- worker_specifiers,
- test_patterns,
- } => cache_command(flags, files, worker_specifiers, test_patterns)
- .boxed_local(),
+ DenoSubcommand::Cache { files } => {
+ cache_command(flags, files).boxed_local()
+ }
DenoSubcommand::Fmt {
check,
files,