use super::*;
#[test]
fn cpr_at_origin() {
let mut parser = crate::Parser::new(TerminalSize { rows: 24, cols: 80 }, 0);
process(&mut parser, b"\x1b[6n");
assert_eq!(drain_replies(&mut parser), b"\x1b[1;1R");
}
#[test]
fn drain_empty() {
let mut parser = crate::Parser::new(TerminalSize { rows: 24, cols: 80 }, 0);
assert!(drain_replies(&mut parser).is_empty());
}
#[test]
fn multiple_queries_single_drain() {
let mut parser = crate::Parser::new(TerminalSize { rows: 24, cols: 80 }, 0);
process(&mut parser, b"\x1b[c\x1b[5n");
let resp = drain_replies(&mut parser);
assert_eq!(resp, b"\x1b[?62;22;52c\x1b[0n");
}
#[test]
fn drain_clears_buffer() {
let mut parser = crate::Parser::new(TerminalSize { rows: 24, cols: 80 }, 0);
process(&mut parser, b"\x1b[c");
assert!(!drain_replies(&mut parser).is_empty());
assert!(drain_replies(&mut parser).is_empty());
}