mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-10-03 07:04:49 +00:00
Add tests for stability check in completion
This commit is contained in:
parent
0ce71dd76f
commit
e6e48728da
9 changed files with 428 additions and 15 deletions
|
@ -1,12 +1,7 @@
|
|||
//! Completion tests for pattern position.
|
||||
use expect_test::{expect, Expect};
|
||||
|
||||
use crate::tests::{check_edit, completion_list, BASE_ITEMS_FIXTURE};
|
||||
|
||||
fn check_empty(ra_fixture: &str, expect: Expect) {
|
||||
let actual = completion_list(ra_fixture);
|
||||
expect.assert_eq(&actual)
|
||||
}
|
||||
use crate::tests::{check_edit, check_empty, completion_list, BASE_ITEMS_FIXTURE};
|
||||
|
||||
fn check(ra_fixture: &str, expect: Expect) {
|
||||
let actual = completion_list(&format!("{BASE_ITEMS_FIXTURE}\n{ra_fixture}"));
|
||||
|
@ -742,3 +737,56 @@ fn f(x: EnumAlias<u8>) {
|
|||
"#]],
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn pat_no_unstable_item_on_stable() {
|
||||
check_empty(
|
||||
r#"
|
||||
//- /main.rs crate:main deps:std
|
||||
use std::*;
|
||||
fn foo() {
|
||||
let a$0
|
||||
}
|
||||
//- /std.rs crate:std
|
||||
#[unstable]
|
||||
pub struct S;
|
||||
#[unstable]
|
||||
pub enum Enum {
|
||||
Variant
|
||||
}
|
||||
"#,
|
||||
expect![[r#"
|
||||
md std
|
||||
kw mut
|
||||
kw ref
|
||||
"#]],
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn pat_unstable_item_on_nightly() {
|
||||
check_empty(
|
||||
r#"
|
||||
//- toolchain:nightly
|
||||
//- /main.rs crate:main deps:std
|
||||
use std::*;
|
||||
fn foo() {
|
||||
let a$0
|
||||
}
|
||||
//- /std.rs crate:std
|
||||
#[unstable]
|
||||
pub struct S;
|
||||
#[unstable]
|
||||
pub enum Enum {
|
||||
Variant
|
||||
}
|
||||
"#,
|
||||
expect![[r#"
|
||||
en Enum
|
||||
md std
|
||||
st S
|
||||
kw mut
|
||||
kw ref
|
||||
"#]],
|
||||
);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue