mirror of https://github.com/astral-sh/ruff
92 lines
2.5 KiB
Rust
92 lines
2.5 KiB
Rust
const PANDAS_HTML_SRC: &str = include_str!("../resources/test/fixtures/pandas_html.py");
|
|
|
|
use lsp_types::{Position, Range, TextDocumentContentChangeEvent};
|
|
use ruff_server::{PositionEncoding, TextDocument};
|
|
|
|
#[test]
|
|
fn delete_lines_pandas_html() {
|
|
let mut document = TextDocument::new(PANDAS_HTML_SRC.to_string(), 1);
|
|
|
|
let changes = vec![
|
|
TextDocumentContentChangeEvent {
|
|
range: Some(Range {
|
|
start: Position {
|
|
line: 79,
|
|
character: 0,
|
|
},
|
|
end: Position {
|
|
line: 91,
|
|
character: 67,
|
|
},
|
|
}),
|
|
range_length: Some(388),
|
|
text: String::new(),
|
|
},
|
|
TextDocumentContentChangeEvent {
|
|
range: Some(Range {
|
|
start: Position {
|
|
line: 81,
|
|
character: 4,
|
|
},
|
|
end: Position {
|
|
line: 81,
|
|
character: 36,
|
|
},
|
|
}),
|
|
range_length: Some(32),
|
|
text: "p".into(),
|
|
},
|
|
TextDocumentContentChangeEvent {
|
|
range: Some(Range {
|
|
start: Position {
|
|
line: 81,
|
|
character: 5,
|
|
},
|
|
end: Position {
|
|
line: 81,
|
|
character: 5,
|
|
},
|
|
}),
|
|
range_length: Some(0),
|
|
text: "a".into(),
|
|
},
|
|
TextDocumentContentChangeEvent {
|
|
range: Some(Range {
|
|
start: Position {
|
|
line: 81,
|
|
character: 6,
|
|
},
|
|
end: Position {
|
|
line: 81,
|
|
character: 6,
|
|
},
|
|
}),
|
|
range_length: Some(0),
|
|
text: "s".into(),
|
|
},
|
|
TextDocumentContentChangeEvent {
|
|
range: Some(Range {
|
|
start: Position {
|
|
line: 81,
|
|
character: 7,
|
|
},
|
|
end: Position {
|
|
line: 81,
|
|
character: 7,
|
|
},
|
|
}),
|
|
range_length: Some(0),
|
|
text: "s".into(),
|
|
},
|
|
];
|
|
|
|
let mut version = 2;
|
|
|
|
for change in changes {
|
|
document.apply_changes(vec![change], version, PositionEncoding::UTF16);
|
|
version += 1;
|
|
}
|
|
|
|
insta::assert_snapshot!(document.contents());
|
|
}
|