2023-02-25 13:09:14 +02:00
|
|
|
package conflicts
|
|
|
|
|
|
|
|
import (
|
|
|
|
"github.com/jesseduffield/lazygit/pkg/config"
|
|
|
|
. "github.com/jesseduffield/lazygit/pkg/integration/components"
|
|
|
|
"github.com/jesseduffield/lazygit/pkg/integration/tests/shared"
|
|
|
|
)
|
|
|
|
|
|
|
|
var ResolveMultipleFiles = NewIntegrationTest(NewIntegrationTestArgs{
|
|
|
|
Description: "Ensures that upon resolving conflicts for one file, the next file is selected",
|
2023-05-21 09:00:29 +02:00
|
|
|
ExtraCmdArgs: []string{},
|
2023-02-25 13:09:14 +02:00
|
|
|
Skip: false,
|
|
|
|
SetupConfig: func(config *config.AppConfig) {},
|
|
|
|
SetupRepo: func(shell *Shell) {
|
|
|
|
shared.CreateMergeConflictFiles(shell)
|
|
|
|
},
|
|
|
|
Run: func(t *TestDriver, keys config.KeybindingConfig) {
|
|
|
|
t.Views().Files().
|
|
|
|
IsFocused().
|
|
|
|
Lines(
|
|
|
|
Contains("UU").Contains("file1").IsSelected(),
|
|
|
|
Contains("UU").Contains("file2"),
|
|
|
|
).
|
|
|
|
PressEnter()
|
|
|
|
|
|
|
|
t.Views().MergeConflicts().
|
|
|
|
IsFocused().
|
|
|
|
SelectedLines(
|
|
|
|
Contains("<<<<<<< HEAD"),
|
|
|
|
Contains("First Change"),
|
|
|
|
Contains("======="),
|
|
|
|
).
|
|
|
|
PressPrimaryAction()
|
|
|
|
|
|
|
|
t.Views().Files().
|
|
|
|
IsFocused().
|
|
|
|
Lines(
|
|
|
|
Contains("UU").Contains("file2").IsSelected(),
|
|
|
|
).
|
|
|
|
PressEnter()
|
|
|
|
|
|
|
|
// coincidentally these files have the same conflict
|
|
|
|
t.Views().MergeConflicts().
|
|
|
|
IsFocused().
|
|
|
|
SelectedLines(
|
|
|
|
Contains("<<<<<<< HEAD"),
|
|
|
|
Contains("First Change"),
|
|
|
|
Contains("======="),
|
|
|
|
).
|
|
|
|
PressPrimaryAction()
|
|
|
|
|
2023-02-26 02:49:15 +02:00
|
|
|
t.Common().ContinueOnConflictsResolved()
|
2023-02-25 13:09:14 +02:00
|
|
|
},
|
|
|
|
})
|