use ratatui::Frame;
use ratatui::layout::Rect;
use ratatui::widgets::Paragraph;
use crate::ui::Page;
pub struct TasksPage;
impl Page for TasksPage {
fn render(&mut self, f: &mut Frame, area: Rect) {
f.render_widget(Paragraph::new("Tasks coming soon"), area);
}
}
#[cfg(test)]
mod tests {
use ratatui::Terminal;
use ratatui::backend::TestBackend;
use super::*;
#[test]
fn test_tasks_page_renders_placeholder_message() {
let backend = TestBackend::new(20, 5);
let mut terminal = Terminal::new(backend).expect("failed to create terminal");
let mut page = TasksPage;
terminal
.draw(|frame| page.render(frame, frame.area()))
.expect("failed to render tasks page");
let buffer = terminal.backend().buffer().clone();
let rendered_text: String = buffer
.content()
.iter()
.map(ratatui::buffer::Cell::symbol)
.collect();
assert!(rendered_text.contains("Tasks coming soon"));
}
}