mirror of
https://github.com/jesseduffield/lazygit.git
synced 2026-10-06 05:57:38 -04:00
Historical file removal and the staging/custom-patch demos still entered the old panels even though their line actions already exist in the main diff. Preserve their prompts, timing, and downstream results while changing only the interaction surface. Co-Authored-By: GitHub Copilot <copilot@github.com>
76 lines
2.1 KiB
Go
76 lines
2.1 KiB
Go
package demo
|
|
|
|
import (
|
|
"github.com/jesseduffield/lazygit/pkg/config"
|
|
. "github.com/jesseduffield/lazygit/pkg/integration/components"
|
|
)
|
|
|
|
var usersFileContent = `package main
|
|
|
|
import "fmt"
|
|
|
|
func main() {
|
|
// TODO: verify that this actually works
|
|
fmt.Println("hello world")
|
|
}
|
|
`
|
|
|
|
var CustomPatch = NewIntegrationTest(NewIntegrationTestArgs{
|
|
Description: "Remove a line from an old commit",
|
|
ExtraCmdArgs: []string{},
|
|
Skip: false,
|
|
IsDemo: true,
|
|
SetupConfig: func(cfg *config.AppConfig) {
|
|
setDefaultDemoConfig(cfg)
|
|
cfg.GetUserConfig().Gui.UseHunkModeInStagingView = false
|
|
},
|
|
SetupRepo: func(shell *Shell) {
|
|
shell.CreateNCommitsWithRandomMessages(30)
|
|
shell.NewBranch("feature/user-authentication")
|
|
shell.EmptyCommit("Add user authentication feature")
|
|
shell.CreateFileAndAdd("src/users.go", "package main\n")
|
|
shell.Commit("Fix local session storage")
|
|
shell.CreateFile("src/authentication.go", "package main")
|
|
shell.CreateFile("src/session.go", "package main")
|
|
shell.UpdateFileAndAdd("src/users.go", usersFileContent)
|
|
shell.EmptyCommit("Stop using shims")
|
|
shell.UpdateFileAndAdd("src/authentication.go", "package authentication")
|
|
shell.UpdateFileAndAdd("src/session.go", "package session")
|
|
shell.Commit("Enhance user authentication feature")
|
|
},
|
|
Run: func(t *TestDriver, keys config.KeybindingConfig) {
|
|
t.SetCaptionPrefix("Remove a line from an old commit")
|
|
t.Wait(1000)
|
|
|
|
t.Views().Commits().
|
|
Focus().
|
|
NavigateToLine(Contains("Stop using shims")).
|
|
Wait(1000).
|
|
PressEnter().
|
|
Tap(func() {
|
|
t.Views().CommitFiles().
|
|
IsFocused().
|
|
NavigateToLine(Contains("users.go")).
|
|
Wait(1000).
|
|
Press(keys.Universal.FocusMainView).
|
|
Tap(func() {
|
|
t.Views().Main().
|
|
IsFocused().
|
|
NavigateToLine(Contains("TODO")).
|
|
Wait(500).
|
|
PressPrimaryAction().
|
|
PressEscape()
|
|
}).
|
|
Press(keys.Universal.CreatePatchOptionsMenu).
|
|
Tap(func() {
|
|
t.ExpectPopup().Menu().
|
|
Title(Equals("Patch options")).
|
|
Select(Contains("Remove patch from original commit")).
|
|
Wait(500).
|
|
Confirm()
|
|
}).
|
|
PressEscape()
|
|
})
|
|
},
|
|
})
|