in src/superconsole.rs [345:372]
fn test_block_lines() -> anyhow::Result<()> {
let root = Box::new(Echo::<Msg>::new(false));
let mut console = test_console(root);
let msg = Msg(vec![vec!["state"].try_into()?; 1]);
let state = crate::state![&msg];
console.test_output_mut()?.should_render = false;
console.emit(vec![vec!["line 1"].try_into()?]);
console.render(&state)?;
assert_eq!(console.test_output()?.frames.len(), 0);
console.test_output_mut()?.should_render = true;
console.emit(vec![vec!["line 2"].try_into()?]);
console.render(&state)?;
let frame = console
.test_output_mut()?
.frames
.pop()
.context("No frame was emitted")?;
assert!(frame_contains(&frame, "state".as_bytes()));
assert!(frame_contains(&frame, "line 1".as_bytes()));
assert!(frame_contains(&frame, "line 2".as_bytes()));
Ok(())
}