Ensure item-closing actions do not panic when no items are present (#31845)

This PR adds a comprehensive test that ensures that no item-closing
action will panic when no items are present. A test already existed
(`test_remove_active_empty `) that ensured `CloseActiveItem` didn't
panic, but the new test covers:

- `CloseActiveItem`
- `CloseInactiveItems`
- `CloseAllItems`
- `CloseCleanItems`
- `CloseItemsToTheRight`
- `CloseItemsToTheLeft`

I plan to do a bit more clean up in `pane.rs` and this feels like a good
thing to add before that.

Release Notes:

- N/A
This commit is contained in:
Joseph T. Lyons 2025-05-31 23:31:38 -04:00 committed by GitHub
parent 24e4446cd3
commit f13f2dfb70
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 146 additions and 117 deletions

View file

@ -739,7 +739,6 @@ async fn test_ignored_root(cx: &mut TestAppContext) {
.update_in(cx, |workspace, window, cx| {
workspace.active_pane().update(cx, |pane, cx| {
pane.close_active_item(&CloseActiveItem::default(), window, cx)
.unwrap()
})
})
.await