diff options
Diffstat (limited to 'crates/hir_def/src/nameres/tests')
-rw-r--r-- | crates/hir_def/src/nameres/tests/diagnostics.rs | 16 | ||||
-rw-r--r-- | crates/hir_def/src/nameres/tests/macros.rs | 14 |
2 files changed, 30 insertions, 0 deletions
diff --git a/crates/hir_def/src/nameres/tests/diagnostics.rs b/crates/hir_def/src/nameres/tests/diagnostics.rs index 58d69d3c6..e8e72e5ef 100644 --- a/crates/hir_def/src/nameres/tests/diagnostics.rs +++ b/crates/hir_def/src/nameres/tests/diagnostics.rs | |||
@@ -62,6 +62,22 @@ fn unresolved_extern_crate() { | |||
62 | } | 62 | } |
63 | 63 | ||
64 | #[test] | 64 | #[test] |
65 | fn extern_crate_self_as() { | ||
66 | mark::check!(extern_crate_self_as); | ||
67 | check_diagnostics( | ||
68 | r" | ||
69 | //- /lib.rs | ||
70 | extern crate doesnotexist; | ||
71 | //^^^^^^^^^^^^^^^^^^^^^^^^^^ unresolved extern crate | ||
72 | // Should not error. | ||
73 | extern crate self as foo; | ||
74 | struct Foo; | ||
75 | use foo::Foo as Bar; | ||
76 | ", | ||
77 | ); | ||
78 | } | ||
79 | |||
80 | #[test] | ||
65 | fn dedup_unresolved_import_from_unresolved_crate() { | 81 | fn dedup_unresolved_import_from_unresolved_crate() { |
66 | check_diagnostics( | 82 | check_diagnostics( |
67 | r" | 83 | r" |
diff --git a/crates/hir_def/src/nameres/tests/macros.rs b/crates/hir_def/src/nameres/tests/macros.rs index e5e9e8ca1..36ed5e8ce 100644 --- a/crates/hir_def/src/nameres/tests/macros.rs +++ b/crates/hir_def/src/nameres/tests/macros.rs | |||
@@ -391,11 +391,21 @@ foo!(ok_shadow); | |||
391 | mod m4; | 391 | mod m4; |
392 | bar!(OkMacroUse); | 392 | bar!(OkMacroUse); |
393 | 393 | ||
394 | mod m5; | ||
395 | baz!(OkMacroUseInner); | ||
396 | |||
394 | //- /m3/m4.rs | 397 | //- /m3/m4.rs |
395 | foo!(ok_shadow_deep); | 398 | foo!(ok_shadow_deep); |
396 | macro_rules! bar { | 399 | macro_rules! bar { |
397 | ($x:ident) => { struct $x; } | 400 | ($x:ident) => { struct $x; } |
398 | } | 401 | } |
402 | //- /m3/m5.rs | ||
403 | #![macro_use] | ||
404 | macro_rules! baz { | ||
405 | ($x:ident) => { struct $x; } | ||
406 | } | ||
407 | |||
408 | |||
399 | "#, | 409 | "#, |
400 | expect![[r#" | 410 | expect![[r#" |
401 | crate | 411 | crate |
@@ -423,11 +433,15 @@ macro_rules! bar { | |||
423 | crate::m3 | 433 | crate::m3 |
424 | OkAfterInside: t v | 434 | OkAfterInside: t v |
425 | OkMacroUse: t v | 435 | OkMacroUse: t v |
436 | OkMacroUseInner: t v | ||
426 | m4: t | 437 | m4: t |
438 | m5: t | ||
427 | ok_shadow: v | 439 | ok_shadow: v |
428 | 440 | ||
429 | crate::m3::m4 | 441 | crate::m3::m4 |
430 | ok_shadow_deep: v | 442 | ok_shadow_deep: v |
443 | |||
444 | crate::m3::m5 | ||
431 | "#]], | 445 | "#]], |
432 | ); | 446 | ); |
433 | } | 447 | } |