diff options
author | David Sherret <dsherret@users.noreply.github.com> | 2021-09-07 10:39:32 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-09-07 10:39:32 -0400 |
commit | 2c2e3ec1ca47803f791ea72ea6247d8eedf87ec8 (patch) | |
tree | 9ba3ddfde58f4a4feaf98fc230ec18861891c9be /cli/lsp/completions.rs | |
parent | a5bcf7033e66a828dc88a313f4cca11f116c3f83 (diff) |
refactor(lsp): use deno_ast and cache swc ASTs (#11780)
Diffstat (limited to 'cli/lsp/completions.rs')
-rw-r--r-- | cli/lsp/completions.rs | 26 |
1 files changed, 19 insertions, 7 deletions
diff --git a/cli/lsp/completions.rs b/cli/lsp/completions.rs index f808f9607..6e7d71009 100644 --- a/cli/lsp/completions.rs +++ b/cli/lsp/completions.rs @@ -403,10 +403,11 @@ mod tests { use crate::lsp::documents::DocumentCache; use crate::lsp::documents::LanguageId; use crate::lsp::sources::Sources; - use crate::media_type::MediaType; + use deno_ast::MediaType; use deno_core::resolve_url; use std::collections::HashMap; use std::path::Path; + use std::sync::Arc; use tempfile::TempDir; fn mock_state_snapshot( @@ -418,17 +419,28 @@ mod tests { for (specifier, source, version, language_id) in fixtures { let specifier = resolve_url(specifier).expect("failed to create specifier"); - documents.open(specifier.clone(), *version, language_id.clone(), source); + documents.open( + specifier.clone(), + *version, + *language_id, + Arc::new(source.to_string()), + ); let media_type = MediaType::from(&specifier); - let parsed_module = - analysis::parse_module(&specifier, source, &media_type).unwrap(); + let parsed_module = documents + .get(&specifier) + .unwrap() + .source() + .module() + .map(|r| r.as_ref()) + .unwrap() + .unwrap(); let (deps, _) = analysis::analyze_dependencies( &specifier, - &media_type, - &parsed_module, + media_type, + parsed_module, &None, ); - let dep_ranges = analysis::analyze_dependency_ranges(&parsed_module).ok(); + let dep_ranges = analysis::analyze_dependency_ranges(parsed_module).ok(); documents .set_dependencies(&specifier, Some(deps), dep_ranges) .unwrap(); |