Use single languages::{rust_lang, markdown_lang} in tests across the codebase (#44282)
This allows referencing proper queries and keeping the tests up-to-date. Release Notes: - N/A
This commit is contained in:
1 parent
9d2a54f379
commit
fa80f8dc9d
22 files changed
+267
-830
No files matched your search
@@ -1,9 +1,9 @@
|
||||
use super::*;
|
||||
use crate::{
|
||||
LanguageConfig, LanguageMatcher,
|
||||
buffer_tests::{markdown_inline_lang, markdown_lang},
|
||||
LanguageConfig, LanguageMatcher, buffer_tests::markdown_inline_lang, markdown_lang, rust_lang,
|
||||
};
|
||||
use gpui::App;
|
||||
use pretty_assertions::assert_eq;
|
||||
use rand::rngs::StdRng;
|
||||
use std::{env, ops::Range, sync::Arc};
|
||||
use text::{Buffer, BufferId, ReplicaId};
|
||||
@@ -84,7 +84,7 @@ fn test_splice_included_ranges() {
|
||||
#[gpui::test]
|
||||
fn test_syntax_map_layers_for_range(cx: &mut App) {
|
||||
let registry = Arc::new(LanguageRegistry::test(cx.background_executor().clone()));
|
||||
let language = Arc::new(rust_lang());
|
||||
let language = rust_lang();
|
||||
registry.add(language.clone());
|
||||
|
||||
let mut buffer = Buffer::new(
|
||||
@@ -181,11 +181,11 @@ fn test_syntax_map_layers_for_range(cx: &mut App) {
|
||||
#[gpui::test]
|
||||
fn test_dynamic_language_injection(cx: &mut App) {
|
||||
let registry = Arc::new(LanguageRegistry::test(cx.background_executor().clone()));
|
||||
let markdown = Arc::new(markdown_lang());
|
||||
let markdown = markdown_lang();
|
||||
let markdown_inline = Arc::new(markdown_inline_lang());
|
||||
registry.add(markdown.clone());
|
||||
registry.add(markdown_inline.clone());
|
||||
registry.add(Arc::new(rust_lang()));
|
||||
registry.add(rust_lang());
|
||||
registry.add(Arc::new(ruby_lang()));
|
||||
|
||||
let mut buffer = Buffer::new(
|
||||
@@ -291,7 +291,7 @@ fn test_typing_multiple_new_injections(cx: &mut App) {
|
||||
assert_capture_ranges(
|
||||
&syntax_map,
|
||||
&buffer,
|
||||
&["field"],
|
||||
&["property"],
|
||||
"fn a() { test_macro!(b.«c»(vec![d.«e»])) }",
|
||||
);
|
||||
}
|
||||
@@ -329,16 +329,16 @@ fn test_pasting_new_injection_line_between_others(cx: &mut App) {
|
||||
assert_capture_ranges(
|
||||
&syntax_map,
|
||||
&buffer,
|
||||
&["struct"],
|
||||
&["type"],
|
||||
"
|
||||
fn a() {
|
||||
b!(«B {}»);
|
||||
c!(«C {}»);
|
||||
d!(«D {}»);
|
||||
h!(«H {}»);
|
||||
e!(«E {}»);
|
||||
f!(«F {}»);
|
||||
g!(«G {}»);
|
||||
b!(«B» {});
|
||||
c!(«C» {});
|
||||
d!(«D» {});
|
||||
h!(«H» {});
|
||||
e!(«E» {});
|
||||
f!(«F» {});
|
||||
g!(«G» {});
|
||||
}
|
||||
",
|
||||
);
|
||||
@@ -376,7 +376,7 @@ fn test_joining_injections_with_child_injections(cx: &mut App) {
|
||||
assert_capture_ranges(
|
||||
&syntax_map,
|
||||
&buffer,
|
||||
&["field"],
|
||||
&["property"],
|
||||
"
|
||||
fn a() {
|
||||
b!(
|
||||
@@ -900,7 +900,7 @@ fn test_random_syntax_map_edits_rust_macros(rng: StdRng, cx: &mut App) {
|
||||
.repeat(2);
|
||||
|
||||
let registry = Arc::new(LanguageRegistry::test(cx.background_executor().clone()));
|
||||
let language = Arc::new(rust_lang());
|
||||
let language = rust_lang();
|
||||
registry.add(language.clone());
|
||||
|
||||
test_random_edits(text, registry, language, rng);
|
||||
@@ -1147,11 +1147,11 @@ fn test_edit_sequence(language_name: &str, steps: &[&str], cx: &mut App) -> (Buf
|
||||
let registry = Arc::new(LanguageRegistry::test(cx.background_executor().clone()));
|
||||
registry.add(Arc::new(elixir_lang()));
|
||||
registry.add(Arc::new(heex_lang()));
|
||||
registry.add(Arc::new(rust_lang()));
|
||||
registry.add(rust_lang());
|
||||
registry.add(Arc::new(ruby_lang()));
|
||||
registry.add(Arc::new(html_lang()));
|
||||
registry.add(Arc::new(erb_lang()));
|
||||
registry.add(Arc::new(markdown_lang()));
|
||||
registry.add(markdown_lang());
|
||||
registry.add(Arc::new(markdown_inline_lang()));
|
||||
|
||||
let language = registry
|
||||
@@ -1287,35 +1287,6 @@ fn erb_lang() -> Language {
|
||||
.unwrap()
|
||||
}
|
||||
|
||||
fn rust_lang() -> Language {
|
||||
Language::new(
|
||||
LanguageConfig {
|
||||
name: "Rust".into(),
|
||||
matcher: LanguageMatcher {
|
||||
path_suffixes: vec!["rs".to_string()],
|
||||
..Default::default()
|
||||
},
|
||||
..Default::default()
|
||||
},
|
||||
Some(tree_sitter_rust::LANGUAGE.into()),
|
||||
)
|
||||
.with_highlights_query(
|
||||
r#"
|
||||
(field_identifier) @field
|
||||
(struct_expression) @struct
|
||||
"#,
|
||||
)
|
||||
.unwrap()
|
||||
.with_injection_query(
|
||||
r#"
|
||||
(macro_invocation
|
||||
(token_tree) @injection.content
|
||||
(#set! injection.language "rust"))
|
||||
"#,
|
||||
)
|
||||
.unwrap()
|
||||
}
|
||||
|
||||
fn elixir_lang() -> Language {
|
||||
Language::new(
|
||||
LanguageConfig {
|
||||
@@ -1425,6 +1396,7 @@ fn assert_capture_ranges(
|
||||
actual_ranges.push(capture.node.byte_range());
|
||||
}
|
||||
}
|
||||
actual_ranges.dedup();
|
||||
|
||||
let (text, expected_ranges) = marked_text_ranges(&marked_string.unindent(), false);
|
||||
assert_eq!(text, buffer.text());
|
||||
|
||||
Reference in new issue
Block a user