From d308ff910b18719fabaeb9df7bc5fc0afbd0a194 Mon Sep 17 00:00:00 2001 From: Aleksey Kladov Date: Wed, 6 May 2020 10:18:12 +0200 Subject: [PATCH] Merge doc_tests and tests --- crates/ra_assists/src/doc_tests.rs | 39 ------------------- crates/ra_assists/src/lib.rs | 2 - crates/ra_assists/src/tests.rs | 28 +++++++++++++ .../src/{doc_tests => tests}/generated.rs | 0 4 files changed, 28 insertions(+), 41 deletions(-) delete mode 100644 crates/ra_assists/src/doc_tests.rs rename crates/ra_assists/src/{doc_tests => tests}/generated.rs (100%) diff --git a/crates/ra_assists/src/doc_tests.rs b/crates/ra_assists/src/doc_tests.rs deleted file mode 100644 index 5eabb33d08..0000000000 --- a/crates/ra_assists/src/doc_tests.rs +++ /dev/null @@ -1,39 +0,0 @@ -//! Each assist definition has a special comment, which specifies docs and -//! example. -//! -//! We collect all the example and write the as tests in this module. - -mod generated; - -use ra_db::FileRange; -use test_utils::{assert_eq_text, extract_range_or_offset}; - -use crate::resolved_assists; - -fn check(assist_id: &str, before: &str, after: &str) { - let (selection, before) = extract_range_or_offset(before); - let (db, file_id) = crate::tests::with_single_file(&before); - let frange = FileRange { file_id, range: selection.into() }; - - let assist = resolved_assists(&db, frange) - .into_iter() - .find(|assist| assist.label.id.0 == assist_id) - .unwrap_or_else(|| { - panic!( - "\n\nAssist is not applicable: {}\nAvailable assists: {}", - assist_id, - resolved_assists(&db, frange) - .into_iter() - .map(|assist| assist.label.id.0) - .collect::>() - .join(", ") - ) - }); - - let actual = { - let mut actual = before.clone(); - assist.action.edit.apply(&mut actual); - actual - }; - assert_eq_text!(after, &actual); -} diff --git a/crates/ra_assists/src/lib.rs b/crates/ra_assists/src/lib.rs index b84d60c77d..b794b021d7 100644 --- a/crates/ra_assists/src/lib.rs +++ b/crates/ra_assists/src/lib.rs @@ -13,8 +13,6 @@ macro_rules! eprintln { mod assist_ctx; mod marks; #[cfg(test)] -mod doc_tests; -#[cfg(test)] mod tests; pub mod utils; pub mod ast_transform; diff --git a/crates/ra_assists/src/tests.rs b/crates/ra_assists/src/tests.rs index ca3096a43c..97744904ac 100644 --- a/crates/ra_assists/src/tests.rs +++ b/crates/ra_assists/src/tests.rs @@ -34,6 +34,34 @@ pub(crate) fn check_assist_not_applicable(assist: Handler, ra_fixture: &str) { check(assist, ra_fixture, ExpectedResult::NotApplicable); } +fn check_doc_test(assist_id: &str, before: &str, after: &str) { + let (selection, before) = extract_range_or_offset(before); + let (db, file_id) = crate::tests::with_single_file(&before); + let frange = FileRange { file_id, range: selection.into() }; + + let assist = resolved_assists(&db, frange) + .into_iter() + .find(|assist| assist.label.id.0 == assist_id) + .unwrap_or_else(|| { + panic!( + "\n\nAssist is not applicable: {}\nAvailable assists: {}", + assist_id, + resolved_assists(&db, frange) + .into_iter() + .map(|assist| assist.label.id.0) + .collect::>() + .join(", ") + ) + }); + + let actual = { + let mut actual = before.clone(); + assist.action.edit.apply(&mut actual); + actual + }; + assert_eq_text!(after, &actual); +} + enum ExpectedResult<'a> { NotApplicable, After(&'a str), diff --git a/crates/ra_assists/src/doc_tests/generated.rs b/crates/ra_assists/src/tests/generated.rs similarity index 100% rename from crates/ra_assists/src/doc_tests/generated.rs rename to crates/ra_assists/src/tests/generated.rs