mirror of
https://github.com/jesseduffield/lazygit.git
synced 2025-08-08 22:36:49 +02:00
Add integration tests showing resetting to duplicate named tags and branches
This commit is contained in:
committed by
Stefan Haller
parent
122d6e5f0d
commit
737a99b1c8
52
pkg/integration/tests/branch/reset_to_duplicate_named_tag.go
Normal file
52
pkg/integration/tests/branch/reset_to_duplicate_named_tag.go
Normal file
@ -0,0 +1,52 @@
|
||||
package branch
|
||||
|
||||
import (
|
||||
"github.com/jesseduffield/lazygit/pkg/config"
|
||||
. "github.com/jesseduffield/lazygit/pkg/integration/components"
|
||||
)
|
||||
|
||||
var ResetToDuplicateNamedTag = NewIntegrationTest(NewIntegrationTestArgs{
|
||||
Description: "Hard reset to a branch when a tag shares the same name",
|
||||
ExtraCmdArgs: []string{},
|
||||
Skip: false,
|
||||
SetupConfig: func(config *config.AppConfig) {},
|
||||
SetupRepo: func(shell *Shell) {
|
||||
shell.NewBranch("current-branch")
|
||||
|
||||
shell.EmptyCommit("other-branch-tag commit")
|
||||
shell.CreateLightweightTag("other-branch", "HEAD")
|
||||
|
||||
shell.EmptyCommit("other-branch commit")
|
||||
shell.NewBranch("other-branch")
|
||||
|
||||
shell.Checkout("current-branch")
|
||||
shell.EmptyCommit("current-branch commit")
|
||||
},
|
||||
Run: func(t *TestDriver, keys config.KeybindingConfig) {
|
||||
t.Views().Commits().Lines(
|
||||
Contains("current-branch commit"),
|
||||
Contains("other-branch commit"),
|
||||
Contains("other-branch-tag commit"),
|
||||
)
|
||||
|
||||
t.Views().Branches().
|
||||
Focus().
|
||||
Lines(
|
||||
Contains("current-branch").IsSelected(),
|
||||
Contains("other-branch"),
|
||||
).
|
||||
SelectNextItem().
|
||||
Press(keys.Commits.ViewResetOptions)
|
||||
|
||||
t.ExpectPopup().Menu().
|
||||
Title(Contains("Reset to other-branch")).
|
||||
Select(Contains("Hard reset")).
|
||||
Confirm()
|
||||
|
||||
t.Views().Commits().
|
||||
Lines(
|
||||
Contains("other-branch commit"),
|
||||
Contains("other-branch-tag commit"),
|
||||
)
|
||||
},
|
||||
})
|
48
pkg/integration/tests/tag/reset_to_duplicate_named_branch.go
Normal file
48
pkg/integration/tests/tag/reset_to_duplicate_named_branch.go
Normal file
@ -0,0 +1,48 @@
|
||||
package tag
|
||||
|
||||
import (
|
||||
"github.com/jesseduffield/lazygit/pkg/config"
|
||||
. "github.com/jesseduffield/lazygit/pkg/integration/components"
|
||||
)
|
||||
|
||||
var ResetToDuplicateNamedBranch = NewIntegrationTest(NewIntegrationTestArgs{
|
||||
Description: "Hard reset to a tag when a branch shares the same name",
|
||||
ExtraCmdArgs: []string{},
|
||||
Skip: false,
|
||||
SetupConfig: func(config *config.AppConfig) {},
|
||||
SetupRepo: func(shell *Shell) {
|
||||
shell.NewBranch("current-branch")
|
||||
|
||||
shell.EmptyCommit("other-branch-tag commit")
|
||||
shell.CreateLightweightTag("other-branch", "HEAD")
|
||||
|
||||
shell.EmptyCommit("other-branch commit")
|
||||
shell.NewBranch("other-branch")
|
||||
|
||||
shell.Checkout("current-branch")
|
||||
shell.EmptyCommit("current-branch commit")
|
||||
},
|
||||
Run: func(t *TestDriver, keys config.KeybindingConfig) {
|
||||
t.Views().Commits().Lines(
|
||||
Contains("current-branch commit"),
|
||||
Contains("other-branch commit"),
|
||||
Contains("other-branch-tag commit"),
|
||||
)
|
||||
|
||||
t.Views().Tags().
|
||||
Focus().
|
||||
Lines(
|
||||
Contains("other-branch").IsSelected(),
|
||||
).
|
||||
Press(keys.Commits.ViewResetOptions)
|
||||
|
||||
t.ExpectPopup().Menu().
|
||||
Title(Contains("Reset to other-branch")).
|
||||
Select(Contains("Hard reset")).
|
||||
Confirm()
|
||||
|
||||
t.Views().Commits().Lines(
|
||||
Contains("other-branch-tag commit"),
|
||||
)
|
||||
},
|
||||
})
|
@ -71,6 +71,7 @@ var tests = []*components.IntegrationTest{
|
||||
branch.RebaseToUpstream,
|
||||
branch.Rename,
|
||||
branch.Reset,
|
||||
branch.ResetToDuplicateNamedTag,
|
||||
branch.ResetToUpstream,
|
||||
branch.SelectCommitsOfCurrentBranch,
|
||||
branch.SetUpstream,
|
||||
@ -406,6 +407,7 @@ var tests = []*components.IntegrationTest{
|
||||
tag.ForceTagAnnotated,
|
||||
tag.ForceTagLightweight,
|
||||
tag.Reset,
|
||||
tag.ResetToDuplicateNamedBranch,
|
||||
ui.Accordion,
|
||||
ui.DisableSwitchTabWithPanelJumpKeys,
|
||||
ui.EmptyMenu,
|
||||
|
Reference in New Issue
Block a user