diff options
| -rw-r--r-- | crates/ide/src/runnables.rs | 255 |
1 files changed, 128 insertions, 127 deletions
diff --git a/crates/ide/src/runnables.rs b/crates/ide/src/runnables.rs index f4abee09312..bcb2c8797d0 100644 --- a/crates/ide/src/runnables.rs +++ b/crates/ide/src/runnables.rs @@ -544,7 +544,8 @@ mod tests { expect: Expect, ) { let (analysis, position) = fixture::position(ra_fixture); - let runnables = analysis.runnables(position.file_id).unwrap(); + let mut runnables = analysis.runnables(position.file_id).unwrap(); + runnables.sort_by_key(|it| (it.nav.full_range.start(), it.nav.name.clone())); expect.assert_debug_eq(&runnables); assert_eq!( actions, @@ -580,7 +581,7 @@ mod not_a_root { fn main() {} } "#, - &[Bin, Test, Test, Bench, TestMod], + &[TestMod, Bin, Test, Test, Bench], expect![[r#" [ Runnable { @@ -589,6 +590,21 @@ mod not_a_root { file_id: FileId( 0, ), + full_range: 0..137, + name: "", + kind: Module, + }, + kind: TestMod { + path: "", + }, + cfg: None, + }, + Runnable { + use_name_in_title: false, + nav: NavigationTarget { + file_id: FileId( + 0, + ), full_range: 1..13, focus_range: 4..8, name: "main", @@ -657,21 +673,6 @@ mod not_a_root { }, cfg: None, }, - Runnable { - use_name_in_title: false, - nav: NavigationTarget { - file_id: FileId( - 0, - ), - full_range: 0..137, - name: "", - kind: Module, - }, - kind: TestMod { - path: "", - }, - cfg: None, - }, ] "#]], ); @@ -1065,7 +1066,7 @@ mod root_tests { mod nested_tests_4 {} } "#, - &[TestMod, TestMod, TestMod, Test, Test, Test], + &[TestMod, TestMod, Test, Test, TestMod, Test], expect![[r#" [ Runnable { @@ -1108,23 +1109,6 @@ mod root_tests { file_id: FileId( 0, ), - full_range: 202..286, - focus_range: 206..220, - name: "nested_tests_2", - kind: Module, - description: "mod nested_tests_2", - }, - kind: TestMod { - path: "root_tests::nested_tests_0::nested_tests_2", - }, - cfg: None, - }, - Runnable { - use_name_in_title: false, - nav: NavigationTarget { - file_id: FileId( - 0, - ), full_range: 84..126, focus_range: 107..121, name: "nested_test_11", @@ -1167,6 +1151,23 @@ mod root_tests { file_id: FileId( 0, ), + full_range: 202..286, + focus_range: 206..220, + name: "nested_tests_2", + kind: Module, + description: "mod nested_tests_2", + }, + kind: TestMod { + path: "root_tests::nested_tests_0::nested_tests_2", + }, + cfg: None, + }, + Runnable { + use_name_in_title: false, + nav: NavigationTarget { + file_id: FileId( + 0, + ), full_range: 235..276, focus_range: 258..271, name: "nested_test_2", @@ -1197,7 +1198,7 @@ $0 #[cfg(feature = "foo")] fn test_foo1() {} "#, - &[Test, TestMod], + &[TestMod, Test], expect![[r#" [ Runnable { @@ -1206,6 +1207,21 @@ fn test_foo1() {} file_id: FileId( 0, ), + full_range: 0..51, + name: "", + kind: Module, + }, + kind: TestMod { + path: "", + }, + cfg: None, + }, + Runnable { + use_name_in_title: false, + nav: NavigationTarget { + file_id: FileId( + 0, + ), full_range: 1..50, focus_range: 36..45, name: "test_foo1", @@ -1228,21 +1244,6 @@ fn test_foo1() {} ), ), }, - Runnable { - use_name_in_title: false, - nav: NavigationTarget { - file_id: FileId( - 0, - ), - full_range: 0..51, - name: "", - kind: Module, - }, - kind: TestMod { - path: "", - }, - cfg: None, - }, ] "#]], ); @@ -1258,7 +1259,7 @@ $0 #[cfg(all(feature = "foo", feature = "bar"))] fn test_foo1() {} "#, - &[Test, TestMod], + &[TestMod, Test], expect![[r#" [ Runnable { @@ -1267,6 +1268,21 @@ fn test_foo1() {} file_id: FileId( 0, ), + full_range: 0..73, + name: "", + kind: Module, + }, + kind: TestMod { + path: "", + }, + cfg: None, + }, + Runnable { + use_name_in_title: false, + nav: NavigationTarget { + file_id: FileId( + 0, + ), full_range: 1..72, focus_range: 58..67, name: "test_foo1", @@ -1299,21 +1315,6 @@ fn test_foo1() {} ), ), }, - Runnable { - use_name_in_title: false, - nav: NavigationTarget { - file_id: FileId( - 0, - ), - full_range: 0..73, - name: "", - kind: Module, - }, - kind: TestMod { - path: "", - }, - cfg: None, - }, ] "#]], ); @@ -1400,7 +1401,7 @@ mod tests { } gen2!(); "#, - &[TestMod, TestMod, TestMod, Test, Test], + &[TestMod, TestMod, Test, Test, TestMod], expect![[r#" [ Runnable { @@ -1409,14 +1410,12 @@ gen2!(); file_id: FileId( 0, ), - full_range: 202..227, - focus_range: 206..211, - name: "tests", + full_range: 0..237, + name: "", kind: Module, - description: "mod tests", }, kind: TestMod { - path: "tests", + path: "", }, cfg: None, }, @@ -1426,28 +1425,34 @@ gen2!(); file_id: FileId( 0, ), - full_range: 0..237, - name: "", + full_range: 202..227, + focus_range: 206..211, + name: "tests", kind: Module, + description: "mod tests", }, kind: TestMod { - path: "", + path: "tests", }, cfg: None, }, Runnable { - use_name_in_title: true, + use_name_in_title: false, nav: NavigationTarget { file_id: FileId( 0, ), - full_range: 228..236, - name: "tests2", - kind: Module, - description: "mod tests2", + full_range: 218..225, + name: "foo_test", + kind: Function, }, - kind: TestMod { - path: "tests2", + kind: Test { + test_id: Path( + "tests::foo_test", + ), + attr: TestAttr { + ignore: false, + }, }, cfg: None, }, @@ -1472,22 +1477,18 @@ gen2!(); cfg: None, }, Runnable { - use_name_in_title: false, + use_name_in_title: true, nav: NavigationTarget { file_id: FileId( 0, ), - full_range: 218..225, - name: "foo_test", - kind: Function, + full_range: 228..236, + name: "tests2", + kind: Module, + description: "mod tests2", }, - kind: Test { - test_id: Path( - "tests::foo_test", - ), - attr: TestAttr { - ignore: false, - }, + kind: TestMod { + path: "tests2", }, cfg: None, }, @@ -1516,7 +1517,7 @@ macro_rules! foo { } foo!(); "#, - &[TestMod, Test, Test, Test], + &[Test, Test, Test, TestMod], expect![[r#" [ Runnable { @@ -1526,22 +1527,6 @@ foo!(); 0, ), full_range: 210..217, - name: "foo_tests", - kind: Module, - description: "mod foo_tests", - }, - kind: TestMod { - path: "foo_tests", - }, - cfg: None, - }, - Runnable { - use_name_in_title: true, - nav: NavigationTarget { - file_id: FileId( - 0, - ), - full_range: 210..217, name: "foo0", kind: Function, }, @@ -1595,6 +1580,22 @@ foo!(); }, cfg: None, }, + Runnable { + use_name_in_title: true, + nav: NavigationTarget { + file_id: FileId( + 0, + ), + full_range: 210..217, + name: "foo_tests", + kind: Module, + description: "mod foo_tests", + }, + kind: TestMod { + path: "foo_tests", + }, + cfg: None, + }, ] "#]], ); @@ -1671,7 +1672,7 @@ fn t0() {} #[test] fn t1() {} "#, - &[Test, Test, TestMod], + &[TestMod, Test, Test], expect![[r#" [ Runnable { @@ -1680,6 +1681,21 @@ fn t1() {} file_id: FileId( 1, ), + full_range: 0..39, + name: "m", + kind: Module, + }, + kind: TestMod { + path: "m", + }, + cfg: None, + }, + Runnable { + use_name_in_title: false, + nav: NavigationTarget { + file_id: FileId( + 1, + ), full_range: 1..19, focus_range: 12..14, name: "t0", @@ -1716,21 +1732,6 @@ fn t1() {} }, cfg: None, }, - Runnable { - use_name_in_title: false, - nav: NavigationTarget { - file_id: FileId( - 1, - ), - full_range: 0..39, - name: "m", - kind: Module, - }, - kind: TestMod { - path: "m", - }, - cfg: None, - }, ] "#]], ); |
