mirror of
https://github.com/jesseduffield/lazygit.git
synced 2025-04-19 17:02:18 +03:00
This implementation, unlike that proposed in https://github.com/jesseduffield/lazygit/pull/4253 keeps the yaml schema easy, and does a migration from the single elements to a sequence of elements.
62 lines
1.6 KiB
Go
62 lines
1.6 KiB
Go
package commit
|
|
|
|
import (
|
|
"github.com/jesseduffield/lazygit/pkg/config"
|
|
. "github.com/jesseduffield/lazygit/pkg/integration/components"
|
|
)
|
|
|
|
var CommitWithPrefix = NewIntegrationTest(NewIntegrationTestArgs{
|
|
Description: "Commit with defined config commitPrefixes",
|
|
ExtraCmdArgs: []string{},
|
|
Skip: false,
|
|
SetupConfig: func(cfg *config.AppConfig) {
|
|
cfg.GetUserConfig().Git.CommitPrefixes = map[string][]config.CommitPrefixConfig{
|
|
"repo": {{
|
|
Pattern: `^\w+/(\w+-\w+).*`,
|
|
Replace: "[$1]: ",
|
|
}},
|
|
}
|
|
},
|
|
SetupRepo: func(shell *Shell) {
|
|
shell.NewBranch("feature/TEST-001")
|
|
shell.CreateFile("test-commit-prefix", "This is foo bar")
|
|
},
|
|
Run: func(t *TestDriver, keys config.KeybindingConfig) {
|
|
t.Views().Commits().
|
|
IsEmpty()
|
|
|
|
t.Views().Files().
|
|
IsFocused().
|
|
PressPrimaryAction().
|
|
Press(keys.Files.CommitChanges)
|
|
|
|
t.ExpectPopup().CommitMessagePanel().
|
|
Title(Equals("Commit summary")).
|
|
InitialText(Equals("[TEST-001]: ")).
|
|
Cancel()
|
|
|
|
t.Views().Files().
|
|
IsFocused().
|
|
Press(keys.Files.CommitChanges)
|
|
|
|
t.ExpectPopup().CommitMessagePanel().
|
|
Title(Equals("Commit summary")).
|
|
InitialText(Equals("[TEST-001]: ")).
|
|
Type("my commit message").
|
|
Cancel()
|
|
|
|
t.Views().Files().
|
|
IsFocused().
|
|
Press(keys.Files.CommitChanges)
|
|
|
|
t.ExpectPopup().CommitMessagePanel().
|
|
Title(Equals("Commit summary")).
|
|
InitialText(Equals("[TEST-001]: my commit message")).
|
|
Type(". Added something else").
|
|
Confirm()
|
|
|
|
t.Views().Commits().Focus()
|
|
t.Views().Main().Content(Contains("[TEST-001]: my commit message. Added something else"))
|
|
},
|
|
})
|