1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-24 15:19:26 -05:00

fix(lsp): ensure language server status works on unix (#18727)

Closes #18724
This commit is contained in:
David Sherret 2023-04-16 16:02:48 -04:00 committed by Levente Kurusa
parent d9279e3dd6
commit 49a697e4bb
No known key found for this signature in database
GPG key ID: 9F72F3C05BA137C4

View file

@ -188,10 +188,14 @@ impl LspUrlMap {
if let Some(specifier) = inner.get_specifier(url).cloned() {
specifier
} else {
let specifier = if let Ok(path) = url.to_file_path() {
match kind {
LspUrlKind::Folder => Url::from_directory_path(path).unwrap(),
LspUrlKind::File => Url::from_file_path(path).unwrap(),
let specifier = if url.scheme() == "file" {
if let Ok(path) = url.to_file_path() {
match kind {
LspUrlKind::Folder => Url::from_directory_path(path).unwrap(),
LspUrlKind::File => Url::from_file_path(path).unwrap(),
}
} else {
url.clone()
}
} else {
url.clone()
@ -293,4 +297,12 @@ mod tests {
.unwrap();
assert_eq!(actual, expected);
}
#[test]
fn test_normalize_deno_status() {
let map = LspUrlMap::default();
let fixture = resolve_url("deno:/status.md").unwrap();
let actual = map.normalize_url(&fixture, LspUrlKind::File);
assert_eq!(actual, fixture);
}
}