Expand test coverage

This commit is contained in:
Juno Takano 2026-01-10 05:42:36 -03:00
commit 5958f1551b
27 changed files with 593 additions and 109 deletions

View file

@ -43,3 +43,46 @@ impl std::fmt::Display for Item {
)
}
}
#[cfg(test)]
mod tests {
use crate::syntax::content::parser::token::Token;
use super::*;
#[test]
#[should_panic(
expected = "Items should only be rendered by a list's render method"
)]
fn render() {
let item = Item::new("aCNuZwwzrt", None);
item.render();
}
#[test]
fn probe() {
let lexeme = Lexeme::new("bOa", "2R6", "4Mp");
assert!(!Item::probe(&lexeme));
}
#[test]
#[should_panic(expected = "Attempt to lex an item directly from a lexeme")]
fn lex() {
let lexeme = Lexeme::new("8kbX", "Qzqu", "iDpg");
Item::lex(&lexeme);
}
#[test]
fn token_display() {
let mut item = Item::new("dRMy4", Some(4));
assert_eq!(
format!("{}", Token::Item(item.clone())),
"Tk:Item [D4] dRMy4"
);
item.depth = None;
assert_eq!(
format!("{}", Token::Item(item.clone())),
"Tk:Item [<unknown>] dRMy4"
);
}
}