Files
Stefan Haller 6417da5319 Add selection assertions to tests involving conflicts
This doesn't change anything, we just pin down the selection behavior
around conflicts; we are going to change that behavior, and these tests
will make it obvious how when they change in the next commit.
2026-08-15 15:24:15 +02:00

47 lines
1.5 KiB
Go

package interactive_rebase
import (
"github.com/jesseduffield/lazygit/pkg/config"
. "github.com/jesseduffield/lazygit/pkg/integration/components"
)
var EditTheConflCommit = NewIntegrationTest(NewIntegrationTestArgs{
Description: "Swap two commits, causing a conflict; then try to interact with the 'confl' commit, which results in an error.",
ExtraCmdArgs: []string{},
Skip: false,
SetupConfig: func(config *config.AppConfig) {},
SetupRepo: func(shell *Shell) {
shell.CreateFileAndAdd("myfile", "one")
shell.Commit("commit one")
shell.UpdateFileAndAdd("myfile", "two")
shell.Commit("commit two")
shell.UpdateFileAndAdd("myfile", "three")
shell.Commit("commit three")
},
Run: func(t *TestDriver, keys config.KeybindingConfig) {
t.Views().Commits().
Focus().
Lines(
Contains("commit three").IsSelected(),
Contains("commit two"),
Contains("commit one"),
).
Press(keys.Commits.MoveDownCommit).
Tap(func() {
t.Common().AcknowledgeConflicts()
}).
Focus().
Lines(
Contains("─── Pending rebase todos"),
Contains("pick").Contains("commit two").IsSelected(),
Contains("pick").Contains("<-- CONFLICT --- commit three"),
Contains("─── Commits"),
Contains("commit one"),
).
NavigateToLine(Contains("<-- CONFLICT --- commit three")).
Press(keys.Commits.RenameCommit)
t.ExpectToast(Contains("Disabled: Rewording commits while interactively rebasing is not currently supported"))
},
})