From ee4d904cfb1b604bc8627491e05980ac43cd59e3 Mon Sep 17 00:00:00 2001 From: Aleksey Kladov Date: Thu, 25 Oct 2018 10:57:55 +0300 Subject: Store all the data in the Salsa Database --- crates/ra_analysis/tests/tests.rs | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) (limited to 'crates/ra_analysis/tests') diff --git a/crates/ra_analysis/tests/tests.rs b/crates/ra_analysis/tests/tests.rs index 52fae71ae..198d6a263 100644 --- a/crates/ra_analysis/tests/tests.rs +++ b/crates/ra_analysis/tests/tests.rs @@ -5,15 +5,17 @@ extern crate relative_path; extern crate rustc_hash; extern crate test_utils; -use std::sync::Arc; +use std::{ + sync::Arc, + collections::BTreeMap, +}; use ra_syntax::TextRange; use relative_path::{RelativePath, RelativePathBuf}; -use rustc_hash::FxHashMap; use test_utils::{assert_eq_dbg, extract_offset}; use ra_analysis::{ - Analysis, AnalysisHost, CrateGraph, CrateId, FileId, FileResolver, FnDescriptor, + AnalysisChange, Analysis, AnalysisHost, CrateGraph, CrateId, FileId, FileResolver, FnDescriptor, }; #[derive(Debug)] @@ -45,14 +47,16 @@ impl FileResolver for FileMap { fn analysis_host(files: &[(&str, &str)]) -> AnalysisHost { let mut host = AnalysisHost::new(); let mut file_map = Vec::new(); + let mut change = AnalysisChange::new(); for (id, &(path, contents)) in files.iter().enumerate() { let file_id = FileId((id + 1) as u32); assert!(path.starts_with('/')); let path = RelativePathBuf::from_path(&path[1..]).unwrap(); - host.change_file(file_id, Some(contents.to_string())); + change.add_file(file_id, contents.to_string()); file_map.push((file_id, path)); } - host.set_file_resolver(Arc::new(FileMap(file_map))); + change.set_file_resolver(Arc::new(FileMap(file_map))); + host.apply_change(change); host } @@ -128,12 +132,14 @@ fn test_resolve_crate_root() { let crate_graph = CrateGraph { crate_roots: { - let mut m = FxHashMap::default(); + let mut m = BTreeMap::default(); m.insert(CrateId(1), FileId(1)); m }, }; - host.set_crate_graph(crate_graph); + let mut change = AnalysisChange::new(); + change.set_crate_graph(crate_graph); + host.apply_change(change); let snap = host.analysis(); assert_eq!(snap.crate_for(FileId(2)).unwrap(), vec![CrateId(1)],); -- cgit v1.2.3