tests: add hover tests for const generics

This commit is contained in:
Artur Sinila 2022-07-14 00:32:25 +03:00
parent 4cbf23c192
commit b9b42e8670
No known key found for this signature in database
GPG Key ID: 770E69D690735C61

View File

@ -2958,6 +2958,106 @@ struct ST<const C: usize, T = Foo>
);
}
#[test]
fn const_generic_positive_i8_literal() {
check(
r#"
struct Const<const N: i8>;
fn main() {
let v$0alue = Const::<1>;
}
"#,
expect![[r#"
*value*
```rust
let value: Const<1>
```
"#]],
);
}
#[test]
fn const_generic_zero_i8_literal() {
check(
r#"
struct Const<const N: i8>;
fn main() {
let v$0alue = Const::<0>;
}
"#,
expect![[r#"
*value*
```rust
let value: Const<0>
```
"#]],
);
}
#[test]
fn const_generic_negative_i8_literal() {
check(
r#"
struct Const<const N: i8>;
fn main() {
let v$0alue = Const::<-1>;
}
"#,
expect![[r#"
*value*
```rust
let value: Const<-1>
```
"#]],
);
}
#[test]
fn const_generic_bool_literal() {
check(
r#"
struct Const<const F: bool>;
fn main() {
let v$0alue = Const::<true>;
}
"#,
expect![[r#"
*value*
```rust
let value: Const<true>
```
"#]],
);
}
#[test]
fn const_generic_char_literal() {
check(
r#"
struct Const<const C: char>;
fn main() {
let v$0alue = Const::<'🦀'>;
}
"#,
expect![[r#"
*value*
```rust
let value: Const<'🦀'>
```
"#]],
);
}
#[test]
fn hover_self_param_shows_type() {
check(