Initial public release of Warp.
Repo-Sync-Origin: warpdotdev/warp-internal@12af1d983b
This commit is contained in:
@@ -0,0 +1,77 @@
|
||||
use super::WorkspaceAction;
|
||||
use crate::pane_group::TerminalPaneId;
|
||||
use crate::workspace::tab_settings::{
|
||||
VerticalTabsDisplayGranularity, VerticalTabsPrimaryInfo, VerticalTabsTabItemMode,
|
||||
VerticalTabsViewMode,
|
||||
};
|
||||
use crate::workspace::PaneViewLocator;
|
||||
use warpui::EntityId;
|
||||
|
||||
#[test]
|
||||
fn vertical_tabs_view_mode_change_does_not_save_workspace_state() {
|
||||
assert!(
|
||||
!WorkspaceAction::SetVerticalTabsViewMode(VerticalTabsViewMode::Compact)
|
||||
.should_save_app_state_on_action()
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn vertical_tabs_panel_toggle_still_saves_workspace_state() {
|
||||
assert!(WorkspaceAction::ToggleVerticalTabsPanel.should_save_app_state_on_action());
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn settings_popup_toggle_does_not_save_workspace_state() {
|
||||
assert!(!WorkspaceAction::ToggleVerticalTabsSettingsPopup.should_save_app_state_on_action());
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn display_granularity_change_does_not_save_workspace_state() {
|
||||
assert!(!WorkspaceAction::SetVerticalTabsDisplayGranularity(
|
||||
VerticalTabsDisplayGranularity::Panes
|
||||
)
|
||||
.should_save_app_state_on_action());
|
||||
assert!(!WorkspaceAction::SetVerticalTabsDisplayGranularity(
|
||||
VerticalTabsDisplayGranularity::Tabs
|
||||
)
|
||||
.should_save_app_state_on_action());
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn tab_item_mode_change_does_not_save_workspace_state() {
|
||||
assert!(
|
||||
!WorkspaceAction::SetVerticalTabsTabItemMode(VerticalTabsTabItemMode::FocusedSession)
|
||||
.should_save_app_state_on_action()
|
||||
);
|
||||
assert!(
|
||||
!WorkspaceAction::SetVerticalTabsTabItemMode(VerticalTabsTabItemMode::Summary)
|
||||
.should_save_app_state_on_action()
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn primary_info_change_does_not_save_workspace_state() {
|
||||
assert!(
|
||||
!WorkspaceAction::SetVerticalTabsPrimaryInfo(VerticalTabsPrimaryInfo::Command)
|
||||
.should_save_app_state_on_action()
|
||||
);
|
||||
assert!(!WorkspaceAction::SetVerticalTabsPrimaryInfo(
|
||||
VerticalTabsPrimaryInfo::WorkingDirectory
|
||||
)
|
||||
.should_save_app_state_on_action());
|
||||
assert!(
|
||||
!WorkspaceAction::SetVerticalTabsPrimaryInfo(VerticalTabsPrimaryInfo::Branch)
|
||||
.should_save_app_state_on_action()
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn pane_name_actions_save_workspace_state() {
|
||||
let locator = PaneViewLocator {
|
||||
pane_group_id: EntityId::new(),
|
||||
pane_id: TerminalPaneId::dummy_terminal_pane_id().into(),
|
||||
};
|
||||
|
||||
assert!(WorkspaceAction::RenamePane(locator).should_save_app_state_on_action());
|
||||
assert!(WorkspaceAction::ResetPaneName(locator).should_save_app_state_on_action());
|
||||
}
|
||||
Reference in New Issue
Block a user