Initial public release of Warp.
Repo-Sync-Origin: warpdotdev/warp-internal@12af1d983b
This commit is contained in:
@@ -0,0 +1,75 @@
|
||||
use super::*;
|
||||
use vec1::vec1;
|
||||
|
||||
#[test]
|
||||
fn test_singleton_frames_displayed_lines() {
|
||||
let frame_layouts = FrameLayouts {
|
||||
frames: vec![
|
||||
Arc::new(text_layout::TextFrame::empty(12., 1.)),
|
||||
Arc::new(text_layout::TextFrame::empty(13., 1.)),
|
||||
Arc::new(text_layout::TextFrame::empty(14., 1.)),
|
||||
Arc::new(text_layout::TextFrame::empty(15., 1.)),
|
||||
Arc::new(text_layout::TextFrame::empty(16., 1.)),
|
||||
],
|
||||
start_line: 2,
|
||||
end_line: 3,
|
||||
};
|
||||
|
||||
assert_eq!(frame_layouts.displayed_lines().count(), 1);
|
||||
|
||||
let mut iter = frame_layouts.displayed_lines();
|
||||
assert_eq!(iter.next().expect("Should have line").font_size, 14.);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_displayed_lines_end_line_greater_than_iterator_size() {
|
||||
let frame_layouts = FrameLayouts {
|
||||
frames: vec![
|
||||
Arc::new(text_layout::TextFrame::empty(12., 1.)),
|
||||
Arc::new(text_layout::TextFrame::empty(13., 1.)),
|
||||
Arc::new(text_layout::TextFrame::empty(14., 1.)),
|
||||
Arc::new(text_layout::TextFrame::empty(15., 1.)),
|
||||
Arc::new(text_layout::TextFrame::empty(16., 1.)),
|
||||
],
|
||||
start_line: 3,
|
||||
end_line: 6,
|
||||
};
|
||||
|
||||
assert_eq!(frame_layouts.displayed_lines().count(), 2);
|
||||
|
||||
let mut iter = frame_layouts.displayed_lines();
|
||||
assert_eq!(iter.next().expect("Should have line").font_size, 15.);
|
||||
assert_eq!(iter.next().expect("Should have line").font_size, 16.);
|
||||
assert!(iter.next().is_none());
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_soft_wrapped_frame_displayed_lines() {
|
||||
let frame_layouts = FrameLayouts {
|
||||
frames: vec![
|
||||
Arc::new(text_layout::TextFrame::new(
|
||||
vec1![
|
||||
text_layout::Line::empty(10., 1., 0),
|
||||
text_layout::Line::empty(11., 1., 1),
|
||||
text_layout::Line::empty(12., 1., 2),
|
||||
],
|
||||
0.,
|
||||
Default::default(),
|
||||
)),
|
||||
Arc::new(text_layout::TextFrame::empty(13., 1.)),
|
||||
Arc::new(text_layout::TextFrame::empty(14., 1.)),
|
||||
Arc::new(text_layout::TextFrame::empty(15., 1.)),
|
||||
Arc::new(text_layout::TextFrame::empty(16., 1.)),
|
||||
],
|
||||
start_line: 2,
|
||||
end_line: 5,
|
||||
};
|
||||
|
||||
assert_eq!(frame_layouts.displayed_lines().count(), 3);
|
||||
|
||||
let mut iter = frame_layouts.displayed_lines();
|
||||
assert_eq!(iter.next().expect("Should have line").font_size, 12.);
|
||||
assert_eq!(iter.next().expect("Should have line").font_size, 13.);
|
||||
assert_eq!(iter.next().expect("Should have line").font_size, 14.);
|
||||
assert!(iter.next().is_none());
|
||||
}
|
||||
Reference in New Issue
Block a user