diff options
author | Jean Pierre <jeanp413@hotmail.com> | 2021-08-05 20:46:32 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-08-06 11:46:32 +1000 |
commit | 728d205d9d2551a356a022b6b083bcdcf081f3bf (patch) | |
tree | c0823fef3a96ed164379c5297d521fce9b2628d8 /cli/tests/integration/lsp_tests.rs | |
parent | 3f0cf9619fce71a8898c495501df4bdb0e07e735 (diff) |
feat(lsp): implement refactoring code actions (#11555)
Closes: denoland/vscode_deno#433
Diffstat (limited to 'cli/tests/integration/lsp_tests.rs')
-rw-r--r-- | cli/tests/integration/lsp_tests.rs | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/cli/tests/integration/lsp_tests.rs b/cli/tests/integration/lsp_tests.rs index 8bf019aa7..e66b59c2b 100644 --- a/cli/tests/integration/lsp_tests.rs +++ b/cli/tests/integration/lsp_tests.rs @@ -2116,6 +2116,45 @@ fn lsp_code_actions_imports() { } #[test] +fn lsp_code_actions_refactor() { + let mut client = init("initialize_params.json"); + did_open( + &mut client, + json!({ + "textDocument": { + "uri": "file:///a/file.ts", + "languageId": "typescript", + "version": 1, + "text": "var x: { a?: number; b?: string } = {};\n" + } + }), + ); + let (maybe_res, maybe_err) = client + .write_request( + "textDocument/codeAction", + load_fixture("code_action_params_refactor.json"), + ) + .unwrap(); + assert!(maybe_err.is_none()); + assert_eq!( + maybe_res, + Some(load_fixture("code_action_response_refactor.json")) + ); + let (maybe_res, maybe_err) = client + .write_request( + "codeAction/resolve", + load_fixture("code_action_resolve_params_refactor.json"), + ) + .unwrap(); + assert!(maybe_err.is_none()); + assert_eq!( + maybe_res, + Some(load_fixture("code_action_resolve_response_refactor.json")) + ); + shutdown(&mut client); +} + +#[test] fn lsp_code_actions_deadlock() { let mut client = init("initialize_params.json"); client |