rab/tui/components/
spacer.rs1use crate::tui::Component;
2
3pub struct Spacer {
5 lines: usize,
6}
7
8impl Spacer {
9 pub fn new(lines: usize) -> Self {
10 Self { lines }
11 }
12
13 pub fn set_lines(&mut self, lines: usize) {
14 self.lines = lines;
15 }
16}
17
18impl Component for Spacer {
19 fn render(&self, _width: usize) -> Vec<String> {
21 vec![String::new(); self.lines]
22 }
23}
24
25#[cfg(test)]
26mod tests {
27 use super::*;
28
29 #[test]
30 fn test_spacer() {
31 let spacer = Spacer::new(3);
32 let lines = spacer.render(10);
33 assert_eq!(lines.len(), 3);
34 for line in &lines {
36 assert_eq!(line, "");
37 }
38 }
39}