mirror of https://github.com/fdehau/tui-rs
fix(widgets/list): stop highlighting blank placeholders
parent
e81af75427
commit
4f728d363f
@ -0,0 +1,34 @@
|
||||
use tui::{
|
||||
backend::TestBackend,
|
||||
buffer::Buffer,
|
||||
style::{Color, Style},
|
||||
widgets::{List, ListState, Text},
|
||||
Terminal,
|
||||
};
|
||||
|
||||
#[test]
|
||||
fn it_should_highlight_the_selected_item() {
|
||||
let backend = TestBackend::new(10, 3);
|
||||
let mut terminal = Terminal::new(backend).unwrap();
|
||||
let mut state = ListState::default();
|
||||
state.select(Some(1));
|
||||
terminal
|
||||
.draw(|mut f| {
|
||||
let size = f.size();
|
||||
let items = vec![
|
||||
Text::raw("Item 1"),
|
||||
Text::raw("Item 2"),
|
||||
Text::raw("Item 3"),
|
||||
];
|
||||
let list = List::new(items.into_iter())
|
||||
.highlight_style(Style::default().bg(Color::Yellow))
|
||||
.highlight_symbol(">> ");
|
||||
f.render_stateful_widget(list, size, &mut state);
|
||||
})
|
||||
.unwrap();
|
||||
let mut expected = Buffer::with_lines(vec![" Item 1 ", ">> Item 2 ", " Item 3 "]);
|
||||
for x in 0..9 {
|
||||
expected.get_mut(x, 1).set_bg(Color::Yellow);
|
||||
}
|
||||
assert_eq!(*terminal.backend().buffer(), expected);
|
||||
}
|
Loading…
Reference in New Issue