use ass_core::Script;
#[test]
fn test_input_size_limit_exceeded() {
let input = "a".repeat(1024); let result = Script::parse(&input);
assert!(result.is_ok());
}
#[test]
fn test_bom_validation_warning() {
let input_with_invalid_bom = "\u{FFFE}[Script Info]\nTitle: Test"; let result = Script::parse(input_with_invalid_bom);
if let Ok(script) = result {
let has_bom_warning = script
.issues()
.iter()
.any(|issue| issue.message.contains("BOM") || issue.message.contains("validation"));
let _ = has_bom_warning;
} else {
}
}
#[test]
fn test_position_and_line_tracking() {
let input = "Line 1\nLine 2\n[Script Info]\nTitle: Test\nLine 5";
let result = Script::parse(input);
assert!(result.is_ok());
let script = result.unwrap();
assert!(!script.sections().is_empty());
}
#[test]
fn test_binary_data_in_input() {
let input = "Valid text\0\u{00FF}\u{00FE}[Script Info]\nTitle: Test";
let result = Script::parse(input);
if let Ok(_script) = result {
} else {
}
}