mirror of
https://github.com/jesseduffield/lazygit.git
synced 2025-04-25 12:24:47 +02:00
After switching to another repo and then back to the original one, all keybinding suggestions in the status bar are shown twice.
46 lines
1.4 KiB
Go
46 lines
1.4 KiB
Go
package ui
|
|
|
|
import (
|
|
"path/filepath"
|
|
|
|
"github.com/jesseduffield/lazygit/pkg/config"
|
|
. "github.com/jesseduffield/lazygit/pkg/integration/components"
|
|
)
|
|
|
|
var KeybindingSuggestionsWhenSwitchingRepos = NewIntegrationTest(NewIntegrationTestArgs{
|
|
Description: "Show correct keybinding suggestions after switching between repos",
|
|
ExtraCmdArgs: []string{},
|
|
Skip: false,
|
|
SetupConfig: func(config *config.AppConfig) {
|
|
otherRepo, _ := filepath.Abs("../other")
|
|
config.AppState.RecentRepos = []string{otherRepo}
|
|
},
|
|
SetupRepo: func(shell *Shell) {
|
|
shell.CloneNonBare("other")
|
|
},
|
|
Run: func(t *TestDriver, keys config.KeybindingConfig) {
|
|
switchToRepo := func(repo string) {
|
|
t.GlobalPress(keys.Universal.OpenRecentRepos)
|
|
t.ExpectPopup().Menu().Title(Equals("Recent repositories")).
|
|
Lines(
|
|
Contains(repo).IsSelected(),
|
|
Contains("Cancel"),
|
|
).Confirm()
|
|
t.Views().Status().Content(Contains(repo + " → master"))
|
|
}
|
|
|
|
t.Views().Files().Focus()
|
|
t.Views().Options().Content(
|
|
Equals("Commit: c | Stash: s | Reset: D | Keybindings: ? | Cancel: <esc>"))
|
|
|
|
switchToRepo("other")
|
|
switchToRepo("repo")
|
|
|
|
t.Views().Options().Content(
|
|
/* EXPECTED:
|
|
Equals("Commit: c | Stash: s | Reset: D | Keybindings: ? | Cancel: <esc>"))
|
|
ACTUAL (all keybindings appear twice): */
|
|
Equals("Commit: c | Stash: s | Reset: D | Commit: c | Stash: s | Reset: D | Keybindings: ? | Cancel: <esc> | Keybindings: ? | Cancel: <esc>"))
|
|
},
|
|
})
|