summaryrefslogtreecommitdiff
path: root/cli/tools/test.rs
diff options
context:
space:
mode:
Diffstat (limited to 'cli/tools/test.rs')
-rw-r--r--cli/tools/test.rs24
1 files changed, 15 insertions, 9 deletions
diff --git a/cli/tools/test.rs b/cli/tools/test.rs
index daae61d7f..2cc1ac808 100644
--- a/cli/tools/test.rs
+++ b/cli/tools/test.rs
@@ -15,6 +15,7 @@ use crate::flags::TestFlags;
use crate::fs_util::collect_specifiers;
use crate::fs_util::is_supported_test_ext;
use crate::fs_util::is_supported_test_path;
+use crate::graph_util::contains_specifier;
use crate::graph_util::graph_valid;
use crate::located_script_name;
use crate::lockfile;
@@ -34,7 +35,7 @@ use deno_core::futures::FutureExt;
use deno_core::futures::StreamExt;
use deno_core::serde_json::json;
use deno_core::ModuleSpecifier;
-use deno_graph::Module;
+use deno_graph::ModuleKind;
use deno_runtime::permissions::Permissions;
use deno_runtime::tokio_util::run_basic;
use log::Level;
@@ -724,7 +725,7 @@ async fn check_specifiers(
if !inline_files.is_empty() {
let specifiers = inline_files
.iter()
- .map(|file| file.specifier.clone())
+ .map(|file| (file.specifier.clone(), ModuleKind::Esm))
.collect();
for file in inline_files {
@@ -746,7 +747,7 @@ async fn check_specifiers(
.iter()
.filter_map(|(specifier, mode)| {
if *mode != TestMode::Documentation {
- Some(specifier.clone())
+ Some((specifier.clone(), ModuleKind::Esm))
} else {
None
}
@@ -1113,7 +1114,7 @@ pub async fn run_tests_with_watch(
} else {
test_modules
.iter()
- .filter_map(|url| deno_core::resolve_url(url.as_str()).ok())
+ .map(|url| (url.clone(), ModuleKind::Esm))
.collect()
};
let maybe_imports = if let Some(result) = maybe_imports {
@@ -1129,7 +1130,10 @@ pub async fn run_tests_with_watch(
.map(|im| im.as_resolver())
};
let graph = deno_graph::create_graph(
- test_modules.clone(),
+ test_modules
+ .iter()
+ .map(|s| (s.clone(), ModuleKind::Esm))
+ .collect(),
false,
maybe_imports,
cache.as_mut_loader(),
@@ -1151,7 +1155,7 @@ pub async fn run_tests_with_watch(
output: &mut HashSet<&'a ModuleSpecifier>,
no_check: bool,
) {
- if let Some(Module::Es(module)) = maybe_module {
+ if let Some(module) = maybe_module {
for dep in module.dependencies.values() {
if let Some(specifier) = &dep.get_code() {
if !output.contains(specifier) {
@@ -1197,7 +1201,7 @@ pub async fn run_tests_with_watch(
deno_core::resolve_url_or_path(&path.to_string_lossy()).ok()
}) {
if modules.contains(&&path) {
- modules_to_reload.push(specifier);
+ modules_to_reload.push((specifier, ModuleKind::Esm));
break;
}
}
@@ -1228,7 +1232,7 @@ pub async fn run_tests_with_watch(
})
};
- let operation = |modules_to_reload: Vec<ModuleSpecifier>| {
+ let operation = |modules_to_reload: Vec<(ModuleSpecifier, ModuleKind)>| {
let filter = test_flags.filter.clone();
let include = include.clone();
let ignore = ignore.clone();
@@ -1245,7 +1249,9 @@ pub async fn run_tests_with_watch(
)
.await?
.iter()
- .filter(|(specifier, _)| modules_to_reload.contains(specifier))
+ .filter(|(specifier, _)| {
+ contains_specifier(&modules_to_reload, specifier)
+ })
.cloned()
.collect::<Vec<(ModuleSpecifier, TestMode)>>();