diff options
| author | Aram Drevekenin <aram@poor.dev> | 2021-02-09 17:36:37 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-02-09 17:36:37 +0100 |
| commit | 14783c2b2c3bcd3b4b01e72c46d6af3ecbdd203c (patch) | |
| tree | 7e25be8c93e85ec9fc03335f1993f319f713c614 /src/tests | |
| parent | Merge pull request #158 from mosaic-org/add-files (diff) | |
| download | sl0ppij-14783c2b2c3bcd3b4b01e72c46d6af3ecbdd203c.tar.gz sl0ppij-14783c2b2c3bcd3b4b01e72c46d6af3ecbdd203c.tar.xz sl0ppij-14783c2b2c3bcd3b4b01e72c46d6af3ecbdd203c.zip | |
feat(ui): new keybindings and status bar (#160)
* work
* feat(statusbar): new design and keybindings
* fix(ipc): add missing const
* style(fmt): rustfmt
* style(input): remove accidental comment
Diffstat (limited to 'src/tests')
| -rw-r--r-- | src/tests/integration/basic.rs | 75 | ||||
| -rw-r--r-- | src/tests/integration/close_pane.rs | 298 | ||||
| -rw-r--r-- | src/tests/integration/move_focus_down.rs | 21 | ||||
| -rw-r--r-- | src/tests/integration/move_focus_left.rs | 21 | ||||
| -rw-r--r-- | src/tests/integration/move_focus_right.rs | 21 | ||||
| -rw-r--r-- | src/tests/integration/move_focus_up.rs | 21 | ||||
| -rw-r--r-- | src/tests/integration/resize_down.rs | 321 | ||||
| -rw-r--r-- | src/tests/integration/resize_left.rs | 320 | ||||
| -rw-r--r-- | src/tests/integration/resize_right.rs | 321 | ||||
| -rw-r--r-- | src/tests/integration/resize_up.rs | 320 | ||||
| -rw-r--r-- | src/tests/integration/snapshots/mosaic__tests__integration__tabs__close_the_tab_that_has_a_pane_in_fullscreen.snap | 20 | ||||
| -rw-r--r-- | src/tests/integration/tabs.rs | 130 | ||||
| -rw-r--r-- | src/tests/integration/toggle_fullscreen.rs | 18 | ||||
| -rw-r--r-- | src/tests/utils.rs | 75 |
14 files changed, 1234 insertions, 748 deletions
diff --git a/src/tests/integration/basic.rs b/src/tests/integration/basic.rs index a48871a1..226b08f3 100644 --- a/src/tests/integration/basic.rs +++ b/src/tests/integration/basic.rs @@ -3,8 +3,9 @@ use ::insta::assert_snapshot; use crate::tests::fakes::FakeInputOutput; use crate::tests::utils::commands::{ - COMMAND_TOGGLE, QUIT, SCROLL_DOWN, SCROLL_UP, SPAWN_TERMINAL, SPLIT_HORIZONTALLY, - SPLIT_VERTICALLY, TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, + COMMAND_TOGGLE, ESC, PANE_MODE, QUIT, SCROLL_DOWN_IN_SCROLL_MODE, SCROLL_MODE, + SCROLL_UP_IN_SCROLL_MODE, SPAWN_TERMINAL_IN_PANE_MODE, SPLIT_DOWN_IN_PANE_MODE, + SPLIT_RIGHT_IN_PANE_MODE, TOGGLE_ACTIVE_TERMINAL_FULLSCREEN_IN_PANE_MODE, }; use crate::tests::utils::{get_next_to_last_snapshot, get_output_frame_snapshots}; use crate::{start, CliArgs}; @@ -47,7 +48,8 @@ pub fn split_terminals_vertically() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -74,7 +76,8 @@ pub fn split_terminals_horizontally() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -102,9 +105,10 @@ pub fn split_largest_terminal() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPAWN_TERMINAL, - &SPAWN_TERMINAL, - &SPAWN_TERMINAL, + &PANE_MODE, + &SPAWN_TERMINAL_IN_PANE_MODE, + &SPAWN_TERMINAL_IN_PANE_MODE, + &SPAWN_TERMINAL_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -131,7 +135,8 @@ pub fn cannot_split_terminals_vertically_when_active_terminal_is_too_small() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -158,7 +163,8 @@ pub fn cannot_split_terminals_horizontally_when_active_terminal_is_too_small() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -185,7 +191,8 @@ pub fn cannot_split_largest_terminal_when_there_is_no_room() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPAWN_TERMINAL, + &PANE_MODE, + &SPAWN_TERMINAL_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -212,10 +219,15 @@ pub fn scrolling_up_inside_a_pane() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &SPLIT_VERTICALLY, - &SCROLL_UP, - &SCROLL_UP, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SCROLL_MODE, + &SCROLL_UP_IN_SCROLL_MODE, + &SCROLL_UP_IN_SCROLL_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -242,12 +254,17 @@ pub fn scrolling_down_inside_a_pane() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &SPLIT_VERTICALLY, - &SCROLL_UP, - &SCROLL_UP, - &SCROLL_DOWN, - &SCROLL_DOWN, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &SCROLL_MODE, + &SCROLL_UP_IN_SCROLL_MODE, + &SCROLL_UP_IN_SCROLL_MODE, + &SCROLL_DOWN_IN_SCROLL_MODE, + &SCROLL_DOWN_IN_SCROLL_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -276,10 +293,11 @@ pub fn max_panes() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPAWN_TERMINAL, - &SPAWN_TERMINAL, - &SPAWN_TERMINAL, - &SPAWN_TERMINAL, + &PANE_MODE, + &SPAWN_TERMINAL_IN_PANE_MODE, + &SPAWN_TERMINAL_IN_PANE_MODE, + &SPAWN_TERMINAL_IN_PANE_MODE, + &SPAWN_TERMINAL_IN_PANE_MODE, &QUIT, ]); let mut opts = CliArgs::default(); @@ -308,10 +326,11 @@ pub fn toggle_focused_pane_fullscreen() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPAWN_TERMINAL, - &SPAWN_TERMINAL, - &SPAWN_TERMINAL, - &TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, + &PANE_MODE, + &SPAWN_TERMINAL_IN_PANE_MODE, + &SPAWN_TERMINAL_IN_PANE_MODE, + &SPAWN_TERMINAL_IN_PANE_MODE, + &TOGGLE_ACTIVE_TERMINAL_FULLSCREEN_IN_PANE_MODE, &QUIT, ]); let mut opts = CliArgs::default(); diff --git a/src/tests/integration/close_pane.rs b/src/tests/integration/close_pane.rs index e5659fdb..be60fd7c 100644 --- a/src/tests/integration/close_pane.rs +++ b/src/tests/integration/close_pane.rs @@ -6,8 +6,9 @@ use crate::tests::utils::{get_next_to_last_snapshot, get_output_frame_snapshots} use crate::{start, CliArgs}; use crate::tests::utils::commands::{ - CLOSE_FOCUSED_PANE, COMMAND_TOGGLE, MOVE_FOCUS, QUIT, RESIZE_DOWN, RESIZE_LEFT, RESIZE_UP, - SPLIT_HORIZONTALLY, SPLIT_VERTICALLY, + CLOSE_PANE_IN_PANE_MODE, COMMAND_TOGGLE, ESC, MOVE_FOCUS_IN_PANE_MODE, PANE_MODE, QUIT, + RESIZE_DOWN_IN_RESIZE_MODE, RESIZE_LEFT_IN_RESIZE_MODE, RESIZE_MODE, RESIZE_UP_IN_RESIZE_MODE, + SPLIT_DOWN_IN_PANE_MODE, SPLIT_RIGHT_IN_PANE_MODE, }; fn get_fake_os_input(fake_win_size: &PositionAndSize) -> FakeInputOutput { @@ -34,8 +35,9 @@ pub fn close_pane_with_another_pane_above_it() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &CLOSE_FOCUSED_PANE, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &CLOSE_PANE_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -71,9 +73,10 @@ pub fn close_pane_with_another_pane_below_it() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &CLOSE_FOCUSED_PANE, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &CLOSE_PANE_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -107,8 +110,9 @@ pub fn close_pane_with_another_pane_to_the_left() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &CLOSE_FOCUSED_PANE, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &CLOSE_PANE_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -142,9 +146,10 @@ pub fn close_pane_with_another_pane_to_the_right() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &CLOSE_FOCUSED_PANE, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &CLOSE_PANE_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -180,12 +185,13 @@ pub fn close_pane_with_multiple_panes_above_it() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &CLOSE_FOCUSED_PANE, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &CLOSE_PANE_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -221,10 +227,11 @@ pub fn close_pane_with_multiple_panes_below_it() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &CLOSE_FOCUSED_PANE, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &CLOSE_PANE_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -260,12 +267,13 @@ pub fn close_pane_with_multiple_panes_to_the_left() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &CLOSE_FOCUSED_PANE, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &CLOSE_PANE_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -301,10 +309,11 @@ pub fn close_pane_with_multiple_panes_to_the_right() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &CLOSE_FOCUSED_PANE, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &CLOSE_PANE_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -340,24 +349,41 @@ pub fn close_pane_with_multiple_panes_above_it_away_from_screen_edges() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &SPLIT_VERTICALLY, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &SPLIT_VERTICALLY, - &RESIZE_UP, - &MOVE_FOCUS, - &RESIZE_UP, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &CLOSE_FOCUSED_PANE, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &CLOSE_PANE_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -393,24 +419,41 @@ pub fn close_pane_with_multiple_panes_below_it_away_from_screen_edges() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &SPLIT_VERTICALLY, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &SPLIT_VERTICALLY, - &RESIZE_DOWN, - &MOVE_FOCUS, - &RESIZE_DOWN, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &CLOSE_FOCUSED_PANE, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_DOWN_IN_RESIZE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_DOWN_IN_RESIZE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &CLOSE_PANE_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -448,24 +491,41 @@ pub fn close_pane_with_multiple_panes_to_the_left_away_from_screen_edges() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &SPLIT_HORIZONTALLY, - &RESIZE_LEFT, - &MOVE_FOCUS, - &RESIZE_LEFT, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &CLOSE_FOCUSED_PANE, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &CLOSE_PANE_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -503,24 +563,41 @@ pub fn close_pane_with_multiple_panes_to_the_right_away_from_screen_edges() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &SPLIT_HORIZONTALLY, - &RESIZE_LEFT, - &MOVE_FOCUS, - &RESIZE_LEFT, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &CLOSE_FOCUSED_PANE, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &CLOSE_PANE_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -548,12 +625,13 @@ pub fn closing_last_pane_exits_app() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &CLOSE_FOCUSED_PANE, - &CLOSE_FOCUSED_PANE, - &CLOSE_FOCUSED_PANE, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &CLOSE_PANE_IN_PANE_MODE, + &CLOSE_PANE_IN_PANE_MODE, + &CLOSE_PANE_IN_PANE_MODE, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); diff --git a/src/tests/integration/move_focus_down.rs b/src/tests/integration/move_focus_down.rs index a5b423aa..639078d8 100644 --- a/src/tests/integration/move_focus_down.rs +++ b/src/tests/integration/move_focus_down.rs @@ -6,7 +6,8 @@ use crate::tests::utils::{get_next_to_last_snapshot, get_output_frame_snapshots} use crate::{start, CliArgs}; use crate::tests::utils::commands::{ - COMMAND_TOGGLE, MOVE_FOCUS_DOWN, MOVE_FOCUS_UP, QUIT, SPLIT_HORIZONTALLY, SPLIT_VERTICALLY, + COMMAND_TOGGLE, MOVE_FOCUS_DOWN_IN_PANE_MODE, MOVE_FOCUS_UP_IN_PANE_MODE, PANE_MODE, QUIT, + SPLIT_DOWN_IN_PANE_MODE, SPLIT_RIGHT_IN_PANE_MODE, }; fn get_fake_os_input(fake_win_size: &PositionAndSize) -> FakeInputOutput { @@ -25,9 +26,10 @@ pub fn move_focus_down() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS_UP, - &MOVE_FOCUS_DOWN, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_UP_IN_PANE_MODE, + &MOVE_FOCUS_DOWN_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -55,11 +57,12 @@ pub fn move_focus_down_to_the_largest_overlap() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &SPLIT_VERTICALLY, - &SPLIT_VERTICALLY, - &MOVE_FOCUS_UP, - &MOVE_FOCUS_DOWN, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_UP_IN_PANE_MODE, + &MOVE_FOCUS_DOWN_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); diff --git a/src/tests/integration/move_focus_left.rs b/src/tests/integration/move_focus_left.rs index 3f133557..a8e073b9 100644 --- a/src/tests/integration/move_focus_left.rs +++ b/src/tests/integration/move_focus_left.rs @@ -6,7 +6,8 @@ use crate::tests::utils::{get_next_to_last_snapshot, get_output_frame_snapshots} use crate::{start, CliArgs}; use crate::tests::utils::commands::{ - COMMAND_TOGGLE, MOVE_FOCUS_LEFT, MOVE_FOCUS_RIGHT, QUIT, SPLIT_HORIZONTALLY, SPLIT_VERTICALLY, + COMMAND_TOGGLE, MOVE_FOCUS_LEFT_IN_PANE_MODE, MOVE_FOCUS_RIGHT_IN_PANE_MODE, PANE_MODE, QUIT, + SPLIT_DOWN_IN_PANE_MODE, SPLIT_RIGHT_IN_PANE_MODE, }; fn get_fake_os_input(fake_win_size: &PositionAndSize) -> FakeInputOutput { @@ -25,8 +26,9 @@ pub fn move_focus_left() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &MOVE_FOCUS_LEFT, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_LEFT_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -54,12 +56,13 @@ pub fn move_focus_left_to_the_largest_overlap() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &MOVE_FOCUS_LEFT, - &SPLIT_HORIZONTALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS_RIGHT, - &MOVE_FOCUS_LEFT, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_LEFT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_LEFT_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); diff --git a/src/tests/integration/move_focus_right.rs b/src/tests/integration/move_focus_right.rs index 05065b69..72c24a9b 100644 --- a/src/tests/integration/move_focus_right.rs +++ b/src/tests/integration/move_focus_right.rs @@ -6,7 +6,8 @@ use crate::tests::utils::{get_next_to_last_snapshot, get_output_frame_snapshots} use crate::{start, CliArgs}; use crate::tests::utils::commands::{ - COMMAND_TOGGLE, MOVE_FOCUS_LEFT, MOVE_FOCUS_RIGHT, QUIT, SPLIT_HORIZONTALLY, SPLIT_VERTICALLY, + COMMAND_TOGGLE, MOVE_FOCUS_LEFT_IN_PANE_MODE, MOVE_FOCUS_RIGHT_IN_PANE_MODE, PANE_MODE, QUIT, + SPLIT_DOWN_IN_PANE_MODE, SPLIT_RIGHT_IN_PANE_MODE, }; fn get_fake_os_input(fake_win_size: &PositionAndSize) -> FakeInputOutput { @@ -25,9 +26,10 @@ pub fn move_focus_right() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &MOVE_FOCUS_LEFT, - &MOVE_FOCUS_RIGHT, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_LEFT_IN_PANE_MODE, + &MOVE_FOCUS_RIGHT_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -55,11 +57,12 @@ pub fn move_focus_right_to_the_largest_overlap() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS_LEFT, - &MOVE_FOCUS_RIGHT, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_LEFT_IN_PANE_MODE, + &MOVE_FOCUS_RIGHT_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); diff --git a/src/tests/integration/move_focus_up.rs b/src/tests/integration/move_focus_up.rs index 4944c1ca..fcfedb18 100644 --- a/src/tests/integration/move_focus_up.rs +++ b/src/tests/integration/move_focus_up.rs @@ -6,7 +6,8 @@ use crate::tests::utils::{get_next_to_last_snapshot, get_output_frame_snapshots} use crate::{start, CliArgs}; use crate::tests::utils::commands::{ - COMMAND_TOGGLE, MOVE_FOCUS_DOWN, MOVE_FOCUS_UP, QUIT, SPLIT_HORIZONTALLY, SPLIT_VERTICALLY, + COMMAND_TOGGLE, MOVE_FOCUS_DOWN_IN_PANE_MODE, MOVE_FOCUS_UP_IN_PANE_MODE, PANE_MODE, QUIT, + SPLIT_DOWN_IN_PANE_MODE, SPLIT_RIGHT_IN_PANE_MODE, }; fn get_fake_os_input(fake_win_size: &PositionAndSize) -> FakeInputOutput { @@ -25,8 +26,9 @@ pub fn move_focus_up() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS_UP, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_UP_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -54,12 +56,13 @@ pub fn move_focus_up_to_the_largest_overlap() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS_UP, - &SPLIT_VERTICALLY, - &SPLIT_VERTICALLY, - &MOVE_FOCUS_DOWN, - &MOVE_FOCUS_UP, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_UP_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_UP_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); diff --git a/src/tests/integration/resize_down.rs b/src/tests/integration/resize_down.rs index 3b20fda8..ec0221cb 100644 --- a/src/tests/integration/resize_down.rs +++ b/src/tests/integration/resize_down.rs @@ -6,8 +6,8 @@ use crate::tests::utils::{get_next_to_last_snapshot, get_output_frame_snapshots} use crate::{start, CliArgs}; use crate::tests::utils::commands::{ - COMMAND_TOGGLE, MOVE_FOCUS, QUIT, RESIZE_DOWN, RESIZE_LEFT, SPLIT_HORIZONTALLY, - SPLIT_VERTICALLY, + COMMAND_TOGGLE, ESC, MOVE_FOCUS_IN_PANE_MODE, PANE_MODE, QUIT, RESIZE_DOWN_IN_RESIZE_MODE, + RESIZE_LEFT_IN_RESIZE_MODE, RESIZE_MODE, SPLIT_DOWN_IN_PANE_MODE, SPLIT_RIGHT_IN_PANE_MODE, }; fn get_fake_os_input(fake_win_size: &PositionAndSize) -> FakeInputOutput { @@ -35,8 +35,13 @@ pub fn resize_down_with_pane_above() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &RESIZE_DOWN, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_DOWN_IN_RESIZE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -72,9 +77,14 @@ pub fn resize_down_with_pane_below() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &RESIZE_DOWN, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_DOWN_IN_RESIZE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -113,11 +123,16 @@ pub fn resize_down_with_panes_above_and_below() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_DOWN, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_DOWN_IN_RESIZE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -154,12 +169,17 @@ pub fn resize_down_with_multiple_panes_above() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_DOWN, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_DOWN_IN_RESIZE_MODE, &QUIT, ]); @@ -197,14 +217,19 @@ pub fn resize_down_with_panes_above_aligned_left_with_current_pane() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_DOWN, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_DOWN_IN_RESIZE_MODE, &QUIT, ]); @@ -242,13 +267,18 @@ pub fn resize_down_with_panes_below_aligned_left_with_current_pane() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_DOWN, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_DOWN_IN_RESIZE_MODE, &QUIT, ]); @@ -286,11 +316,16 @@ pub fn resize_down_with_panes_above_aligned_right_with_current_pane() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &RESIZE_DOWN, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_DOWN_IN_RESIZE_MODE, &QUIT, ]); @@ -328,12 +363,17 @@ pub fn resize_down_with_panes_below_aligned_right_with_current_pane() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &RESIZE_DOWN, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_DOWN_IN_RESIZE_MODE, &QUIT, ]); @@ -371,15 +411,20 @@ pub fn resize_down_with_panes_above_aligned_left_and_right_with_current_pane() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &RESIZE_DOWN, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_DOWN_IN_RESIZE_MODE, &QUIT, ]); @@ -417,17 +462,22 @@ pub fn resize_down_with_panes_below_aligned_left_and_right_with_current_pane() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_DOWN, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_DOWN_IN_RESIZE_MODE, &QUIT, ]); @@ -465,32 +515,45 @@ pub fn resize_down_with_panes_above_aligned_left_and_right_with_panes_to_the_lef fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &RESIZE_LEFT, - &RESIZE_LEFT, - &RESIZE_LEFT, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &SPLIT_VERTICALLY, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_LEFT, - &RESIZE_LEFT, - &RESIZE_DOWN, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &RESIZE_DOWN_IN_RESIZE_MODE, &QUIT, ]); @@ -528,34 +591,47 @@ pub fn resize_down_with_panes_below_aligned_left_and_right_with_to_the_left_and_ fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &RESIZE_LEFT, - &RESIZE_LEFT, - &RESIZE_LEFT, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_LEFT, - &RESIZE_LEFT, - &RESIZE_DOWN, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &RESIZE_DOWN_IN_RESIZE_MODE, &QUIT, ]); @@ -590,8 +666,13 @@ pub fn cannot_resize_down_when_pane_below_is_at_minimum_height() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &RESIZE_DOWN, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_DOWN_IN_RESIZE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); diff --git a/src/tests/integration/resize_left.rs b/src/tests/integration/resize_left.rs index 3546ebe3..9645a4ec 100644 --- a/src/tests/integration/resize_left.rs +++ b/src/tests/integration/resize_left.rs @@ -6,7 +6,8 @@ use crate::tests::utils::{get_next_to_last_snapshot, get_output_frame_snapshots} use crate::{start, CliArgs}; use crate::tests::utils::commands::{ - COMMAND_TOGGLE, MOVE_FOCUS, QUIT, RESIZE_LEFT, RESIZE_UP, SPLIT_HORIZONTALLY, SPLIT_VERTICALLY, + COMMAND_TOGGLE, ESC, MOVE_FOCUS_IN_PANE_MODE, PANE_MODE, QUIT, RESIZE_LEFT_IN_RESIZE_MODE, + RESIZE_MODE, RESIZE_UP_IN_RESIZE_MODE, SPLIT_DOWN_IN_PANE_MODE, SPLIT_RIGHT_IN_PANE_MODE, }; fn get_fake_os_input(fake_win_size: &PositionAndSize) -> FakeInputOutput { @@ -31,8 +32,13 @@ pub fn resize_left_with_pane_to_the_left() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &RESIZE_LEFT, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -66,9 +72,14 @@ pub fn resize_left_with_pane_to_the_right() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &RESIZE_LEFT, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -102,11 +113,16 @@ pub fn resize_left_with_panes_to_the_left_and_right() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_LEFT, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -141,12 +157,17 @@ pub fn resize_left_with_multiple_panes_to_the_left() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_LEFT, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, &QUIT, ]); @@ -182,14 +203,19 @@ pub fn resize_left_with_panes_to_the_left_aligned_top_with_current_pane() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_LEFT, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, &QUIT, ]); @@ -225,11 +251,16 @@ pub fn resize_left_with_panes_to_the_right_aligned_top_with_current_pane() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &RESIZE_LEFT, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, &QUIT, ]); @@ -265,13 +296,18 @@ pub fn resize_left_with_panes_to_the_left_aligned_bottom_with_current_pane() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_LEFT, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, &QUIT, ]); @@ -307,12 +343,17 @@ pub fn resize_left_with_panes_to_the_right_aligned_bottom_with_current_pane() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &RESIZE_LEFT, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, &QUIT, ]); @@ -350,15 +391,20 @@ pub fn resize_left_with_panes_to_the_left_aligned_top_and_bottom_with_current_pa fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &SPLIT_HORIZONTALLY, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &RESIZE_LEFT, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, &QUIT, ]); @@ -396,17 +442,22 @@ pub fn resize_left_with_panes_to_the_right_aligned_top_and_bottom_with_current_p fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &SPLIT_HORIZONTALLY, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_LEFT, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, &QUIT, ]); @@ -444,32 +495,45 @@ pub fn resize_left_with_panes_to_the_left_aligned_top_and_bottom_with_panes_abov fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &RESIZE_UP, - &RESIZE_UP, - &RESIZE_UP, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_UP, - &RESIZE_UP, - &RESIZE_LEFT, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, &QUIT, ]); @@ -508,34 +572,47 @@ pub fn resize_left_with_panes_to_the_right_aligned_top_and_bottom_with_panes_abo fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &RESIZE_UP, - &RESIZE_UP, - &RESIZE_UP, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_UP, - &RESIZE_UP, - &RESIZE_LEFT, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, &QUIT, ]); @@ -570,8 +647,13 @@ pub fn cannot_resize_left_when_pane_to_the_left_is_at_minimum_width() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &RESIZE_LEFT, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); diff --git a/src/tests/integration/resize_right.rs b/src/tests/integration/resize_right.rs index 9f2c590c..cea8ecda 100644 --- a/src/tests/integration/resize_right.rs +++ b/src/tests/integration/resize_right.rs @@ -6,7 +6,9 @@ use crate::tests::utils::{get_next_to_last_snapshot, get_output_frame_snapshots} use crate::{start, CliArgs}; use crate::tests::utils::commands::{ - COMMAND_TOGGLE, MOVE_FOCUS, QUIT, RESIZE_RIGHT, RESIZE_UP, SPLIT_HORIZONTALLY, SPLIT_VERTICALLY, + COMMAND_TOGGLE, ESC, MOVE_FOCUS_IN_PANE_MODE, PANE_MODE, QUIT, RESIZE_MODE, + RESIZE_RIGHT_IN_RESIZE_MODE, RESIZE_UP_IN_RESIZE_MODE, SPLIT_DOWN_IN_PANE_MODE, + SPLIT_RIGHT_IN_PANE_MODE, }; fn get_fake_os_input(fake_win_size: &PositionAndSize) -> FakeInputOutput { @@ -31,8 +33,13 @@ pub fn resize_right_with_pane_to_the_left() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &RESIZE_RIGHT, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_RIGHT_IN_RESIZE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -66,9 +73,14 @@ pub fn resize_right_with_pane_to_the_right() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &RESIZE_RIGHT, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_RIGHT_IN_RESIZE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -102,11 +114,16 @@ pub fn resize_right_with_panes_to_the_left_and_right() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_RIGHT, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_RIGHT_IN_RESIZE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -141,12 +158,17 @@ pub fn resize_right_with_multiple_panes_to_the_left() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_RIGHT, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_RIGHT_IN_RESIZE_MODE, &QUIT, ]); @@ -182,14 +204,19 @@ pub fn resize_right_with_panes_to_the_left_aligned_top_with_current_pane() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_RIGHT, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_RIGHT_IN_RESIZE_MODE, &QUIT, ]); @@ -225,11 +252,16 @@ pub fn resize_right_with_panes_to_the_right_aligned_top_with_current_pane() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &RESIZE_RIGHT, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_RIGHT_IN_RESIZE_MODE, &QUIT, ]); @@ -265,13 +297,18 @@ pub fn resize_right_with_panes_to_the_left_aligned_bottom_with_current_pane() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_RIGHT, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_RIGHT_IN_RESIZE_MODE, &QUIT, ]); @@ -307,12 +344,17 @@ pub fn resize_right_with_panes_to_the_right_aligned_bottom_with_current_pane() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &RESIZE_RIGHT, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_RIGHT_IN_RESIZE_MODE, &QUIT, ]); @@ -350,15 +392,20 @@ pub fn resize_right_with_panes_to_the_left_aligned_top_and_bottom_with_current_p fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &SPLIT_HORIZONTALLY, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &RESIZE_RIGHT, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_RIGHT_IN_RESIZE_MODE, &QUIT, ]); @@ -396,17 +443,22 @@ pub fn resize_right_with_panes_to_the_right_aligned_top_and_bottom_with_current_ fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &SPLIT_HORIZONTALLY, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_RIGHT, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_RIGHT_IN_RESIZE_MODE, &QUIT, ]); @@ -444,32 +496,45 @@ pub fn resize_right_with_panes_to_the_left_aligned_top_and_bottom_with_panes_abo fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &RESIZE_UP, - &RESIZE_UP, - &RESIZE_UP, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_UP, - &RESIZE_UP, - &RESIZE_RIGHT, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, + &RESIZE_RIGHT_IN_RESIZE_MODE, &QUIT, ]); @@ -507,34 +572,47 @@ pub fn resize_right_with_panes_to_the_right_aligned_top_and_bottom_with_panes_ab fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &RESIZE_UP, - &RESIZE_UP, - &RESIZE_UP, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_UP, - &RESIZE_UP, - &RESIZE_RIGHT, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, + &RESIZE_RIGHT_IN_RESIZE_MODE, &QUIT, ]); @@ -569,8 +647,13 @@ pub fn cannot_resize_right_when_pane_to_the_left_is_at_minimum_width() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &RESIZE_RIGHT, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_RIGHT_IN_RESIZE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); diff --git a/src/tests/integration/resize_up.rs b/src/tests/integration/resize_up.rs index 80dfac8a..6e9f7813 100644 --- a/src/tests/integration/resize_up.rs +++ b/src/tests/integration/resize_up.rs @@ -6,7 +6,8 @@ use crate::tests::utils::{get_next_to_last_snapshot, get_output_frame_snapshots} use crate::{start, CliArgs}; use crate::tests::utils::commands::{ - COMMAND_TOGGLE, MOVE_FOCUS, QUIT, RESIZE_LEFT, RESIZE_UP, SPLIT_HORIZONTALLY, SPLIT_VERTICALLY, + COMMAND_TOGGLE, ESC, MOVE_FOCUS_IN_PANE_MODE, PANE_MODE, QUIT, RESIZE_LEFT_IN_RESIZE_MODE, + RESIZE_MODE, RESIZE_UP_IN_RESIZE_MODE, SPLIT_DOWN_IN_PANE_MODE, SPLIT_RIGHT_IN_PANE_MODE, }; fn get_fake_os_input(fake_win_size: &PositionAndSize) -> FakeInputOutput { @@ -33,8 +34,13 @@ pub fn resize_up_with_pane_above() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &RESIZE_UP, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -70,9 +76,14 @@ pub fn resize_up_with_pane_below() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &RESIZE_UP, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -111,11 +122,16 @@ pub fn resize_up_with_panes_above_and_below() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_UP, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -151,12 +167,17 @@ pub fn resize_up_with_multiple_panes_above() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_UP, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, &QUIT, ]); @@ -192,14 +213,19 @@ pub fn resize_up_with_panes_above_aligned_left_with_current_pane() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_UP, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, &QUIT, ]); @@ -237,13 +263,18 @@ pub fn resize_up_with_panes_below_aligned_left_with_current_pane() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_UP, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, &QUIT, ]); @@ -281,11 +312,16 @@ pub fn resize_up_with_panes_above_aligned_right_with_current_pane() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &RESIZE_UP, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, &QUIT, ]); @@ -323,12 +359,17 @@ pub fn resize_up_with_panes_below_aligned_right_with_current_pane() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &RESIZE_UP, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, &QUIT, ]); @@ -366,15 +407,20 @@ pub fn resize_up_with_panes_above_aligned_left_and_right_with_current_pane() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &RESIZE_UP, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, &QUIT, ]); @@ -412,17 +458,22 @@ pub fn resize_up_with_panes_below_aligned_left_and_right_with_current_pane() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_VERTICALLY, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_UP, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, &QUIT, ]); @@ -460,32 +511,45 @@ pub fn resize_up_with_panes_above_aligned_left_and_right_with_panes_to_the_left_ fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &RESIZE_LEFT, - &RESIZE_LEFT, - &RESIZE_LEFT, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &SPLIT_VERTICALLY, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_LEFT, - &RESIZE_LEFT, - &RESIZE_UP, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, &QUIT, ]); @@ -523,34 +587,47 @@ pub fn resize_up_with_panes_below_aligned_left_and_right_with_to_the_left_and_ri fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &RESIZE_LEFT, - &RESIZE_LEFT, - &RESIZE_LEFT, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_HORIZONTALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &SPLIT_VERTICALLY, - &SPLIT_VERTICALLY, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &MOVE_FOCUS, - &RESIZE_LEFT, - &RESIZE_LEFT, - &RESIZE_UP, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &RESIZE_LEFT_IN_RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, &QUIT, ]); @@ -585,8 +662,13 @@ pub fn cannot_resize_up_when_pane_above_is_at_minimum_height() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &RESIZE_UP, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &RESIZE_MODE, + &RESIZE_UP_IN_RESIZE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); diff --git a/src/tests/integration/snapshots/mosaic__tests__integration__tabs__close_the_tab_that_has_a_pane_in_fullscreen.snap b/src/tests/integration/snapshots/mosaic__tests__integration__tabs__close_the_tab_that_has_a_pane_in_fullscreen.snap index 8c5ca0a8..8515bf37 100644 --- a/src/tests/integration/snapshots/mosaic__tests__integration__tabs__close_the_tab_that_has_a_pane_in_fullscreen.snap +++ b/src/tests/integration/snapshots/mosaic__tests__integration__tabs__close_the_tab_that_has_a_pane_in_fullscreen.snap @@ -2,16 +2,6 @@ source: src/tests/integration/tabs.rs expression: snapshot_before_quit --- -line1-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -line2-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -line3-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -line4-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -line5-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -line6-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -line7-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -line8-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -line9-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -line10-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa line11-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa line12-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa line13-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -21,4 +11,14 @@ line16-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa line17-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa line18-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa line19-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +prompt $ +───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── +line12-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +line13-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +line14-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +line15-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +line16-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +line17-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +line18-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +line19-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa prompt $ █ diff --git a/src/tests/integration/tabs.rs b/src/tests/integration/tabs.rs index 23504280..a4a0f52a 100644 --- a/src/tests/integration/tabs.rs +++ b/src/tests/integration/tabs.rs @@ -2,12 +2,13 @@ use insta::assert_snapshot; use crate::tests::fakes::FakeInputOutput; use crate::tests::utils::{get_next_to_last_snapshot, get_output_frame_snapshots}; -use crate::{panes::PositionAndSize, tests::utils::commands::CLOSE_FOCUSED_PANE}; +use crate::{panes::PositionAndSize, tests::utils::commands::CLOSE_PANE_IN_PANE_MODE}; use crate::{start, CliArgs}; use crate::tests::utils::commands::{ - CLOSE_TAB, COMMAND_TOGGLE, NEW_TAB, QUIT, SPLIT_HORIZONTALLY, SWITCH_NEXT_TAB, SWITCH_PREV_TAB, - TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, + CLOSE_TAB_IN_TAB_MODE, COMMAND_TOGGLE, ESC, NEW_TAB_IN_TAB_MODE, PANE_MODE, QUIT, + SPLIT_DOWN_IN_PANE_MODE, SWITCH_NEXT_TAB_IN_TAB_MODE, SWITCH_PREV_TAB_IN_TAB_MODE, TAB_MODE, + TOGGLE_ACTIVE_TERMINAL_FULLSCREEN_IN_PANE_MODE, }; fn get_fake_os_input(fake_win_size: &PositionAndSize) -> FakeInputOutput { @@ -26,8 +27,13 @@ pub fn open_new_tab() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &NEW_TAB, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &TAB_MODE, + &NEW_TAB_IN_TAB_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -55,9 +61,14 @@ pub fn switch_to_prev_tab() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &NEW_TAB, - &SWITCH_PREV_TAB, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &TAB_MODE, + &NEW_TAB_IN_TAB_MODE, + &SWITCH_PREV_TAB_IN_TAB_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -85,9 +96,14 @@ pub fn switch_to_next_tab() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &NEW_TAB, - &SWITCH_NEXT_TAB, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &TAB_MODE, + &NEW_TAB_IN_TAB_MODE, + &SWITCH_NEXT_TAB_IN_TAB_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -115,9 +131,14 @@ pub fn close_tab() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &NEW_TAB, - &CLOSE_TAB, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &TAB_MODE, + &NEW_TAB_IN_TAB_MODE, + &CLOSE_TAB_IN_TAB_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -145,10 +166,15 @@ pub fn close_last_pane_in_a_tab() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &NEW_TAB, - &SPLIT_HORIZONTALLY, - &CLOSE_FOCUSED_PANE, - &CLOSE_FOCUSED_PANE, + &TAB_MODE, + &NEW_TAB_IN_TAB_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &CLOSE_PANE_IN_PANE_MODE, + &CLOSE_PANE_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -176,12 +202,20 @@ pub fn close_the_middle_tab() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &NEW_TAB, - &SPLIT_HORIZONTALLY, - &NEW_TAB, - &SWITCH_PREV_TAB, - &CLOSE_TAB, + &TAB_MODE, + &NEW_TAB_IN_TAB_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &TAB_MODE, + &NEW_TAB_IN_TAB_MODE, + &SWITCH_PREV_TAB_IN_TAB_MODE, + &CLOSE_TAB_IN_TAB_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -209,13 +243,34 @@ pub fn close_the_tab_that_has_a_pane_in_fullscreen() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &NEW_TAB, - &SPLIT_HORIZONTALLY, - &NEW_TAB, - &SWITCH_PREV_TAB, - &TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, - &CLOSE_TAB, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &TAB_MODE, + &NEW_TAB_IN_TAB_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &TAB_MODE, + &NEW_TAB_IN_TAB_MODE, + &SWITCH_PREV_TAB_IN_TAB_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &PANE_MODE, + &TOGGLE_ACTIVE_TERMINAL_FULLSCREEN_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &TAB_MODE, + &CLOSE_TAB_IN_TAB_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -243,10 +298,15 @@ pub fn closing_last_tab_exits_the_app() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_HORIZONTALLY, - &NEW_TAB, - &CLOSE_TAB, - &CLOSE_TAB, + &PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, + &ESC, + &COMMAND_TOGGLE, + &COMMAND_TOGGLE, + &TAB_MODE, + &NEW_TAB_IN_TAB_MODE, + &CLOSE_TAB_IN_TAB_MODE, + &CLOSE_TAB_IN_TAB_MODE, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); diff --git a/src/tests/integration/toggle_fullscreen.rs b/src/tests/integration/toggle_fullscreen.rs index 39149704..943e91a5 100644 --- a/src/tests/integration/toggle_fullscreen.rs +++ b/src/tests/integration/toggle_fullscreen.rs @@ -6,8 +6,8 @@ use crate::tests::utils::{get_next_to_last_snapshot, get_output_frame_snapshots} use crate::{start, CliArgs}; use crate::tests::utils::commands::{ - CLOSE_FOCUSED_PANE, COMMAND_TOGGLE, MOVE_FOCUS, QUIT, SPLIT_HORIZONTALLY, SPLIT_VERTICALLY, - TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, + COMMAND_TOGGLE, MOVE_FOCUS_IN_PANE_MODE, PANE_MODE, QUIT, SPLIT_DOWN_IN_PANE_MODE, + SPLIT_RIGHT_IN_PANE_MODE, TOGGLE_ACTIVE_TERMINAL_FULLSCREEN_IN_PANE_MODE, }; fn get_fake_os_input(fake_win_size: &PositionAndSize) -> FakeInputOutput { @@ -26,9 +26,10 @@ pub fn adding_new_terminal_in_fullscreen() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, - &SPLIT_HORIZONTALLY, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &TOGGLE_ACTIVE_TERMINAL_FULLSCREEN_IN_PANE_MODE, + &SPLIT_DOWN_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); @@ -56,9 +57,10 @@ pub fn move_focus_is_disabled_in_fullscreen() { fake_input_output.add_terminal_input(&[ &COMMAND_TOGGLE, &COMMAND_TOGGLE, - &SPLIT_VERTICALLY, - &TOGGLE_ACTIVE_TERMINAL_FULLSCREEN, - &MOVE_FOCUS, + &PANE_MODE, + &SPLIT_RIGHT_IN_PANE_MODE, + &TOGGLE_ACTIVE_TERMINAL_FULLSCREEN_IN_PANE_MODE, + &MOVE_FOCUS_IN_PANE_MODE, &QUIT, ]); start(Box::new(fake_input_output.clone()), CliArgs::default()); diff --git a/src/tests/utils.rs b/src/tests/utils.rs index b8ecaeae..587d36fd 100644 --- a/src/tests/utils.rs +++ b/src/tests/utils.rs @@ -45,48 +45,35 @@ pub fn get_next_to_last_snapshot(mut snapshots: Vec<String>) -> Option<String> { } pub mod commands { - /// ctrl-g - pub const COMMAND_TOGGLE: [u8; 1] = [7]; - /// b - pub const SPLIT_HORIZONTALLY: [u8; 1] = [98]; - /// n - pub const SPLIT_VERTICALLY: [u8; 1] = [110]; - /// j - pub const RESIZE_DOWN: [u8; 1] = [106]; - /// k - pub const RESIZE_UP: [u8; 1] = [107]; - /// p - pub const MOVE_FOCUS: [u8; 1] = [112]; - /// h - pub const RESIZE_LEFT: [u8; 1] = [104]; - /// l - pub const RESIZE_RIGHT: [u8; 1] = [108]; - /// z - pub const SPAWN_TERMINAL: [u8; 1] = [122]; - /// q - pub const QUIT: [u8; 1] = [113]; - /// PgUp - pub const SCROLL_UP: [u8; 4] = [27, 91, 53, 126]; - /// PgDn - pub const SCROLL_DOWN: [u8; 4] = [27, 91, 54, 126]; - /// x - pub const CLOSE_FOCUSED_PANE: [u8; 1] = [120]; - /// e - pub const TOGGLE_ACTIVE_TERMINAL_FULLSCREEN: [u8; 1] = [101]; - /// y - pub const MOVE_FOCUS_LEFT: [u8; 1] = [121]; - /// u - pub const MOVE_FOCUS_DOWN: [u8; 1] = [117]; - /// i - pub const MOVE_FOCUS_UP: [u8; 1] = [105]; - /// o - pub const MOVE_FOCUS_RIGHT: [u8; 1] = [111]; - /// 1 - pub const NEW_TAB: [u8; 1] = [49]; - /// 2 - pub const SWITCH_PREV_TAB: [u8; 1] = [50]; - /// 3 - pub const SWITCH_NEXT_TAB: [u8; 1] = [51]; - /// 4 - pub const CLOSE_TAB: [u8; 1] = [52]; + pub const COMMAND_TOGGLE: [u8; 1] = [7]; // ctrl-g + pub const QUIT: [u8; 1] = [113]; // q + pub const ESC: [u8; 1] = [27]; + + pub const PANE_MODE: [u8; 1] = [112]; // p + pub const SPAWN_TERMINAL_IN_PANE_MODE: [u8; 1] = [110]; // n + pub const MOVE_FOCUS_IN_PANE_MODE: [u8; 1] = [112]; // p + pub const SPLIT_DOWN_IN_PANE_MODE: [u8; 1] = [100]; // d + pub const SPLIT_RIGHT_IN_PANE_MODE: [u8; 1] = [114]; // r + pub const TOGGLE_ACTIVE_TERMINAL_FULLSCREEN_IN_PANE_MODE: [u8; 1] = [102]; // f + pub const CLOSE_PANE_IN_PANE_MODE: [u8; 1] = [120]; // x + pub const MOVE_FOCUS_DOWN_IN_PANE_MODE: [u8; 1] = [106]; // j + pub const MOVE_FOCUS_UP_IN_PANE_MODE: [u8; 1] = [107]; // k + pub const MOVE_FOCUS_LEFT_IN_PANE_MODE: [u8; 1] = [104]; // h + pub const MOVE_FOCUS_RIGHT_IN_PANE_MODE: [u8; 1] = [108]; // l + + pub const SCROLL_MODE: [u8; 1] = [115]; // s + pub const SCROLL_UP_IN_SCROLL_MODE: [u8; 1] = [107]; // k + pub const SCROLL_DOWN_IN_SCROLL_MODE: [u8; 1] = [106]; // j + + pub const RESIZE_MODE: [u8; 1] = [114]; // r + pub const RESIZE_DOWN_IN_RESIZE_MODE: [u8; 1] = [106]; // j + pub const RESIZE_UP_IN_RESIZE_MODE: [u8; 1] = [107]; // k + pub const RESIZE_LEFT_IN_RESIZE_MODE: [u8; 1] = [104]; // h + pub const RESIZE_RIGHT_IN_RESIZE_MODE: [u8; 1] = [108]; // l + + pub const TAB_MODE: [u8; 1] = [116]; // t + pub const NEW_TAB_IN_TAB_MODE: [u8; 1] = [110]; // n + pub const SWITCH_NEXT_TAB_IN_TAB_MODE: [u8; 1] = [108]; // l + pub const SWITCH_PREV_TAB_IN_TAB_MODE: [u8; 1] = [104]; // h + pub const CLOSE_TAB_IN_TAB_MODE: [u8; 1] = [120]; // x } |
