mirror of
https://github.com/jesseduffield/lazygit.git
synced 2025-04-23 12:18:51 +02:00
It's likely that the exec todos are some kind of lengthy build task whose output the user will want to see in the terminal.
58 lines
1.5 KiB
Go
58 lines
1.5 KiB
Go
package interactive_rebase
|
|
|
|
import (
|
|
"github.com/jesseduffield/lazygit/pkg/config"
|
|
. "github.com/jesseduffield/lazygit/pkg/integration/components"
|
|
)
|
|
|
|
var ShowExecTodos = NewIntegrationTest(NewIntegrationTestArgs{
|
|
Description: "Show exec todos in the rebase todo list",
|
|
ExtraCmdArgs: []string{},
|
|
Skip: false,
|
|
SetupConfig: func(cfg *config.AppConfig) {
|
|
cfg.UserConfig.CustomCommands = []config.CustomCommand{
|
|
{
|
|
Key: "X",
|
|
Context: "commits",
|
|
Command: "git -c core.editor=: rebase -i -x false HEAD^^",
|
|
},
|
|
}
|
|
},
|
|
SetupRepo: func(shell *Shell) {
|
|
shell.
|
|
NewBranch("branch1").
|
|
CreateNCommits(3)
|
|
},
|
|
Run: func(t *TestDriver, keys config.KeybindingConfig) {
|
|
t.Views().Commits().
|
|
Focus().
|
|
Press("X").
|
|
Tap(func() {
|
|
t.ExpectPopup().Alert().Title(Equals("Error")).Content(Contains("Rebasing (2/4)Executing: false")).Confirm()
|
|
}).
|
|
Lines(
|
|
Contains("exec").Contains("false"),
|
|
Contains("pick").Contains("CI commit 03"),
|
|
Contains("CI ◯ <-- YOU ARE HERE --- commit 02"),
|
|
Contains("CI ◯ commit 01"),
|
|
).
|
|
Tap(func() {
|
|
t.Common().ContinueRebase()
|
|
t.ExpectPopup().Alert().Title(Equals("Error")).Content(Contains("exit status 1")).Confirm()
|
|
}).
|
|
Lines(
|
|
Contains("CI ◯ <-- YOU ARE HERE --- commit 03"),
|
|
Contains("CI ◯ commit 02"),
|
|
Contains("CI ◯ commit 01"),
|
|
).
|
|
Tap(func() {
|
|
t.Common().ContinueRebase()
|
|
}).
|
|
Lines(
|
|
Contains("CI ◯ commit 03"),
|
|
Contains("CI ◯ commit 02"),
|
|
Contains("CI ◯ commit 01"),
|
|
)
|
|
},
|
|
})
|