feat: expose typed core LSP binding actions

This commit is contained in:
Valdemar Lorenzen
2026-10-09 13:59:49 +02:00
parent e72f89a7ae
commit 529d1fd5b3
5 changed files with 27 additions and 5 deletions
+5 -3
View File
@@ -220,7 +220,7 @@ impl Fixture {
"settings": {"rust-analyzer": {"cargo": {"allFeatures": true}}},
});
let config = format!(
"Vamp.configure do |config|\n config.clipboard_mode = 'separate'\n config.lsp['fixture-language'] = JSON.parse({})\nend\n",
"Vamp.configure do |config|\n config.clipboard_mode = 'separate'\n config.lsp['fixture-language'] = JSON.parse({})\n config.bind 'leader d', config.core.lsp_definition\n config.bind 'leader D', config.core.lsp_diagnostics\nend\n",
serde_json::to_string(&options.to_string()).unwrap(),
);
let config_path = self.root.join("config.rb");
@@ -389,7 +389,8 @@ fn lsp_framing_lifecycle_diagnostics_and_unicode_dirty_definition() {
for _ in 0..3 {
session.handle(Input::Right);
}
session.execute("lsp_definition");
session.handle(Input::Char(' '));
session.handle(Input::Char('d'));
until(&mut session, &fixture, |session| {
session.editor().buffer_id() == target_id
});
@@ -696,7 +697,8 @@ fn lsp_optional_configuration_numeric_sync_and_unversioned_diagnostics() {
session.handle(Input::Char('!'));
session.handle(Input::Escape);
session.execute("w");
session.execute("lsp_diagnostics");
session.handle(Input::Char(' '));
session.handle(Input::Char('D'));
until(&mut session, &fixture, |session| {
session
.editor()