mirror of
https://github.com/latex-lsp/texlab.git
synced 2025-12-23 09:19:21 +00:00
89 lines
2.2 KiB
Rust
89 lines
2.2 KiB
Rust
use anyhow::Result;
|
|
use insta::assert_json_snapshot;
|
|
use lsp_types::ClientCapabilities;
|
|
|
|
use crate::common::ServerTester;
|
|
|
|
#[test]
|
|
fn test_empty_bibtex_document() -> Result<()> {
|
|
let server = ServerTester::launch_new_instance()?;
|
|
server.initialize(ClientCapabilities::default(), None)?;
|
|
let uri = server.open("main.bib", "", "bibtex", false)?;
|
|
assert_json_snapshot!(server.hover(uri, 0, 0)?);
|
|
Ok(())
|
|
}
|
|
|
|
#[test]
|
|
fn test_empty_labtex_document() -> Result<()> {
|
|
let server = ServerTester::launch_new_instance()?;
|
|
server.initialize(ClientCapabilities::default(), None)?;
|
|
let uri = server.open("main.tex", "", "latex", false)?;
|
|
assert_json_snapshot!(server.hover(uri, 0, 0)?);
|
|
Ok(())
|
|
}
|
|
|
|
#[test]
|
|
fn test_label_theorem_child_file() -> Result<()> {
|
|
let server = ServerTester::launch_new_instance()?;
|
|
server.initialize(ClientCapabilities::default(), None)?;
|
|
let uri = server.open(
|
|
"main.tex",
|
|
r#"
|
|
\documentclass{article}
|
|
\newtheorem{lemma}{Lemma}
|
|
\include{child}
|
|
\ref{thm:foo}
|
|
"#,
|
|
"latex",
|
|
false,
|
|
)?;
|
|
server.open(
|
|
"child.tex",
|
|
r#"
|
|
\begin{lemma}\label{thm:foo}
|
|
1 + 1 = 2
|
|
\end{lemma}
|
|
"#,
|
|
"latex",
|
|
false,
|
|
)?;
|
|
|
|
assert_json_snapshot!(server.hover(uri, 3, 8)?);
|
|
Ok(())
|
|
}
|
|
|
|
#[test]
|
|
fn test_label_theorem_child_file_mumber() -> Result<()> {
|
|
let server = ServerTester::launch_new_instance()?;
|
|
server.initialize(ClientCapabilities::default(), None)?;
|
|
let uri = server.open(
|
|
"main.tex",
|
|
r#"
|
|
\documentclass{article}
|
|
\newtheorem{lemma}{Lemma}
|
|
\include{child}
|
|
\ref{thm:foo}
|
|
"#,
|
|
"latex",
|
|
false,
|
|
)?;
|
|
server.open(
|
|
"child.tex",
|
|
r#"
|
|
\begin{lemma}[Foo]\label{thm:foo}
|
|
1 + 1 = 2
|
|
\end{lemma}
|
|
"#,
|
|
"latex",
|
|
false,
|
|
)?;
|
|
server.open(
|
|
"child.aux",
|
|
r#"\newlabel{thm:foo}{{1}{1}{Foo}{lemma.1}{}}"#,
|
|
"latex",
|
|
false,
|
|
)?;
|
|
|
|
assert_json_snapshot!(server.hover(uri, 3, 8)?);
|
|
Ok(())
|
|
}
|