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.rs50
1 files changed, 49 insertions, 1 deletions
diff --git a/crates/ide/src/syntax_highlighting/tests.rs b/crates/ide/src/syntax_highlighting/tests.rs
index 6fed7d783e..f4a9623fc8 100644
--- a/crates/ide/src/syntax_highlighting/tests.rs
+++ b/crates/ide/src/syntax_highlighting/tests.rs
@@ -630,6 +630,52 @@ fn main() {
}
#[test]
+fn test_const_highlighting() {
+ check_highlighting(
+ r#"
+macro_rules! id {
+ ($($tt:tt)*) => {
+ $($tt)*
+ };
+}
+const CONST_ITEM: *const () = &raw const ();
+const fn const_fn<const CONST_PARAM: ()>(const {}: const fn()) where (): const ConstTrait {
+ CONST_ITEM;
+ CONST_PARAM;
+ const {
+ const || {}
+ }
+ id!(
+ CONST_ITEM;
+ CONST_PARAM;
+ const {
+ const || {}
+ };
+ &raw const ();
+ const
+ );
+}
+trait ConstTrait {
+ const ASSOC_CONST: () = ();
+ const fn assoc_const_fn() {}
+}
+impl const ConstTrait for () {
+ const ASSOC_CONST: () = ();
+ const fn assoc_const_fn() {}
+}
+
+macro_rules! unsafe_deref {
+ () => {
+ *(&() as *const ())
+ };
+}
+"#,
+ expect_file!["./test_data/highlight_const.html"],
+ false,
+ );
+}
+
+#[test]
fn test_highlight_doc_comment() {
check_highlighting(
r#"
@@ -1173,7 +1219,9 @@ fn benchmark_syntax_highlighting_parser() {
.highlight(HL_CONFIG, file_id)
.unwrap()
.iter()
- .filter(|it| it.highlight.tag == HlTag::Symbol(SymbolKind::Function))
+ .filter(|it| {
+ matches!(it.highlight.tag, HlTag::Symbol(SymbolKind::Function | SymbolKind::Method))
+ })
.count()
};
assert_eq!(hash, 1169);