mirror of
https://github.com/astral-sh/ruff.git
synced 2025-07-25 14:03:51 +00:00
24 lines
573 B
Rust
24 lines
573 B
Rust
use ruff_python_parser::{parse_suite, ParseError};
|
|
use ruff_text_size::{TextRange, TextSize};
|
|
|
|
use ruff_python_ast::identifier;
|
|
|
|
#[test]
|
|
fn extract_else_range() -> Result<(), ParseError> {
|
|
let contents = r#"
|
|
for x in y:
|
|
pass
|
|
else:
|
|
pass
|
|
"#
|
|
.trim();
|
|
let stmts = parse_suite(contents, "<filename>")?;
|
|
let stmt = stmts.first().unwrap();
|
|
let range = identifier::else_(stmt, contents).unwrap();
|
|
assert_eq!(&contents[range], "else");
|
|
assert_eq!(
|
|
range,
|
|
TextRange::new(TextSize::from(21), TextSize::from(25))
|
|
);
|
|
Ok(())
|
|
}
|