Skip to content

Commit 6f73a99

Browse files
committed
Use init_lsp_server_with_inline_source everywhere
1 parent deb6fdd commit 6f73a99

11 files changed

Lines changed: 102 additions & 189 deletions

File tree

tooling/lsp/src/requests/code_action/tests.rs

Lines changed: 9 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,24 @@
11
#![cfg(test)]
22

3-
use crate::{
4-
notifications::on_did_open_text_document, test_utils, tests::apply_text_edits,
5-
utils::get_cursor_line_and_column,
6-
};
3+
use crate::{test_utils, tests::apply_text_edits};
74

85
use async_lsp::lsp_types::{
96
CodeActionContext, CodeActionOrCommand, CodeActionParams, CodeActionResponse,
10-
DidOpenTextDocumentParams, PartialResultParams, Position, Range, TextDocumentIdentifier,
11-
TextDocumentItem, WorkDoneProgressParams,
7+
PartialResultParams, Range, TextDocumentIdentifier, WorkDoneProgressParams,
128
};
139

1410
use super::on_code_action_request;
1511

1612
/// Given a string with ">|<" (cursor) in it, returns all code actions that are available
1713
/// at that position together with the string with ">|<" removed.
1814
async fn get_code_action(src: &str) -> (CodeActionResponse, String) {
19-
let (mut state, noir_text_document) = test_utils::init_lsp_server("document_symbol").await;
20-
21-
let (line, column, src) = get_cursor_line_and_column(src);
22-
23-
let _ = on_did_open_text_document(
24-
&mut state,
25-
DidOpenTextDocumentParams {
26-
text_document: TextDocumentItem {
27-
uri: noir_text_document.clone(),
28-
language_id: "noir".to_string(),
29-
version: 0,
30-
text: src.clone(),
31-
},
32-
},
33-
);
34-
35-
let position = Position { line: line as u32, character: column as u32 };
15+
let (mut state, noir_text_document, position, src) =
16+
test_utils::init_lsp_server_with_inline_source_and_cursor(
17+
"document_symbol",
18+
"src/main.nr",
19+
src,
20+
)
21+
.await;
3622

3723
let response = on_code_action_request(
3824
&mut state,

tooling/lsp/src/requests/code_lens_request.rs

Lines changed: 4 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -287,32 +287,17 @@ fn debug_test_lens(
287287
mod tests {
288288

289289
use async_lsp::lsp_types::{
290-
CodeLensParams, DidOpenTextDocumentParams, PartialResultParams, TextDocumentIdentifier,
291-
TextDocumentItem, WorkDoneProgressParams,
290+
CodeLensParams, PartialResultParams, TextDocumentIdentifier, WorkDoneProgressParams,
292291
};
293292
use iter_extended::vecmap;
294293
use serde_json::Value;
295294
use tokio::test;
296295

297-
use crate::{
298-
notifications::on_did_open_text_document, requests::on_code_lens_request, test_utils,
299-
types::CodeLensResult,
300-
};
296+
use crate::{requests::on_code_lens_request, test_utils, types::CodeLensResult};
301297

302298
async fn get_code_lens(src: &str, directory: &str) -> CodeLensResult {
303-
let (mut state, noir_text_document) = test_utils::init_lsp_server(directory).await;
304-
305-
let _ = on_did_open_text_document(
306-
&mut state,
307-
DidOpenTextDocumentParams {
308-
text_document: TextDocumentItem {
309-
uri: noir_text_document.clone(),
310-
language_id: "noir".to_string(),
311-
version: 0,
312-
text: src.to_string(),
313-
},
314-
},
315-
);
299+
let (mut state, noir_text_document) =
300+
test_utils::init_lsp_server_with_inline_source(directory, "src/main.nr", src).await;
316301

317302
on_code_lens_request(
318303
&mut state,

tooling/lsp/src/requests/completion/tests.rs

Lines changed: 10 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ mod after_change;
33
#[cfg(test)]
44
mod completion_tests {
55
use crate::{
6-
notifications::on_did_open_text_document,
76
requests::{
87
completion::{
98
completion_items::{
@@ -19,42 +18,32 @@ mod completion_tests {
1918
},
2019
test_utils,
2120
tests::apply_text_edits,
22-
utils::get_cursor_line_and_column,
2321
};
2422

2523
use async_lsp::lsp_types::{
2624
CompletionItem, CompletionItemKind, CompletionItemLabelDetails, CompletionParams,
27-
CompletionResponse, DidOpenTextDocumentParams, Documentation, PartialResultParams,
28-
Position, TextDocumentIdentifier, TextDocumentItem, TextDocumentPositionParams,
29-
WorkDoneProgressParams,
25+
CompletionResponse, Documentation, PartialResultParams, TextDocumentIdentifier,
26+
TextDocumentPositionParams, WorkDoneProgressParams,
3027
};
3128
use tokio::test;
3229

3330
/// Given a string with ">|<" (cursor) in it, returns all completions that are available
3431
/// at that position together with the string with ">|<" removed.
3532
async fn get_completions(src: &str) -> (Vec<CompletionItem>, String) {
36-
let (mut state, noir_text_document) = test_utils::init_lsp_server("document_symbol").await;
37-
38-
let (line, column, src) = get_cursor_line_and_column(src);
39-
40-
let _ = on_did_open_text_document(
41-
&mut state,
42-
DidOpenTextDocumentParams {
43-
text_document: TextDocumentItem {
44-
uri: noir_text_document.clone(),
45-
language_id: "noir".to_string(),
46-
version: 0,
47-
text: src.clone(),
48-
},
49-
},
50-
);
33+
let (mut state, noir_text_document, position, src) =
34+
test_utils::init_lsp_server_with_inline_source_and_cursor(
35+
"document_symbol",
36+
"src/main.nr",
37+
src,
38+
)
39+
.await;
5140

5241
let response = on_completion_request(
5342
&mut state,
5443
CompletionParams {
5544
text_document_position: TextDocumentPositionParams {
5645
text_document: TextDocumentIdentifier { uri: noir_text_document },
57-
position: Position { line: line as u32, character: column as u32 },
46+
position,
5847
},
5948
work_done_progress_params: WorkDoneProgressParams { work_done_token: None },
6049
partial_result_params: PartialResultParams { partial_result_token: None },

tooling/lsp/src/requests/completion/tests/after_change.rs

Lines changed: 10 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,24 @@
11
#[cfg(test)]
22
mod tests {
33
use crate::{
4-
notifications::on_did_open_text_document, on_did_change_text_document,
5-
requests::on_completion_request, test_utils, utils::get_cursor_line_and_column,
4+
on_did_change_text_document, requests::on_completion_request, test_utils,
5+
utils::get_cursor_line_and_column,
66
};
77

88
use async_lsp::lsp_types::{
99
CompletionItem, CompletionParams, CompletionResponse, DidChangeTextDocumentParams,
10-
DidOpenTextDocumentParams, PartialResultParams, Position, TextDocumentContentChangeEvent,
11-
TextDocumentIdentifier, TextDocumentItem, TextDocumentPositionParams,
12-
VersionedTextDocumentIdentifier, WorkDoneProgressParams,
10+
PartialResultParams, Position, TextDocumentContentChangeEvent, TextDocumentIdentifier,
11+
TextDocumentPositionParams, VersionedTextDocumentIdentifier, WorkDoneProgressParams,
1312
};
1413
use tokio::test;
1514

1615
async fn get_completions_after_change(before: &str, after: &str) -> Vec<CompletionItem> {
17-
let (mut state, noir_text_document) = test_utils::init_lsp_server("document_symbol").await;
18-
19-
let _ = on_did_open_text_document(
20-
&mut state,
21-
DidOpenTextDocumentParams {
22-
text_document: TextDocumentItem {
23-
uri: noir_text_document.clone(),
24-
language_id: "noir".to_string(),
25-
version: 0,
26-
text: before.to_string(),
27-
},
28-
},
29-
);
16+
let (mut state, noir_text_document) = test_utils::init_lsp_server_with_inline_source(
17+
"document_symbol",
18+
"src/main.nr",
19+
before,
20+
)
21+
.await;
3022

3123
let (line, column, after) = get_cursor_line_and_column(after);
3224

tooling/lsp/src/requests/document_symbol.rs

Lines changed: 5 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -514,29 +514,18 @@ impl Visitor for DocumentSymbolCollector<'_> {
514514

515515
#[cfg(test)]
516516
mod document_symbol_tests {
517-
use crate::{notifications::on_did_open_text_document, test_utils};
517+
use crate::test_utils;
518518

519519
use super::*;
520520
use async_lsp::lsp_types::{
521-
DidOpenTextDocumentParams, PartialResultParams, Range, SymbolKind, TextDocumentIdentifier,
522-
TextDocumentItem, WorkDoneProgressParams,
521+
PartialResultParams, Range, SymbolKind, TextDocumentIdentifier, WorkDoneProgressParams,
523522
};
524523
use tokio::test;
525524

526525
async fn get_document_symbols(src: &str) -> Vec<DocumentSymbol> {
527-
let (mut state, noir_text_document) = test_utils::init_lsp_server("document_symbol").await;
528-
529-
let _ = on_did_open_text_document(
530-
&mut state,
531-
DidOpenTextDocumentParams {
532-
text_document: TextDocumentItem {
533-
uri: noir_text_document.clone(),
534-
language_id: "noir".to_string(),
535-
version: 0,
536-
text: src.to_string(),
537-
},
538-
},
539-
);
526+
let (mut state, noir_text_document) =
527+
test_utils::init_lsp_server_with_inline_source("document_symbol", "src/main.nr", src)
528+
.await;
540529

541530
let response = on_document_symbol_request(
542531
&mut state,

tooling/lsp/src/requests/folding_range/tests.rs

Lines changed: 4 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,14 @@
1-
use crate::{notifications::on_did_open_text_document, test_utils};
1+
use crate::test_utils;
22

33
use super::*;
44
use async_lsp::lsp_types::{
5-
DidOpenTextDocumentParams, FoldingRangeKind, PartialResultParams, TextDocumentIdentifier,
6-
TextDocumentItem, WorkDoneProgressParams,
5+
FoldingRangeKind, PartialResultParams, TextDocumentIdentifier, WorkDoneProgressParams,
76
};
87
use tokio::test;
98

109
async fn get_folding_ranges(src: &str) -> Vec<FoldingRange> {
11-
let (mut state, noir_text_document) = test_utils::init_lsp_server("document_symbol").await;
12-
13-
let _ = on_did_open_text_document(
14-
&mut state,
15-
DidOpenTextDocumentParams {
16-
text_document: TextDocumentItem {
17-
uri: noir_text_document.clone(),
18-
language_id: "noir".to_string(),
19-
version: 0,
20-
text: src.to_string(),
21-
},
22-
},
23-
);
10+
let (mut state, noir_text_document) =
11+
test_utils::init_lsp_server_with_inline_source("document_symbol", "src/main.nr", src).await;
2412

2513
on_folding_range_request(
2614
&mut state,

tooling/lsp/src/requests/hover.rs

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,9 +45,13 @@ mod hover_tests {
4545
}
4646

4747
async fn get_hover_text(src: &str) -> String {
48-
let (mut state, file_uri, position) =
49-
test_utils::init_lsp_server_with_inline_source("workspace", "two/src/lib.nr", src)
50-
.await;
48+
let (mut state, file_uri, position, _src) =
49+
test_utils::init_lsp_server_with_inline_source_and_cursor(
50+
"workspace",
51+
"two/src/lib.nr",
52+
src,
53+
)
54+
.await;
5155

5256
let hover = on_hover_request(
5357
&mut state,

tooling/lsp/src/requests/references.rs

Lines changed: 11 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -28,14 +28,12 @@ pub(crate) fn on_references_request(
2828
#[cfg(test)]
2929
mod references_tests {
3030
use super::*;
31+
use crate::notifications;
3132
use crate::notifications::workspace_from_document_uri;
3233
use crate::test_utils::{self, search_in_file};
33-
use crate::utils::get_cursor_line_and_column;
34-
use crate::{notifications, on_did_open_text_document};
3534
use async_lsp::lsp_types::{
36-
DidOpenTextDocumentParams, PartialResultParams, Position, Range, ReferenceContext,
37-
TextDocumentIdentifier, TextDocumentItem, TextDocumentPositionParams, Url,
38-
WorkDoneProgressParams,
35+
PartialResultParams, Position, Range, ReferenceContext, TextDocumentIdentifier,
36+
TextDocumentPositionParams, Url, WorkDoneProgressParams,
3937
};
4038
use tokio::test;
4139

@@ -185,28 +183,20 @@ mod references_tests {
185183
}
186184
";
187185

188-
let (mut state, noir_text_document) = test_utils::init_lsp_server("document_symbol").await;
189-
190-
let (line, column, src) = get_cursor_line_and_column(src);
191-
192-
let _ = on_did_open_text_document(
193-
&mut state,
194-
DidOpenTextDocumentParams {
195-
text_document: TextDocumentItem {
196-
uri: noir_text_document.clone(),
197-
language_id: "noir".to_string(),
198-
version: 0,
199-
text: src.clone(),
200-
},
201-
},
202-
);
186+
let (mut state, noir_text_document, position, _src) =
187+
test_utils::init_lsp_server_with_inline_source_and_cursor(
188+
"document_symbol",
189+
"src/main.nr",
190+
src,
191+
)
192+
.await;
203193

204194
let result = on_references_request(
205195
&mut state,
206196
ReferenceParams {
207197
text_document_position: TextDocumentPositionParams {
208198
text_document: TextDocumentIdentifier { uri: noir_text_document },
209-
position: Position { line: line as u32, character: column as u32 },
199+
position,
210200
},
211201
work_done_progress_params: WorkDoneProgressParams { work_done_token: None },
212202
partial_result_params: PartialResultParams { partial_result_token: None },

tooling/lsp/src/requests/semantic_tokens.rs

Lines changed: 6 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -543,31 +543,18 @@ impl Visitor for SemanticTokenCollector<'_> {
543543
#[cfg(test)]
544544
mod tests {
545545
use async_lsp::lsp_types::{
546-
DidOpenTextDocumentParams, PartialResultParams, SemanticToken, SemanticTokensParams,
547-
SemanticTokensResult, TextDocumentIdentifier, TextDocumentItem, WorkDoneProgressParams,
546+
PartialResultParams, SemanticToken, SemanticTokensParams, SemanticTokensResult,
547+
TextDocumentIdentifier, WorkDoneProgressParams,
548548
};
549549
use insta::assert_snapshot;
550550
use tokio::test;
551551

552-
use crate::{
553-
notifications::on_did_open_text_document, requests::on_semantic_tokens_full_request,
554-
test_utils,
555-
};
552+
use crate::{requests::on_semantic_tokens_full_request, test_utils};
556553

557554
async fn get_semantic_tokens(src: &str) -> Vec<SemanticToken> {
558-
let (mut state, noir_text_document) = test_utils::init_lsp_server("document_symbol").await;
559-
560-
let _ = on_did_open_text_document(
561-
&mut state,
562-
DidOpenTextDocumentParams {
563-
text_document: TextDocumentItem {
564-
uri: noir_text_document.clone(),
565-
language_id: "noir".to_string(),
566-
version: 0,
567-
text: src.to_string(),
568-
},
569-
},
570-
);
555+
let (mut state, noir_text_document) =
556+
test_utils::init_lsp_server_with_inline_source("document_symbol", "src/main.nr", src)
557+
.await;
571558

572559
let response = on_semantic_tokens_full_request(
573560
&mut state,

0 commit comments

Comments
 (0)