in src/superconsole.rs [273:294]
fn test_small_buffer() -> anyhow::Result<()> {
let root = Box::new(Echo::<Msg>::new(false));
let mut console = test_console(root);
let msg_count = MINIMUM_EMIT + 5;
console.emit(vec![vec!["line 1"].try_into()?; msg_count]);
let msg = Msg(vec![vec!["line"].try_into()?; msg_count]);
let state = crate::state![&msg];
let mut buffer = Vec::new();
// even though the canvas is larger than the tty
console.render_general(
&mut buffer,
&state,
DrawMode::Normal,
Dimensions::new(100, 2),
)?;
// we should still drain a minimum of 5 messages.
assert_eq!(console.to_emit.len(), msg_count - MINIMUM_EMIT);
Ok(())
}