Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/ide/src/runnables.rs')
-rw-r--r--crates/ide/src/runnables.rs255
1 files changed, 128 insertions, 127 deletions
diff --git a/crates/ide/src/runnables.rs b/crates/ide/src/runnables.rs
index f4abee0931..bcb2c8797d 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,
- },
]
"#]],
);