Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/ide/src/syntax_highlighting/tests.rs')
-rw-r--r--crates/ide/src/syntax_highlighting/tests.rs27
1 files changed, 26 insertions, 1 deletions
diff --git a/crates/ide/src/syntax_highlighting/tests.rs b/crates/ide/src/syntax_highlighting/tests.rs
index 3775265f23..e48ca86c46 100644
--- a/crates/ide/src/syntax_highlighting/tests.rs
+++ b/crates/ide/src/syntax_highlighting/tests.rs
@@ -386,7 +386,7 @@ mod __ {
}
macro_rules! void {
- ($($tt:tt)*) => {}
+ ($($tt:tt)*) => {discard!($($tt:tt)*)}
}
struct __ where Self:;
@@ -412,6 +412,31 @@ void!('static 'self 'unsafe)
}
#[test]
+fn test_keyword_macro_edition_highlighting() {
+ check_highlighting(
+ r#"
+//- /main.rs crate:main edition:2018 deps:lib2015,lib2024
+lib2015::void_2015!(try async await gen);
+lib2024::void_2024!(try async await gen);
+//- /lib2015.rs crate:lib2015 edition:2015
+#[macro_export]
+macro_rules! void_2015 {
+ ($($tt:tt)*) => {discard!($($tt:tt)*)}
+}
+
+//- /lib2024.rs crate:lib2024 edition:2024
+#[macro_export]
+macro_rules! void_2024 {
+ ($($tt:tt)*) => {discard!($($tt:tt)*)}
+}
+
+"#,
+ expect_file![format!("./test_data/highlight_keywords_macros.html")],
+ false,
+ );
+}
+
+#[test]
fn test_string_highlighting() {
// The format string detection is based on macro-expansion,
// thus, we have to copy the macro definition from `std`