mirror of
https://github.com/nushell/nushell
synced 2025-01-12 21:29:07 +00:00
fix(lsp): PWD env_var (#14805)
<!-- if this PR closes one or more issues, you can automatically link the PR with them by using one of the [*linking keywords*](https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword), e.g. - this PR should close #xxxx - fixes #xxxx you can also mention related issues, PRs or discussions! --> # Description <!-- Thank you for improving Nushell. Please, check our [contributing guide](../CONTRIBUTING.md) and talk to the core team before making major changes. Description of your pull request goes here. **Provide examples and/or screenshots** if your changes affect the user experience. --> This PR fixes an issue introduced by #14770 , as shown in https://github.com/nushell/nushell/pull/14802#issuecomment-2585270161 # User-Facing Changes <!-- List of all changes that impact the user experience here. This helps us keep track of breaking changes. --> # Tests + Formatting <!-- Don't forget to add tests that cover your changes. Make sure you've run and fixed any issues with these commands: - `cargo fmt --all -- --check` to check standard code formatting (`cargo fmt --all` applies these changes) - `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used` to check that you're using the standard code style - `cargo test --workspace` to check that all tests pass (on Windows make sure to [enable developer mode](https://learn.microsoft.com/en-us/windows/apps/get-started/developer-mode-features-and-debugging)) - `cargo run -- -c "use toolkit.nu; toolkit test stdlib"` to run the tests for the standard library > **Note** > from `nushell` you can also use the `toolkit` as follows > ```bash > use toolkit.nu # or use an `env_change` hook to activate it automatically > toolkit check pr > ``` --> # After Submitting <!-- If your PR had any user-facing changes, update [the documentation](https://github.com/nushell/nushell.github.io) after the PR is merged, if necessary. This will help us keep the docs up to date. -->
This commit is contained in:
parent
707ab1df6a
commit
0b71eb201c
3 changed files with 27 additions and 1 deletions
|
@ -118,4 +118,28 @@ mod tests {
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn publish_diagnostics_none() {
|
||||||
|
let (client_connection, _recv) = initialize_language_server();
|
||||||
|
|
||||||
|
let mut script = fixtures();
|
||||||
|
script.push("lsp");
|
||||||
|
script.push("diagnostics");
|
||||||
|
script.push("pwd.nu");
|
||||||
|
let script = path_to_uri(&script);
|
||||||
|
|
||||||
|
let notification = open_unchecked(&client_connection, script.clone());
|
||||||
|
|
||||||
|
assert_json_eq!(
|
||||||
|
notification,
|
||||||
|
serde_json::json!({
|
||||||
|
"method": "textDocument/publishDiagnostics",
|
||||||
|
"params": {
|
||||||
|
"uri": script,
|
||||||
|
"diagnostics": []
|
||||||
|
}
|
||||||
|
})
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -189,7 +189,8 @@ impl LanguageServer {
|
||||||
|
|
||||||
pub fn new_engine_state(&self) -> EngineState {
|
pub fn new_engine_state(&self) -> EngineState {
|
||||||
let mut engine_state = self.engine_state.clone();
|
let mut engine_state = self.engine_state.clone();
|
||||||
engine_state.add_env_var("PWD".into(), Value::test_string("."));
|
let cwd = std::env::current_dir().expect("Could not get current working directory.");
|
||||||
|
engine_state.add_env_var("PWD".into(), Value::test_string(cwd.to_string_lossy()));
|
||||||
engine_state
|
engine_state
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
1
tests/fixtures/lsp/diagnostics/pwd.nu
vendored
Normal file
1
tests/fixtures/lsp/diagnostics/pwd.nu
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
const toolkit_dir = path self .
|
Loading…
Reference in a new issue