mirror of
https://github.com/jesseduffield/lazygit.git
synced 2025-08-04 23:42:10 +03:00
Similar to what was done in 457cdce61d
, and for the same reason.
However, instead of waiting and fixing them one by one as we see them fail, I
decided to go about it more systematically. To do that, I added calls to
`time.Sleep(1 * time.Second)` in all the Shell.Commit* helper functions; this
ensures that all the commits we make get different committer time stamps, making
all these tests fail. With this I'm pretty confident that we're good now.
69 lines
1.7 KiB
Go
69 lines
1.7 KiB
Go
package custom_commands
|
|
|
|
import (
|
|
"github.com/jesseduffield/lazygit/pkg/config"
|
|
. "github.com/jesseduffield/lazygit/pkg/integration/components"
|
|
)
|
|
|
|
var SuggestionsCommand = NewIntegrationTest(NewIntegrationTestArgs{
|
|
Description: "Using a custom command that uses a suggestions command in a prompt step",
|
|
ExtraCmdArgs: []string{},
|
|
Skip: false,
|
|
SetupRepo: func(shell *Shell) {
|
|
shell.NewBranch("branch-one")
|
|
shell.EmptyCommit("blah")
|
|
shell.NewBranch("branch-two")
|
|
shell.EmptyCommit("blah")
|
|
shell.NewBranch("branch-three")
|
|
shell.EmptyCommit("blah")
|
|
shell.NewBranch("branch-four")
|
|
shell.EmptyCommit("blah")
|
|
},
|
|
SetupConfig: func(cfg *config.AppConfig) {
|
|
cfg.GetUserConfig().CustomCommands = []config.CustomCommand{
|
|
{
|
|
Key: "a",
|
|
Context: "localBranches",
|
|
Command: `git checkout {{.Form.Branch}}`,
|
|
Prompts: []config.CustomCommandPrompt{
|
|
{
|
|
Key: "Branch",
|
|
Type: "input",
|
|
Title: "Enter a branch name",
|
|
Suggestions: config.CustomCommandSuggestions{
|
|
Command: "git branch --format='%(refname:short)'",
|
|
},
|
|
},
|
|
},
|
|
},
|
|
}
|
|
|
|
cfg.GetUserConfig().Git.LocalBranchSortOrder = "alphabetical"
|
|
},
|
|
Run: func(t *TestDriver, keys config.KeybindingConfig) {
|
|
t.Views().Branches().
|
|
Focus().
|
|
Lines(
|
|
Contains("branch-four").IsSelected(),
|
|
Contains("branch-one"),
|
|
Contains("branch-three"),
|
|
Contains("branch-two"),
|
|
).
|
|
Press("a")
|
|
|
|
t.ExpectPopup().Prompt().
|
|
Title(Equals("Enter a branch name")).
|
|
Type("three").
|
|
SuggestionLines(Contains("branch-three")).
|
|
ConfirmFirstSuggestion()
|
|
|
|
t.Views().Branches().
|
|
Lines(
|
|
Contains("branch-three"),
|
|
Contains("branch-four").IsSelected(),
|
|
Contains("branch-one"),
|
|
Contains("branch-two"),
|
|
)
|
|
},
|
|
})
|