in src/superconsole.rs [297:317]
fn test_huge_buffer() -> anyhow::Result<()> {
let root = Box::new(Echo::<Msg>::new(false));
let mut console = test_console(root);
console.emit(vec![vec!["line 1"].try_into()?; MAX_GRAPHEME_BUFFER * 2]);
let msg = Msg(vec![vec!["line"].try_into()?; 1]);
let state = crate::state![&msg];
let mut buffer = Vec::new();
// Even though we have more messages than fit on the screen in the `to_emit` buffer
console.render_general(
&mut buffer,
&state,
DrawMode::Normal,
Dimensions::new(100, 20),
)?;
// We have so many that we should just drain them all.
assert!(console.to_emit.is_empty());
Ok(())
}