From b8d4bb76703bcb15578e2b23c5d256532180b894 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Tue, 3 Dec 2019 03:01:24 +0000 Subject: CTAN sync 201912030301 --- support/texlab/tests/test_diagnostics_bibtex.rs | 36 +++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 support/texlab/tests/test_diagnostics_bibtex.rs (limited to 'support/texlab/tests/test_diagnostics_bibtex.rs') diff --git a/support/texlab/tests/test_diagnostics_bibtex.rs b/support/texlab/tests/test_diagnostics_bibtex.rs new file mode 100644 index 0000000000..8198e9c152 --- /dev/null +++ b/support/texlab/tests/test_diagnostics_bibtex.rs @@ -0,0 +1,36 @@ +pub mod support; + +use lsp_types::*; +use std::sync::Arc; +use support::*; +use texlab::diagnostics::BibtexErrorCode; + +#[tokio::test] +async fn did_change_update() { + let scenario = Scenario::new("diagnostics/bibtex", Arc::new(Box::new(tex::Unknown))); + scenario.open("foo.bib").await; + { + let diagnostics_by_uri = scenario.client.diagnostics_by_uri.lock().await; + let diagnostics = &diagnostics_by_uri[&scenario.uri("foo.bib")]; + assert_eq!(diagnostics.len(), 1); + assert_eq!( + diagnostics[0].message, + BibtexErrorCode::MissingBeginBrace.message() + ); + assert_eq!(diagnostics[0].range.start.line, 0); + } + let params = DidChangeTextDocumentParams { + text_document: VersionedTextDocumentIdentifier::new(scenario.uri("foo.bib").into(), 0), + content_changes: vec![TextDocumentContentChangeEvent { + range: None, + range_length: None, + text: "@article{foo,}\n".into(), + }], + }; + scenario.server.execute(|svr| svr.did_change(params)).await; + { + let diagnostics_by_uri = scenario.client.diagnostics_by_uri.lock().await; + let diagnostics = &diagnostics_by_uri[&scenario.uri("foo.bib")]; + assert_eq!(diagnostics.len(), 0); + } +} -- cgit v1.2.3