diff options
author | Nayeem Rahman <nayeemrmn99@gmail.com> | 2024-08-24 01:21:21 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-08-24 01:21:21 +0100 |
commit | 2ab4afc6b8e90f1315e0727c9b9c714c3667dc45 (patch) | |
tree | 05f07ba22d5d4a5f5120ab988320ad88ea20d542 /cli/lsp/testing/execution.rs | |
parent | bbd3a7e637b0223647405adf76b23092ab957157 (diff) |
refactor(lsp): changes for lsp_types 0.97.0 (#25169)
Diffstat (limited to 'cli/lsp/testing/execution.rs')
-rw-r--r-- | cli/lsp/testing/execution.rs | 34 |
1 files changed, 19 insertions, 15 deletions
diff --git a/cli/lsp/testing/execution.rs b/cli/lsp/testing/execution.rs index 14196baa3..aec91b3e7 100644 --- a/cli/lsp/testing/execution.rs +++ b/cli/lsp/testing/execution.rs @@ -12,6 +12,8 @@ use crate::lsp::client::Client; use crate::lsp::client::TestingNotification; use crate::lsp::config; use crate::lsp::logging::lsp_log; +use crate::lsp::urls::uri_to_url; +use crate::lsp::urls::url_to_uri; use crate::tools::test; use crate::tools::test::create_test_event_channel; use crate::tools::test::FailFastTracker; @@ -30,9 +32,11 @@ use deno_core::ModuleSpecifier; use deno_runtime::deno_permissions::Permissions; use deno_runtime::tokio_util::create_and_run_current_thread; use indexmap::IndexMap; +use lsp_types::Uri; use std::collections::HashMap; use std::collections::HashSet; use std::num::NonZeroUsize; +use std::str::FromStr; use std::sync::Arc; use std::time::Duration; use std::time::Instant; @@ -53,12 +57,12 @@ fn as_queue_and_filters( if let Some(include) = ¶ms.include { for item in include { - if let Some((test_definitions, _)) = tests.get(&item.text_document.uri) { - queue.insert(item.text_document.uri.clone()); + let url = uri_to_url(&item.text_document.uri); + if let Some((test_definitions, _)) = tests.get(&url) { + queue.insert(url.clone()); if let Some(id) = &item.id { if let Some(test) = test_definitions.get(id) { - let filter = - filters.entry(item.text_document.uri.clone()).or_default(); + let filter = filters.entry(url).or_default(); if let Some(include) = filter.include.as_mut() { include.insert(test.id.clone(), test.clone()); } else { @@ -75,19 +79,19 @@ fn as_queue_and_filters( } for item in ¶ms.exclude { - if let Some((test_definitions, _)) = tests.get(&item.text_document.uri) { + let url = uri_to_url(&item.text_document.uri); + if let Some((test_definitions, _)) = tests.get(&url) { if let Some(id) = &item.id { // there is no way to exclude a test step if item.step_id.is_none() { if let Some(test) = test_definitions.get(id) { - let filter = - filters.entry(item.text_document.uri.clone()).or_default(); + let filter = filters.entry(url.clone()).or_default(); filter.exclude.insert(test.id.clone(), test.clone()); } } } else { // the entire test module is excluded - queue.remove(&item.text_document.uri); + queue.remove(&url); } } } @@ -193,7 +197,7 @@ impl TestRun { Vec::new() }; lsp_custom::EnqueuedTestModule { - text_document: lsp::TextDocumentIdentifier { uri: s.clone() }, + text_document: lsp::TextDocumentIdentifier { uri: url_to_uri(s) }, ids, } }) @@ -523,7 +527,7 @@ impl LspTestDescription { &self, tests: &IndexMap<usize, LspTestDescription>, ) -> lsp_custom::TestIdentifier { - let uri = ModuleSpecifier::parse(&self.location().file_name).unwrap(); + let uri = Uri::from_str(&self.location().file_name).unwrap(); let static_id = self.static_id(); let mut root_desc = self; while let Some(parent_id) = root_desc.parent_id() { @@ -598,7 +602,7 @@ impl LspTestReporter { .send_test_notification(TestingNotification::Module( lsp_custom::TestModuleNotificationParams { text_document: lsp::TextDocumentIdentifier { - uri: test_module.specifier.clone(), + uri: url_to_uri(&test_module.specifier), }, kind: lsp_custom::TestModuleNotificationKind::Insert, label: test_module.label(self.maybe_root_uri.as_ref()), @@ -711,7 +715,7 @@ impl LspTestReporter { .send_test_notification(TestingNotification::Module( lsp_custom::TestModuleNotificationParams { text_document: lsp::TextDocumentIdentifier { - uri: test_module.specifier.clone(), + uri: url_to_uri(&test_module.specifier), }, kind: lsp_custom::TestModuleNotificationKind::Insert, label: test_module.label(self.maybe_root_uri.as_ref()), @@ -796,14 +800,14 @@ mod tests { include: Some(vec![ lsp_custom::TestIdentifier { text_document: lsp::TextDocumentIdentifier { - uri: specifier.clone(), + uri: url_to_uri(&specifier), }, id: None, step_id: None, }, lsp_custom::TestIdentifier { text_document: lsp::TextDocumentIdentifier { - uri: non_test_specifier.clone(), + uri: url_to_uri(&non_test_specifier), }, id: None, step_id: None, @@ -811,7 +815,7 @@ mod tests { ]), exclude: vec![lsp_custom::TestIdentifier { text_document: lsp::TextDocumentIdentifier { - uri: specifier.clone(), + uri: url_to_uri(&specifier), }, id: Some( "69d9fe87f64f5b66cb8b631d4fd2064e8224b8715a049be54276c42189ff8f9f" |