mirror of
https://github.com/zed-industries/zed.git
synced 2025-02-05 02:20:10 +00:00
Test selection history
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
This commit is contained in:
parent
45ecd8e0a6
commit
aec82ef71e
1 changed files with 46 additions and 1 deletions
|
@ -6426,7 +6426,7 @@ mod tests {
|
||||||
use std::{cell::RefCell, rc::Rc, time::Instant};
|
use std::{cell::RefCell, rc::Rc, time::Instant};
|
||||||
use text::Point;
|
use text::Point;
|
||||||
use unindent::Unindent;
|
use unindent::Unindent;
|
||||||
use util::test::{marked_text_by, sample_text};
|
use util::test::{marked_text_by, marked_text_ranges, sample_text};
|
||||||
use workspace::FollowableItem;
|
use workspace::FollowableItem;
|
||||||
|
|
||||||
#[gpui::test]
|
#[gpui::test]
|
||||||
|
@ -8221,6 +8221,21 @@ mod tests {
|
||||||
view.selected_display_ranges(cx),
|
view.selected_display_ranges(cx),
|
||||||
vec![DisplayPoint::new(1, 3)..DisplayPoint::new(1, 3)]
|
vec![DisplayPoint::new(1, 3)..DisplayPoint::new(1, 3)]
|
||||||
);
|
);
|
||||||
|
|
||||||
|
view.undo_selection(&UndoSelection, cx);
|
||||||
|
assert_eq!(
|
||||||
|
view.selected_display_ranges(cx),
|
||||||
|
vec![
|
||||||
|
DisplayPoint::new(0, 3)..DisplayPoint::new(0, 3),
|
||||||
|
DisplayPoint::new(1, 3)..DisplayPoint::new(1, 3)
|
||||||
|
]
|
||||||
|
);
|
||||||
|
|
||||||
|
view.redo_selection(&RedoSelection, cx);
|
||||||
|
assert_eq!(
|
||||||
|
view.selected_display_ranges(cx),
|
||||||
|
vec![DisplayPoint::new(1, 3)..DisplayPoint::new(1, 3)]
|
||||||
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
view.update(cx, |view, cx| {
|
view.update(cx, |view, cx| {
|
||||||
|
@ -8353,6 +8368,36 @@ mod tests {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[gpui::test]
|
||||||
|
fn test_select_next(cx: &mut gpui::MutableAppContext) {
|
||||||
|
populate_settings(cx);
|
||||||
|
|
||||||
|
let (text, ranges) = marked_text_ranges("[abc]\n[abc] [abc]\ndefabc\n[abc]");
|
||||||
|
let buffer = MultiBuffer::build_simple(&text, cx);
|
||||||
|
let (_, view) = cx.add_window(Default::default(), |cx| build_editor(buffer, cx));
|
||||||
|
|
||||||
|
view.update(cx, |view, cx| {
|
||||||
|
view.select_ranges([ranges[1].start + 1..ranges[1].start + 1], None, cx);
|
||||||
|
view.select_next(&SelectNext(false), cx);
|
||||||
|
assert_eq!(view.selected_ranges(cx), &ranges[1..2]);
|
||||||
|
|
||||||
|
view.select_next(&SelectNext(false), cx);
|
||||||
|
assert_eq!(view.selected_ranges(cx), &ranges[1..3]);
|
||||||
|
|
||||||
|
view.undo_selection(&UndoSelection, cx);
|
||||||
|
assert_eq!(view.selected_ranges(cx), &ranges[1..2]);
|
||||||
|
|
||||||
|
view.redo_selection(&RedoSelection, cx);
|
||||||
|
assert_eq!(view.selected_ranges(cx), &ranges[1..3]);
|
||||||
|
|
||||||
|
view.select_next(&SelectNext(false), cx);
|
||||||
|
assert_eq!(view.selected_ranges(cx), &ranges[1..4]);
|
||||||
|
|
||||||
|
view.select_next(&SelectNext(false), cx);
|
||||||
|
assert_eq!(view.selected_ranges(cx), &ranges[0..4]);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
#[gpui::test]
|
#[gpui::test]
|
||||||
async fn test_select_larger_smaller_syntax_node(cx: &mut gpui::TestAppContext) {
|
async fn test_select_larger_smaller_syntax_node(cx: &mut gpui::TestAppContext) {
|
||||||
cx.update(populate_settings);
|
cx.update(populate_settings);
|
||||||
|
|
Loading…
Reference in a new issue