diff --git a/pkg/commands/git_commands/commit_loader.go b/pkg/commands/git_commands/commit_loader.go index 2f4556bb969..96b3d1b1331 100644 --- a/pkg/commands/git_commands/commit_loader.go +++ b/pkg/commands/git_commands/commit_loader.go @@ -496,7 +496,7 @@ func (self *CommitLoader) getSequencerCommits() []*models.Commit { commits = utils.Prepend(commits, &models.Commit{ Hash: t.Commit, Name: t.Msg, - Status: models.StatusRebasing, + Status: models.StatusCherryPickingOrReverting, Action: t.Command, }) } diff --git a/pkg/commands/models/commit.go b/pkg/commands/models/commit.go index b6594705558..085404d8f75 100644 --- a/pkg/commands/models/commit.go +++ b/pkg/commands/models/commit.go @@ -18,6 +18,7 @@ const ( StatusPushed StatusMerged StatusRebasing + StatusCherryPickingOrReverting StatusConflicted StatusReflog ) diff --git a/pkg/gui/context/list_context_trait.go b/pkg/gui/context/list_context_trait.go index 1c059fb4ff8..25616af0a0a 100644 --- a/pkg/gui/context/list_context_trait.go +++ b/pkg/gui/context/list_context_trait.go @@ -26,6 +26,8 @@ type ListContextTrait struct { func (self *ListContextTrait) IsListContext() {} func (self *ListContextTrait) FocusLine() { + self.Context.FocusLine() + // Doing this at the end of the layout function because we need the view to be // resized before we focus the line, otherwise if we're in accordion mode // the view could be squashed and won't how to adjust the cursor/origin. diff --git a/pkg/gui/context/local_commits_context.go b/pkg/gui/context/local_commits_context.go index f40f7f0ff49..2414501845c 100644 --- a/pkg/gui/context/local_commits_context.go +++ b/pkg/gui/context/local_commits_context.go @@ -1,6 +1,7 @@ package context import ( + "fmt" "log" "strings" "time" @@ -40,7 +41,6 @@ func NewLocalCommitsContext(c *ContextCommon) *LocalCommitsContext { } } - showYouAreHereLabel := c.Model().WorkingTreeStateAtLastCommitRefresh.CanShowTodos() hasRebaseUpdateRefsConfig := c.Git().Config.GetRebaseUpdateRefs() return presentation.GetCommitListDisplayStrings( @@ -62,10 +62,54 @@ func NewLocalCommitsContext(c *ContextCommon) *LocalCommitsContext { endIdx, shouldShowGraph(c), c.Model().BisectInfo, - showYouAreHereLabel, ) } + getNonModelItems := func() []*NonModelItem { + result := []*NonModelItem{} + if c.Model().WorkingTreeStateAtLastCommitRefresh.CanShowTodos() { + if c.Model().WorkingTreeStateAtLastCommitRefresh.Rebasing { + result = append(result, &NonModelItem{ + Index: 0, + Content: fmt.Sprintf("--- %s ---", c.Tr.PendingRebaseTodosSectionHeader), + }) + } + + if c.Model().WorkingTreeStateAtLastCommitRefresh.CherryPicking || + c.Model().WorkingTreeStateAtLastCommitRefresh.Reverting { + _, firstCherryPickOrRevertTodo, found := lo.FindIndexOf( + c.Model().Commits, func(c *models.Commit) bool { + return c.Status == models.StatusCherryPickingOrReverting || + c.Status == models.StatusConflicted + }) + if !found { + firstCherryPickOrRevertTodo = 0 + } + label := lo.Ternary(c.Model().WorkingTreeStateAtLastCommitRefresh.CherryPicking, + c.Tr.PendingCherryPicksSectionHeader, + c.Tr.PendingRevertsSectionHeader) + result = append(result, &NonModelItem{ + Index: firstCherryPickOrRevertTodo, + Content: fmt.Sprintf("--- %s ---", label), + }) + } + + _, firstRealCommit, found := lo.FindIndexOf( + c.Model().Commits, func(c *models.Commit) bool { + return !c.IsTODO() + }) + if !found { + firstRealCommit = 0 + } + result = append(result, &NonModelItem{ + Index: firstRealCommit, + Content: fmt.Sprintf("--- %s ---", c.Tr.CommitsSectionHeader), + }) + } + + return result + } + ctx := &LocalCommitsContext{ LocalCommitsViewModel: viewModel, SearchTrait: NewSearchTrait(c), @@ -82,6 +126,7 @@ func NewLocalCommitsContext(c *ContextCommon) *LocalCommitsContext { ListRenderer: ListRenderer{ list: viewModel, getDisplayStrings: getDisplayStrings, + getNonModelItems: getNonModelItems, }, c: c, refreshViewportOnChange: true, diff --git a/pkg/gui/context/simple_context.go b/pkg/gui/context/simple_context.go index 579f975e625..db8160ea0c9 100644 --- a/pkg/gui/context/simple_context.go +++ b/pkg/gui/context/simple_context.go @@ -54,6 +54,9 @@ func (self *SimpleContext) HandleFocusLost(opts types.OnFocusLostOpts) { } } +func (self *SimpleContext) FocusLine() { +} + func (self *SimpleContext) HandleRender() { if self.handleRenderFunc != nil { self.handleRenderFunc() diff --git a/pkg/gui/context/sub_commits_context.go b/pkg/gui/context/sub_commits_context.go index b3b3fd1b476..1eed352eb87 100644 --- a/pkg/gui/context/sub_commits_context.go +++ b/pkg/gui/context/sub_commits_context.go @@ -77,7 +77,6 @@ func NewSubCommitsContext( endIdx, shouldShowGraph(c), git_commands.NewNullBisectInfo(), - false, ) } diff --git a/pkg/gui/presentation/commits.go b/pkg/gui/presentation/commits.go index b2cff6e430b..f265979daa0 100644 --- a/pkg/gui/presentation/commits.go +++ b/pkg/gui/presentation/commits.go @@ -56,7 +56,6 @@ func GetCommitListDisplayStrings( endIdx int, showGraph bool, bisectInfo *git_commands.BisectInfo, - showYouAreHereLabel bool, ) [][]string { mutex.Lock() defer mutex.Unlock() @@ -185,11 +184,6 @@ func GetCommitListDisplayStrings( for i, commit := range filteredCommits { unfilteredIdx := i + startIdx bisectStatus = getBisectStatus(unfilteredIdx, commit.Hash, bisectInfo, bisectBounds) - isYouAreHereCommit := false - if showYouAreHereLabel && (commit.Status == models.StatusConflicted || unfilteredIdx == rebaseOffset) { - isYouAreHereCommit = true - showYouAreHereLabel = false - } isMarkedBaseCommit := commit.Hash != "" && commit.Hash == markedBaseCommit if isMarkedBaseCommit { willBeRebased = true @@ -211,7 +205,6 @@ func GetCommitListDisplayStrings( fullDescription, bisectStatus, bisectInfo, - isYouAreHereCommit, )) } return lines @@ -364,7 +357,6 @@ func displayCommit( fullDescription bool, bisectStatus BisectStatus, bisectInfo *git_commands.BisectInfo, - isYouAreHereCommit bool, ) []string { bisectString := getBisectStatusText(bisectStatus, bisectInfo) @@ -427,14 +419,8 @@ func displayCommit( } mark := "" - if isYouAreHereCommit { - color := style.FgYellow - text := common.Tr.YouAreHere - if commit.Status == models.StatusConflicted { - color = style.FgRed - text = common.Tr.ConflictLabel - } - youAreHere := color.Sprintf("<-- %s ---", text) + if commit.Status == models.StatusConflicted { + youAreHere := style.FgRed.Sprintf("<-- %s ---", common.Tr.ConflictLabel) mark = fmt.Sprintf("%s ", youAreHere) } else if isMarkedBaseCommit { rebaseFromHere := style.FgYellow.Sprint(common.Tr.MarkedCommitMarker) @@ -505,7 +491,7 @@ func getHashColor( hashColor = style.FgYellow case models.StatusMerged: hashColor = style.FgGreen - case models.StatusRebasing, models.StatusConflicted: + case models.StatusRebasing, models.StatusCherryPickingOrReverting, models.StatusConflicted: hashColor = style.FgBlue case models.StatusReflog: hashColor = style.FgBlue diff --git a/pkg/gui/presentation/commits_test.go b/pkg/gui/presentation/commits_test.go index edf147b9213..58a2c203254 100644 --- a/pkg/gui/presentation/commits_test.go +++ b/pkg/gui/presentation/commits_test.go @@ -40,7 +40,6 @@ func TestGetCommitListDisplayStrings(t *testing.T) { endIdx int showGraph bool bisectInfo *git_commands.BisectInfo - showYouAreHereLabel bool expected string focus bool }{ @@ -223,12 +222,11 @@ func TestGetCommitListDisplayStrings(t *testing.T) { showGraph: true, bisectInfo: git_commands.NewNullBisectInfo(), cherryPickedCommitHashSet: set.New[string](), - showYouAreHereLabel: true, now: time.Date(2020, 1, 1, 0, 0, 0, 0, time.UTC), expected: formatExpected(` hash1 pick commit1 hash2 pick commit2 - hash3 ◯ <-- YOU ARE HERE --- commit3 + hash3 ◯ commit3 hash4 ◯ commit4 hash5 ◯ commit5 `), @@ -247,11 +245,10 @@ func TestGetCommitListDisplayStrings(t *testing.T) { showGraph: true, bisectInfo: git_commands.NewNullBisectInfo(), cherryPickedCommitHashSet: set.New[string](), - showYouAreHereLabel: true, now: time.Date(2020, 1, 1, 0, 0, 0, 0, time.UTC), expected: formatExpected(` hash2 pick commit2 - hash3 ◯ <-- YOU ARE HERE --- commit3 + hash3 ◯ commit3 hash4 ◯ commit4 hash5 ◯ commit5 `), @@ -270,7 +267,6 @@ func TestGetCommitListDisplayStrings(t *testing.T) { showGraph: true, bisectInfo: git_commands.NewNullBisectInfo(), cherryPickedCommitHashSet: set.New[string](), - showYouAreHereLabel: true, now: time.Date(2020, 1, 1, 0, 0, 0, 0, time.UTC), expected: formatExpected(` hash4 ◯ commit4 @@ -291,7 +287,6 @@ func TestGetCommitListDisplayStrings(t *testing.T) { showGraph: true, bisectInfo: git_commands.NewNullBisectInfo(), cherryPickedCommitHashSet: set.New[string](), - showYouAreHereLabel: true, now: time.Date(2020, 1, 1, 0, 0, 0, 0, time.UTC), expected: formatExpected(` hash1 pick commit1 @@ -312,7 +307,6 @@ func TestGetCommitListDisplayStrings(t *testing.T) { showGraph: true, bisectInfo: git_commands.NewNullBisectInfo(), cherryPickedCommitHashSet: set.New[string](), - showYouAreHereLabel: true, now: time.Date(2020, 1, 1, 0, 0, 0, 0, time.UTC), expected: formatExpected(` hash5 ◯ commit5 @@ -332,33 +326,12 @@ func TestGetCommitListDisplayStrings(t *testing.T) { showGraph: true, bisectInfo: git_commands.NewNullBisectInfo(), cherryPickedCommitHashSet: set.New[string](), - showYouAreHereLabel: true, now: time.Date(2020, 1, 1, 0, 0, 0, 0, time.UTC), expected: formatExpected(` hash1 pick commit1 hash2 pick commit2 `), }, - { - testName: "don't show YOU ARE HERE label when not asked for (e.g. in branches panel)", - commits: []*models.Commit{ - {Name: "commit1", Hash: "hash1", Parents: []string{"hash2"}, Action: todo.Pick}, - {Name: "commit2", Hash: "hash2", Parents: []string{"hash3"}}, - {Name: "commit3", Hash: "hash3", Parents: []string{"hash4"}}, - }, - startIdx: 0, - endIdx: 3, - showGraph: true, - bisectInfo: git_commands.NewNullBisectInfo(), - cherryPickedCommitHashSet: set.New[string](), - showYouAreHereLabel: false, - now: time.Date(2020, 1, 1, 0, 0, 0, 0, time.UTC), - expected: formatExpected(` - hash1 pick commit1 - hash2 ◯ commit2 - hash3 ◯ commit3 - `), - }, { testName: "graph in divergence view - all commits visible", commits: []*models.Commit{ @@ -376,7 +349,6 @@ func TestGetCommitListDisplayStrings(t *testing.T) { showGraph: true, bisectInfo: git_commands.NewNullBisectInfo(), cherryPickedCommitHashSet: set.New[string](), - showYouAreHereLabel: false, now: time.Date(2020, 1, 1, 0, 0, 0, 0, time.UTC), expected: formatExpected(` ↓ hash1r ◯ commit1 @@ -406,7 +378,6 @@ func TestGetCommitListDisplayStrings(t *testing.T) { showGraph: true, bisectInfo: git_commands.NewNullBisectInfo(), cherryPickedCommitHashSet: set.New[string](), - showYouAreHereLabel: false, now: time.Date(2020, 1, 1, 0, 0, 0, 0, time.UTC), expected: formatExpected(` ↓ hash3r ◯ │ commit3 @@ -434,7 +405,6 @@ func TestGetCommitListDisplayStrings(t *testing.T) { showGraph: true, bisectInfo: git_commands.NewNullBisectInfo(), cherryPickedCommitHashSet: set.New[string](), - showYouAreHereLabel: false, now: time.Date(2020, 1, 1, 0, 0, 0, 0, time.UTC), expected: formatExpected(` ↓ hash1r ◯ commit1 @@ -461,7 +431,6 @@ func TestGetCommitListDisplayStrings(t *testing.T) { showGraph: true, bisectInfo: git_commands.NewNullBisectInfo(), cherryPickedCommitHashSet: set.New[string](), - showYouAreHereLabel: false, now: time.Date(2020, 1, 1, 0, 0, 0, 0, time.UTC), expected: formatExpected(` ↑ hash2l ⏣─╮ commit2 @@ -487,7 +456,6 @@ func TestGetCommitListDisplayStrings(t *testing.T) { showGraph: true, bisectInfo: git_commands.NewNullBisectInfo(), cherryPickedCommitHashSet: set.New[string](), - showYouAreHereLabel: false, now: time.Date(2020, 1, 1, 0, 0, 0, 0, time.UTC), expected: formatExpected(` ↓ hash1r ◯ commit1 @@ -508,7 +476,6 @@ func TestGetCommitListDisplayStrings(t *testing.T) { showGraph: true, bisectInfo: git_commands.NewNullBisectInfo(), cherryPickedCommitHashSet: set.New[string](), - showYouAreHereLabel: false, now: time.Date(2020, 1, 1, 0, 0, 0, 0, time.UTC), expected: formatExpected(` ↑ hash1l ◯ commit1 @@ -530,7 +497,6 @@ func TestGetCommitListDisplayStrings(t *testing.T) { showGraph: true, bisectInfo: git_commands.NewNullBisectInfo(), cherryPickedCommitHashSet: set.New[string](), - showYouAreHereLabel: false, now: time.Date(2020, 1, 1, 0, 0, 0, 0, time.UTC), expected: formatExpected(` ↓ hash1r ◯ commit1 @@ -596,7 +562,6 @@ func TestGetCommitListDisplayStrings(t *testing.T) { s.endIdx, s.showGraph, s.bisectInfo, - s.showYouAreHereLabel, ) renderedLines, _ := utils.RenderDisplayStrings(result, nil) diff --git a/pkg/gui/types/context.go b/pkg/gui/types/context.go index eea207360ae..8a9bbf25b4a 100644 --- a/pkg/gui/types/context.go +++ b/pkg/gui/types/context.go @@ -105,6 +105,7 @@ type Context interface { HandleFocus(opts OnFocusOpts) HandleFocusLost(opts OnFocusLostOpts) + FocusLine() HandleRender() HandleRenderToMain() } @@ -173,7 +174,6 @@ type IListContext interface { ViewIndexToModelIndex(int) int ModelIndexToViewIndex(int) int - FocusLine() IsListContext() // used for type switch RangeSelectEnabled() bool RenderOnlyVisibleLines() bool diff --git a/pkg/gui/view_helpers.go b/pkg/gui/view_helpers.go index 624d6e25f3c..bf83fd7f355 100644 --- a/pkg/gui/view_helpers.go +++ b/pkg/gui/view_helpers.go @@ -136,5 +136,12 @@ func (gui *Gui) postRefreshUpdate(c types.Context) { if gui.currentViewName() == c.GetViewName() { c.HandleFocus(types.OnFocusOpts{}) + } else { + // The FocusLine call is included in the HandleFocus method which we + // call for focused views above; but we need to call it here for + // non-focused views to ensure that an inactive selection is painted + // correctly, and that integration tests see the up to date selection + // state. + c.FocusLine() } } diff --git a/pkg/i18n/english.go b/pkg/i18n/english.go index ced96cc8a01..ab9f7cdf4cb 100644 --- a/pkg/i18n/english.go +++ b/pkg/i18n/english.go @@ -348,8 +348,11 @@ type TranslationSet struct { PullRequestNoUpstream string ErrorOccurred string NoRoom string - YouAreHere string ConflictLabel string + PendingRebaseTodosSectionHeader string + PendingCherryPicksSectionHeader string + PendingRevertsSectionHeader string + CommitsSectionHeader string YouDied string RewordNotSupported string ChangingThisActionIsNotAllowed string @@ -1417,8 +1420,11 @@ func EnglishTranslationSet() *TranslationSet { PullRequestNoUpstream: "Cannot open a pull request for a branch with no upstream", ErrorOccurred: "An error occurred! Please create an issue at", NoRoom: "Not enough room", - YouAreHere: "YOU ARE HERE", ConflictLabel: "CONFLICT", + PendingRebaseTodosSectionHeader: "Pending rebase todos", + PendingCherryPicksSectionHeader: "Pending cherry-picks", + PendingRevertsSectionHeader: "Pending reverts", + CommitsSectionHeader: "Commits", YouDied: "YOU DIED!", RewordNotSupported: "Rewording commits while interactively rebasing is not currently supported", ChangingThisActionIsNotAllowed: "Changing this kind of rebase todo entry is not allowed", diff --git a/pkg/integration/tests/branch/rebase_and_drop.go b/pkg/integration/tests/branch/rebase_and_drop.go index 88e2e39c632..896d27068a5 100644 --- a/pkg/integration/tests/branch/rebase_and_drop.go +++ b/pkg/integration/tests/branch/rebase_and_drop.go @@ -51,9 +51,11 @@ var RebaseAndDrop = NewIntegrationTest(NewIntegrationTestArgs{ t.Views().Commits(). Focus(). TopLines( + Contains("--- Pending rebase todos ---"), MatchesRegexp(`pick.*to keep`).IsSelected(), MatchesRegexp(`pick.*to remove`), MatchesRegexp(`pick.*CONFLICT.*first change`), + Contains("--- Commits ---"), MatchesRegexp("second-change-branch unrelated change"), MatchesRegexp("second change"), MatchesRegexp("original"), @@ -61,9 +63,11 @@ var RebaseAndDrop = NewIntegrationTest(NewIntegrationTestArgs{ SelectNextItem(). Press(keys.Universal.Remove). TopLines( + Contains("--- Pending rebase todos ---"), MatchesRegexp(`pick.*to keep`), MatchesRegexp(`drop.*to remove`).IsSelected(), MatchesRegexp(`pick.*CONFLICT.*first change`), + Contains("--- Commits ---"), MatchesRegexp("second-change-branch unrelated change"), MatchesRegexp("second change"), MatchesRegexp("original"), diff --git a/pkg/integration/tests/cherry_pick/cherry_pick_during_rebase.go b/pkg/integration/tests/cherry_pick/cherry_pick_during_rebase.go index 1833337548b..bd64a746966 100644 --- a/pkg/integration/tests/cherry_pick/cherry_pick_during_rebase.go +++ b/pkg/integration/tests/cherry_pick/cherry_pick_during_rebase.go @@ -59,8 +59,10 @@ var CherryPickDuringRebase = NewIntegrationTest(NewIntegrationTestArgs{ SelectNextItem(). Press(keys.Universal.Edit). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick CI two"), - Contains(" CI <-- YOU ARE HERE --- one").IsSelected(), + Contains("--- Commits ---"), + Contains(" CI one").IsSelected(), Contains(" CI base"), ). Press(keys.Commits.PasteCommits). @@ -74,8 +76,10 @@ var CherryPickDuringRebase = NewIntegrationTest(NewIntegrationTestArgs{ t.Views().Information().Content(DoesNotContain("commit copied")) }). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick CI two"), - Contains(" CI <-- YOU ARE HERE --- three"), + Contains("--- Commits ---"), + Contains(" CI three"), Contains(" CI one"), Contains(" CI base"), ). diff --git a/pkg/integration/tests/commit/amend_when_there_are_conflicts_and_amend.go b/pkg/integration/tests/commit/amend_when_there_are_conflicts_and_amend.go index c031e0c3da5..acc2f389c14 100644 --- a/pkg/integration/tests/commit/amend_when_there_are_conflicts_and_amend.go +++ b/pkg/integration/tests/commit/amend_when_there_are_conflicts_and_amend.go @@ -29,8 +29,10 @@ var AmendWhenThereAreConflictsAndAmend = NewIntegrationTest(NewIntegrationTestAr t.Views().Commits(). Focus(). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("commit three"), Contains("pick").Contains("<-- CONFLICT --- file1 changed in branch"), + Contains("--- Commits ---"), Contains("commit two"), Contains("file1 changed in master"), Contains("base commit"), diff --git a/pkg/integration/tests/commit/amend_when_there_are_conflicts_and_cancel.go b/pkg/integration/tests/commit/amend_when_there_are_conflicts_and_cancel.go index 12640963110..f7f5ec2e1a7 100644 --- a/pkg/integration/tests/commit/amend_when_there_are_conflicts_and_cancel.go +++ b/pkg/integration/tests/commit/amend_when_there_are_conflicts_and_cancel.go @@ -33,8 +33,10 @@ var AmendWhenThereAreConflictsAndCancel = NewIntegrationTest(NewIntegrationTestA t.Views().Commits(). Focus(). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("commit three"), Contains("pick").Contains("<-- CONFLICT --- file1 changed in branch"), + Contains("--- Commits ---"), Contains("commit two"), Contains("file1 changed in master"), Contains("base commit"), diff --git a/pkg/integration/tests/commit/revert_with_conflict_multiple_commits.go b/pkg/integration/tests/commit/revert_with_conflict_multiple_commits.go index ad3761ba238..e702c79b3c4 100644 --- a/pkg/integration/tests/commit/revert_with_conflict_multiple_commits.go +++ b/pkg/integration/tests/commit/revert_with_conflict_multiple_commits.go @@ -44,8 +44,10 @@ var RevertWithConflictMultipleCommits = NewIntegrationTest(NewIntegrationTestArg Confirm() }). Lines( + Contains("--- Pending reverts ---"), Contains("revert").Contains("CI unrelated change"), Contains("revert").Contains("CI <-- CONFLICT --- add first line"), + Contains("--- Commits ---"), Contains("CI ◯ add second line"), Contains("CI ◯ add first line"), Contains("CI ◯ unrelated change"), diff --git a/pkg/integration/tests/commit/revert_with_conflict_single_commit.go b/pkg/integration/tests/commit/revert_with_conflict_single_commit.go index 48095246420..4d98fdfe5ca 100644 --- a/pkg/integration/tests/commit/revert_with_conflict_single_commit.go +++ b/pkg/integration/tests/commit/revert_with_conflict_single_commit.go @@ -39,7 +39,9 @@ var RevertWithConflictSingleCommit = NewIntegrationTest(NewIntegrationTestArgs{ Confirm() }). Lines( + Contains("--- Pending reverts ---"), Contains("revert").Contains("CI <-- CONFLICT --- add first line"), + Contains("--- Commits ---"), Contains("CI ◯ add second line"), Contains("CI ◯ add first line"), Contains("CI ◯ add empty file"), diff --git a/pkg/integration/tests/commit/shared.go b/pkg/integration/tests/commit/shared.go index 17b06108d9e..918197aaf3c 100644 --- a/pkg/integration/tests/commit/shared.go +++ b/pkg/integration/tests/commit/shared.go @@ -43,8 +43,10 @@ func doTheRebaseForAmendTests(t *TestDriver, keys config.KeybindingConfig) { t.Views().Commits(). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("commit three"), Contains("pick").Contains("<-- CONFLICT --- file1 changed in branch"), + Contains("--- Commits ---"), Contains("commit two"), Contains("file1 changed in master"), Contains("base commit"), diff --git a/pkg/integration/tests/interactive_rebase/advanced_interactive_rebase.go b/pkg/integration/tests/interactive_rebase/advanced_interactive_rebase.go index 771b2e164ee..1162a20c7ef 100644 --- a/pkg/integration/tests/interactive_rebase/advanced_interactive_rebase.go +++ b/pkg/integration/tests/interactive_rebase/advanced_interactive_rebase.go @@ -45,20 +45,26 @@ var AdvancedInteractiveRebase = NewIntegrationTest(NewIntegrationTestArgs{ t.Views().Commits(). IsFocused(). Lines( + Contains("--- Pending rebase todos ---"), Contains(TOP_COMMIT), - Contains(BASE_COMMIT).Contains("YOU ARE HERE"), + Contains("--- Commits ---"), + Contains(BASE_COMMIT), ). NavigateToLine(Contains(TOP_COMMIT)). Press(keys.Universal.Edit). Lines( + Contains("--- Pending rebase todos ---"), Contains(TOP_COMMIT).Contains("edit"), - Contains(BASE_COMMIT).Contains("YOU ARE HERE"), + Contains("--- Commits ---"), + Contains(BASE_COMMIT), ). Tap(func() { t.Common().ContinueRebase() }). Lines( - Contains(TOP_COMMIT).Contains("YOU ARE HERE"), + Contains("--- Pending rebase todos ---"), + Contains("--- Commits ---"), + Contains(TOP_COMMIT), Contains(BASE_COMMIT), ) }, diff --git a/pkg/integration/tests/interactive_rebase/amend_commit_with_conflict.go b/pkg/integration/tests/interactive_rebase/amend_commit_with_conflict.go index 7cf49ba63eb..ef01739dc8f 100644 --- a/pkg/integration/tests/interactive_rebase/amend_commit_with_conflict.go +++ b/pkg/integration/tests/interactive_rebase/amend_commit_with_conflict.go @@ -34,8 +34,10 @@ var AmendCommitWithConflict = NewIntegrationTest(NewIntegrationTestArgs{ t.Common().AcknowledgeConflicts() }). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("three"), Contains("fixup").Contains("<-- CONFLICT --- fixup! two"), + Contains("--- Commits ---"), Contains("two"), Contains("one"), ) @@ -66,7 +68,9 @@ var AmendCommitWithConflict = NewIntegrationTest(NewIntegrationTestArgs{ t.Views().Commits(). Lines( + Contains("--- Pending rebase todos ---"), Contains("<-- CONFLICT --- three"), + Contains("--- Commits ---"), Contains("two"), Contains("one"), ) diff --git a/pkg/integration/tests/interactive_rebase/amend_head_commit_during_rebase.go b/pkg/integration/tests/interactive_rebase/amend_head_commit_during_rebase.go index 10e7f06394f..66be297f06f 100644 --- a/pkg/integration/tests/interactive_rebase/amend_head_commit_during_rebase.go +++ b/pkg/integration/tests/interactive_rebase/amend_head_commit_during_rebase.go @@ -24,8 +24,10 @@ var AmendHeadCommitDuringRebase = NewIntegrationTest(NewIntegrationTestArgs{ NavigateToLine(Contains("commit 02")). Press(keys.Universal.Edit). Lines( + Contains("--- Pending rebase todos ---"), Contains("commit 03"), - Contains("<-- YOU ARE HERE --- commit 02").IsSelected(), + Contains("--- Commits ---"), + Contains("commit 02").IsSelected(), Contains("commit 01"), ) @@ -48,8 +50,10 @@ var AmendHeadCommitDuringRebase = NewIntegrationTest(NewIntegrationTestArgs{ Confirm() }). Lines( + Contains("--- Pending rebase todos ---"), Contains("commit 03"), - Contains("<-- YOU ARE HERE --- commit 02").IsSelected(), + Contains("--- Commits ---"), + Contains("commit 02").IsSelected(), Contains("commit 01"), ) diff --git a/pkg/integration/tests/interactive_rebase/amend_non_head_commit_during_rebase.go b/pkg/integration/tests/interactive_rebase/amend_non_head_commit_during_rebase.go index a0d0f066e50..1216655e8d9 100644 --- a/pkg/integration/tests/interactive_rebase/amend_non_head_commit_during_rebase.go +++ b/pkg/integration/tests/interactive_rebase/amend_non_head_commit_during_rebase.go @@ -24,8 +24,10 @@ var AmendNonHeadCommitDuringRebase = NewIntegrationTest(NewIntegrationTestArgs{ NavigateToLine(Contains("commit 02")). Press(keys.Universal.Edit). Lines( + Contains("--- Pending rebase todos ---"), Contains("commit 03"), - Contains("<-- YOU ARE HERE --- commit 02"), + Contains("--- Commits ---"), + Contains("commit 02"), Contains("commit 01"), ) diff --git a/pkg/integration/tests/interactive_rebase/delete_update_ref_todo.go b/pkg/integration/tests/interactive_rebase/delete_update_ref_todo.go index 9bb216cfe2a..4ae20160f81 100644 --- a/pkg/integration/tests/interactive_rebase/delete_update_ref_todo.go +++ b/pkg/integration/tests/interactive_rebase/delete_update_ref_todo.go @@ -26,13 +26,15 @@ var DeleteUpdateRefTodo = NewIntegrationTest(NewIntegrationTestArgs{ NavigateToLine(Contains("commit 01")). Press(keys.Universal.Edit). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("CI commit 06"), Contains("pick").Contains("CI commit 05"), Contains("pick").Contains("CI commit 04"), Contains("update-ref").Contains("branch1"), Contains("pick").Contains("CI commit 03"), Contains("pick").Contains("CI commit 02"), - Contains("CI ◯ <-- YOU ARE HERE --- commit 01"), + Contains("--- Commits ---"), + Contains("CI ◯ commit 01"), ). NavigateToLine(Contains("update-ref")). Press(keys.Universal.Remove). @@ -43,12 +45,14 @@ var DeleteUpdateRefTodo = NewIntegrationTest(NewIntegrationTestArgs{ Confirm() }). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("CI commit 06"), Contains("pick").Contains("CI commit 05"), Contains("pick").Contains("CI commit 04"), Contains("pick").Contains("CI commit 03").IsSelected(), Contains("pick").Contains("CI commit 02"), - Contains("CI ◯ <-- YOU ARE HERE --- commit 01"), + Contains("--- Commits ---"), + Contains("CI ◯ commit 01"), ). NavigateToLine(Contains("commit 02")). Press(keys.Universal.Remove). diff --git a/pkg/integration/tests/interactive_rebase/dont_show_branch_heads_for_todo_items.go b/pkg/integration/tests/interactive_rebase/dont_show_branch_heads_for_todo_items.go index 7c2599f0b8b..b0192c59fa8 100644 --- a/pkg/integration/tests/interactive_rebase/dont_show_branch_heads_for_todo_items.go +++ b/pkg/integration/tests/interactive_rebase/dont_show_branch_heads_for_todo_items.go @@ -41,13 +41,15 @@ var DontShowBranchHeadsForTodoItems = NewIntegrationTest(NewIntegrationTestArgs{ NavigateToLine(Contains("commit 04")). Press(keys.Universal.Edit). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("CI commit 09"), Contains("pick").Contains("CI commit 08"), Contains("pick").Contains("CI commit 07"), Contains("update-ref").Contains("branch2"), Contains("pick").Contains("CI commit 06"), // no star on this entry, even though branch2 points to it Contains("pick").Contains("CI commit 05"), - Contains("CI <-- YOU ARE HERE --- commit 04"), + Contains("--- Commits ---"), + Contains("CI commit 04"), Contains("CI commit 03"), Contains("CI * commit 02"), // this star is fine though Contains("CI commit 01"), diff --git a/pkg/integration/tests/interactive_rebase/drop_todo_commit_with_update_ref.go b/pkg/integration/tests/interactive_rebase/drop_todo_commit_with_update_ref.go index 8510055af92..3dd44baaf0c 100644 --- a/pkg/integration/tests/interactive_rebase/drop_todo_commit_with_update_ref.go +++ b/pkg/integration/tests/interactive_rebase/drop_todo_commit_with_update_ref.go @@ -39,13 +39,15 @@ var DropTodoCommitWithUpdateRef = NewIntegrationTest(NewIntegrationTestArgs{ NavigateToLine(Contains("commit 02")). Press(keys.Universal.Edit). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("CI commit 07"), Contains("pick").Contains("CI commit 06"), Contains("pick").Contains("CI commit 05"), Contains("update-ref").Contains("branch1").DoesNotContain("*"), Contains("pick").Contains("CI commit 04"), Contains("pick").Contains("CI commit 03"), - Contains("<-- YOU ARE HERE --- commit 02").IsSelected(), + Contains("--- Commits ---"), + Contains("CI commit 02").IsSelected(), Contains("CI commit 01"), ). Tap(func() { diff --git a/pkg/integration/tests/interactive_rebase/edit_and_auto_amend.go b/pkg/integration/tests/interactive_rebase/edit_and_auto_amend.go index 8c569ede622..2107c8a5872 100644 --- a/pkg/integration/tests/interactive_rebase/edit_and_auto_amend.go +++ b/pkg/integration/tests/interactive_rebase/edit_and_auto_amend.go @@ -25,8 +25,10 @@ var EditAndAutoAmend = NewIntegrationTest(NewIntegrationTestArgs{ NavigateToLine(Contains("commit 02")). Press(keys.Universal.Edit). Lines( + Contains("--- Pending rebase todos ---"), Contains("commit 03"), - MatchesRegexp("YOU ARE HERE.*commit 02").IsSelected(), + Contains("--- Commits ---"), + Contains("commit 02").IsSelected(), Contains("commit 01"), ) diff --git a/pkg/integration/tests/interactive_rebase/edit_first_commit.go b/pkg/integration/tests/interactive_rebase/edit_first_commit.go index f6ea49ed1aa..f09b7f27d27 100644 --- a/pkg/integration/tests/interactive_rebase/edit_first_commit.go +++ b/pkg/integration/tests/interactive_rebase/edit_first_commit.go @@ -24,8 +24,10 @@ var EditFirstCommit = NewIntegrationTest(NewIntegrationTestArgs{ NavigateToLine(Contains("commit 01")). Press(keys.Universal.Edit). Lines( + Contains("--- Pending rebase todos ---"), Contains("commit 02"), - MatchesRegexp("YOU ARE HERE.*commit 01").IsSelected(), + Contains("--- Commits ---"), + Contains("commit 01").IsSelected(), ). Tap(func() { t.Common().ContinueRebase() diff --git a/pkg/integration/tests/interactive_rebase/edit_last_commit_of_stacked_branch.go b/pkg/integration/tests/interactive_rebase/edit_last_commit_of_stacked_branch.go index 35d89e8e989..71c66799a23 100644 --- a/pkg/integration/tests/interactive_rebase/edit_last_commit_of_stacked_branch.go +++ b/pkg/integration/tests/interactive_rebase/edit_last_commit_of_stacked_branch.go @@ -37,10 +37,12 @@ var EditLastCommitOfStackedBranch = NewIntegrationTest(NewIntegrationTestArgs{ NavigateToLine(Contains("commit 03")). Press(keys.Universal.Edit). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("CI commit 05"), Contains("pick").Contains("CI commit 04"), Contains("update-ref").Contains("branch1"), - Contains("<-- YOU ARE HERE --- * commit 03").IsSelected(), + Contains("--- Commits ---"), + Contains("CI * commit 03").IsSelected(), Contains("CI commit 02"), Contains("CI commit 01"), ) diff --git a/pkg/integration/tests/interactive_rebase/edit_non_todo_commit_during_rebase.go b/pkg/integration/tests/interactive_rebase/edit_non_todo_commit_during_rebase.go index 88417ccddda..6a21412de90 100644 --- a/pkg/integration/tests/interactive_rebase/edit_non_todo_commit_during_rebase.go +++ b/pkg/integration/tests/interactive_rebase/edit_non_todo_commit_during_rebase.go @@ -23,7 +23,9 @@ var EditNonTodoCommitDuringRebase = NewIntegrationTest(NewIntegrationTestArgs{ ). Press(keys.Universal.Edit). Lines( - Contains("<-- YOU ARE HERE --- commit 02"), + Contains("--- Pending rebase todos ---"), + Contains("--- Commits ---"), + Contains("commit 02"), Contains("commit 01"), ). NavigateToLine(Contains("commit 01")). diff --git a/pkg/integration/tests/interactive_rebase/edit_range_select_down_to_merge_outside_rebase.go b/pkg/integration/tests/interactive_rebase/edit_range_select_down_to_merge_outside_rebase.go index 8ef1446fbad..ffb92a4c50f 100644 --- a/pkg/integration/tests/interactive_rebase/edit_range_select_down_to_merge_outside_rebase.go +++ b/pkg/integration/tests/interactive_rebase/edit_range_select_down_to_merge_outside_rebase.go @@ -27,9 +27,11 @@ var EditRangeSelectDownToMergeOutsideRebase = NewIntegrationTest(NewIntegrationT Press(keys.Universal.RangeSelectDown). Press(keys.Universal.Edit). Lines( + Contains("--- Pending rebase todos ---"), Contains("edit CI commit 02").IsSelected(), Contains("edit CI commit 01").IsSelected(), - Contains(" CI ⏣─╮ <-- YOU ARE HERE --- Merge branch 'second-change-branch' into first-change-branch").IsSelected(), + Contains("--- Commits ---").IsSelected(), + Contains(" CI ⏣─╮ Merge branch 'second-change-branch' into first-change-branch").IsSelected(), Contains(" CI │ ◯ * second-change-branch unrelated change"), Contains(" CI │ ◯ second change"), Contains(" CI ◯ │ first change"), diff --git a/pkg/integration/tests/interactive_rebase/edit_range_select_outside_rebase.go b/pkg/integration/tests/interactive_rebase/edit_range_select_outside_rebase.go index d12a9c77d35..93baafbabc0 100644 --- a/pkg/integration/tests/interactive_rebase/edit_range_select_outside_rebase.go +++ b/pkg/integration/tests/interactive_rebase/edit_range_select_outside_rebase.go @@ -37,12 +37,14 @@ var EditRangeSelectOutsideRebase = NewIntegrationTest(NewIntegrationTestArgs{ ). Press(keys.Universal.Edit). Lines( + Contains("--- Pending rebase todos ---"), Contains("merge CI Merge branch 'second-change-branch' into first-change-branch").IsSelected(), Contains("edit CI first change").IsSelected(), Contains("edit CI * second-change-branch unrelated change").IsSelected(), Contains("edit CI second change").IsSelected(), Contains("edit CI * original").IsSelected(), - Contains(" CI ◯ <-- YOU ARE HERE --- three").IsSelected(), + Contains("--- Commits ---").IsSelected(), + Contains(" CI ◯ three").IsSelected(), Contains(" CI ◯ two"), Contains(" CI ◯ one"), ) diff --git a/pkg/integration/tests/interactive_rebase/edit_the_confl_commit.go b/pkg/integration/tests/interactive_rebase/edit_the_confl_commit.go index 17d3ffe0e0a..5e03acdd5e8 100644 --- a/pkg/integration/tests/interactive_rebase/edit_the_confl_commit.go +++ b/pkg/integration/tests/interactive_rebase/edit_the_confl_commit.go @@ -32,8 +32,10 @@ var EditTheConflCommit = NewIntegrationTest(NewIntegrationTestArgs{ }). Focus(). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("commit two"), Contains("pick").Contains("<-- CONFLICT --- commit three"), + Contains("--- Commits ---"), Contains("commit one"), ). NavigateToLine(Contains("<-- CONFLICT --- commit three")). diff --git a/pkg/integration/tests/interactive_rebase/interactive_rebase_of_copied_branch.go b/pkg/integration/tests/interactive_rebase/interactive_rebase_of_copied_branch.go index 402d54b52e7..8f98e999bef 100644 --- a/pkg/integration/tests/interactive_rebase/interactive_rebase_of_copied_branch.go +++ b/pkg/integration/tests/interactive_rebase/interactive_rebase_of_copied_branch.go @@ -32,10 +32,12 @@ var InteractiveRebaseOfCopiedBranch = NewIntegrationTest(NewIntegrationTestArgs{ NavigateToLine(Contains("commit 01")). Press(keys.Universal.Edit). Lines( + Contains("--- Pending rebase todos ---"), // No update-ref todo for branch1 here, even though command-line git would have added it Contains("pick").Contains("CI commit 03"), Contains("pick").Contains("CI commit 02"), - Contains("CI <-- YOU ARE HERE --- commit 01"), + Contains("--- Commits ---"), + Contains("CI commit 01"), ) }, }) diff --git a/pkg/integration/tests/interactive_rebase/interactive_rebase_with_conflict_for_edit_command.go b/pkg/integration/tests/interactive_rebase/interactive_rebase_with_conflict_for_edit_command.go index fd09dfe3c83..11596e75896 100644 --- a/pkg/integration/tests/interactive_rebase/interactive_rebase_with_conflict_for_edit_command.go +++ b/pkg/integration/tests/interactive_rebase/interactive_rebase_with_conflict_for_edit_command.go @@ -52,7 +52,9 @@ var InteractiveRebaseWithConflictForEditCommand = NewIntegrationTest(NewIntegrat t.Views().Commits(). Lines( + Contains("--- Pending rebase todos ---"), Contains("edit").Contains("<-- CONFLICT --- this will conflict").IsSelected(), + Contains("--- Commits ---"), Contains("commit 03"), Contains("commit 02"), Contains("commit 01"), diff --git a/pkg/integration/tests/interactive_rebase/mid_rebase_range_select.go b/pkg/integration/tests/interactive_rebase/mid_rebase_range_select.go index c94b6329573..cb96b830888 100644 --- a/pkg/integration/tests/interactive_rebase/mid_rebase_range_select.go +++ b/pkg/integration/tests/interactive_rebase/mid_rebase_range_select.go @@ -24,74 +24,88 @@ var MidRebaseRangeSelect = NewIntegrationTest(NewIntegrationTestArgs{ // Start a rebase Press(keys.Universal.Edit). TopLines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("commit 10"), Contains("pick").Contains("commit 09"), Contains("pick").Contains("commit 08"), Contains("pick").Contains("commit 07"), Contains("pick").Contains("commit 06"), - Contains("<-- YOU ARE HERE --- commit 05").IsSelected(), + Contains("--- Commits ---"), + Contains("commit 05").IsSelected(), Contains("commit 04"), ). SelectPreviousItem(). // perform various actions on a range of commits Press(keys.Universal.RangeSelectUp). TopLines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("commit 10"), Contains("pick").Contains("commit 09"), Contains("pick").Contains("commit 08"), Contains("pick").Contains("commit 07").IsSelected(), Contains("pick").Contains("commit 06").IsSelected(), - Contains("<-- YOU ARE HERE --- commit 05"), + Contains("--- Commits ---"), + Contains("commit 05"), Contains("commit 04"), ). Press(keys.Commits.MarkCommitAsFixup). TopLines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("commit 10"), Contains("pick").Contains("commit 09"), Contains("pick").Contains("commit 08"), Contains("fixup").Contains("commit 07").IsSelected(), Contains("fixup").Contains("commit 06").IsSelected(), - Contains("<-- YOU ARE HERE --- commit 05"), + Contains("--- Commits ---"), + Contains("commit 05"), Contains("commit 04"), ). Press(keys.Commits.PickCommit). TopLines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("commit 10"), Contains("pick").Contains("commit 09"), Contains("pick").Contains("commit 08"), Contains("pick").Contains("commit 07").IsSelected(), Contains("pick").Contains("commit 06").IsSelected(), - Contains("<-- YOU ARE HERE --- commit 05"), + Contains("--- Commits ---"), + Contains("commit 05"), Contains("commit 04"), ). Press(keys.Universal.Edit). TopLines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("commit 10"), Contains("pick").Contains("commit 09"), Contains("pick").Contains("commit 08"), Contains("edit").Contains("commit 07").IsSelected(), Contains("edit").Contains("commit 06").IsSelected(), - Contains("<-- YOU ARE HERE --- commit 05"), + Contains("--- Commits ---"), + Contains("commit 05"), Contains("commit 04"), ). Press(keys.Commits.SquashDown). TopLines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("commit 10"), Contains("pick").Contains("commit 09"), Contains("pick").Contains("commit 08"), Contains("squash").Contains("commit 07").IsSelected(), Contains("squash").Contains("commit 06").IsSelected(), - Contains("<-- YOU ARE HERE --- commit 05"), + Contains("--- Commits ---"), + Contains("commit 05"), Contains("commit 04"), ). Press(keys.Commits.MoveDownCommit). TopLines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("commit 10"), Contains("pick").Contains("commit 09"), Contains("pick").Contains("commit 08"), Contains("squash").Contains("commit 07").IsSelected(), Contains("squash").Contains("commit 06").IsSelected(), - Contains("<-- YOU ARE HERE --- commit 05"), + Contains("--- Commits ---"), + Contains("commit 05"), Contains("commit 04"), ). Tap(func() { @@ -99,32 +113,38 @@ var MidRebaseRangeSelect = NewIntegrationTest(NewIntegrationTestArgs{ }). Press(keys.Commits.MoveUpCommit). TopLines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("commit 10"), Contains("pick").Contains("commit 09"), Contains("squash").Contains("commit 07").IsSelected(), Contains("squash").Contains("commit 06").IsSelected(), Contains("pick").Contains("commit 08"), - Contains("<-- YOU ARE HERE --- commit 05"), + Contains("--- Commits ---"), + Contains("commit 05"), Contains("commit 04"), ). Press(keys.Commits.MoveUpCommit). TopLines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("commit 10"), Contains("squash").Contains("commit 07").IsSelected(), Contains("squash").Contains("commit 06").IsSelected(), Contains("pick").Contains("commit 09"), Contains("pick").Contains("commit 08"), - Contains("<-- YOU ARE HERE --- commit 05"), + Contains("--- Commits ---"), + Contains("commit 05"), Contains("commit 04"), ). Press(keys.Commits.MoveUpCommit). TopLines( + Contains("--- Pending rebase todos ---"), Contains("squash").Contains("commit 07").IsSelected(), Contains("squash").Contains("commit 06").IsSelected(), Contains("pick").Contains("commit 10"), Contains("pick").Contains("commit 09"), Contains("pick").Contains("commit 08"), - Contains("<-- YOU ARE HERE --- commit 05"), + Contains("--- Commits ---"), + Contains("commit 05"), Contains("commit 04"), ). Press(keys.Commits.MoveUpCommit). @@ -132,12 +152,14 @@ var MidRebaseRangeSelect = NewIntegrationTest(NewIntegrationTestArgs{ t.ExpectToast(Contains("Disabled: Cannot move any further")) }). TopLines( + Contains("--- Pending rebase todos ---"), Contains("squash").Contains("commit 07").IsSelected(), Contains("squash").Contains("commit 06").IsSelected(), Contains("pick").Contains("commit 10"), Contains("pick").Contains("commit 09"), Contains("pick").Contains("commit 08"), - Contains("<-- YOU ARE HERE --- commit 05"), + Contains("--- Commits ---"), + Contains("commit 05"), Contains("commit 04"), ). // Verify we can't perform an action on a range that includes both @@ -145,12 +167,14 @@ var MidRebaseRangeSelect = NewIntegrationTest(NewIntegrationTestArgs{ NavigateToLine(Contains("commit 08")). Press(keys.Universal.RangeSelectDown). TopLines( + Contains("--- Pending rebase todos ---"), Contains("squash").Contains("commit 07"), Contains("squash").Contains("commit 06"), Contains("pick").Contains("commit 10"), Contains("pick").Contains("commit 09"), Contains("pick").Contains("commit 08").IsSelected(), - Contains("<-- YOU ARE HERE --- commit 05").IsSelected(), + Contains("--- Commits ---").IsSelected(), + Contains("commit 05").IsSelected(), Contains("commit 04"), ). Press(keys.Commits.MarkCommitAsFixup). @@ -158,12 +182,14 @@ var MidRebaseRangeSelect = NewIntegrationTest(NewIntegrationTestArgs{ t.ExpectToast(Contains("Disabled: When rebasing, this action only works on a selection of TODO commits.")) }). TopLines( + Contains("--- Pending rebase todos ---"), Contains("squash").Contains("commit 07"), Contains("squash").Contains("commit 06"), Contains("pick").Contains("commit 10"), Contains("pick").Contains("commit 09"), Contains("pick").Contains("commit 08").IsSelected(), - Contains("<-- YOU ARE HERE --- commit 05").IsSelected(), + Contains("--- Commits ---").IsSelected(), + Contains("commit 05").IsSelected(), Contains("commit 04"), ). // continue the rebase diff --git a/pkg/integration/tests/interactive_rebase/move_in_rebase.go b/pkg/integration/tests/interactive_rebase/move_in_rebase.go index 48b74a7a4c5..1cc9dd785f3 100644 --- a/pkg/integration/tests/interactive_rebase/move_in_rebase.go +++ b/pkg/integration/tests/interactive_rebase/move_in_rebase.go @@ -25,25 +25,31 @@ var MoveInRebase = NewIntegrationTest(NewIntegrationTestArgs{ NavigateToLine(Contains("commit 01")). Press(keys.Universal.Edit). Lines( + Contains("--- Pending rebase todos ---"), Contains("commit 04"), Contains("commit 03"), Contains("commit 02"), - Contains("YOU ARE HERE").Contains("commit 01").IsSelected(), + Contains("--- Commits ---"), + Contains("commit 01").IsSelected(), ). SelectPreviousItem(). Press(keys.Commits.MoveUpCommit). Lines( + Contains("--- Pending rebase todos ---"), Contains("commit 04"), Contains("commit 02").IsSelected(), Contains("commit 03"), - Contains("YOU ARE HERE").Contains("commit 01"), + Contains("--- Commits ---"), + Contains("commit 01"), ). Press(keys.Commits.MoveUpCommit). Lines( + Contains("--- Pending rebase todos ---"), Contains("commit 02").IsSelected(), Contains("commit 04"), Contains("commit 03"), - Contains("YOU ARE HERE").Contains("commit 01"), + Contains("--- Commits ---"), + Contains("commit 01"), ). // assert we can't move past the top Press(keys.Commits.MoveUpCommit). @@ -51,24 +57,30 @@ var MoveInRebase = NewIntegrationTest(NewIntegrationTestArgs{ t.ExpectToast(Contains("Disabled: Cannot move any further")) }). Lines( + Contains("--- Pending rebase todos ---"), Contains("commit 02").IsSelected(), Contains("commit 04"), Contains("commit 03"), - Contains("YOU ARE HERE").Contains("commit 01"), + Contains("--- Commits ---"), + Contains("commit 01"), ). Press(keys.Commits.MoveDownCommit). Lines( + Contains("--- Pending rebase todos ---"), Contains("commit 04"), Contains("commit 02").IsSelected(), Contains("commit 03"), - Contains("YOU ARE HERE").Contains("commit 01"), + Contains("--- Commits ---"), + Contains("commit 01"), ). Press(keys.Commits.MoveDownCommit). Lines( + Contains("--- Pending rebase todos ---"), Contains("commit 04"), Contains("commit 03"), Contains("commit 02").IsSelected(), - Contains("YOU ARE HERE").Contains("commit 01"), + Contains("--- Commits ---"), + Contains("commit 01"), ). // assert we can't move past the bottom Press(keys.Commits.MoveDownCommit). @@ -76,18 +88,22 @@ var MoveInRebase = NewIntegrationTest(NewIntegrationTestArgs{ t.ExpectToast(Contains("Disabled: Cannot move any further")) }). Lines( + Contains("--- Pending rebase todos ---"), Contains("commit 04"), Contains("commit 03"), Contains("commit 02").IsSelected(), - Contains("YOU ARE HERE").Contains("commit 01"), + Contains("--- Commits ---"), + Contains("commit 01"), ). // move it back up one so that we land in a different order than we started with Press(keys.Commits.MoveUpCommit). Lines( + Contains("--- Pending rebase todos ---"), Contains("commit 04"), Contains("commit 02").IsSelected(), Contains("commit 03"), - Contains("YOU ARE HERE").Contains("commit 01"), + Contains("--- Commits ---"), + Contains("commit 01"), ). Tap(func() { t.Common().ContinueRebase() @@ -96,7 +112,7 @@ var MoveInRebase = NewIntegrationTest(NewIntegrationTestArgs{ Contains("commit 04"), Contains("commit 02").IsSelected(), Contains("commit 03"), - DoesNotContain("YOU ARE HERE").Contains("commit 01"), + Contains("commit 01"), ) }, }) diff --git a/pkg/integration/tests/interactive_rebase/move_update_ref_todo.go b/pkg/integration/tests/interactive_rebase/move_update_ref_todo.go index 3dbfcd9cb90..00f4ba11f5d 100644 --- a/pkg/integration/tests/interactive_rebase/move_update_ref_todo.go +++ b/pkg/integration/tests/interactive_rebase/move_update_ref_todo.go @@ -26,25 +26,29 @@ var MoveUpdateRefTodo = NewIntegrationTest(NewIntegrationTestArgs{ NavigateToLine(Contains("commit 01")). Press(keys.Universal.Edit). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("CI commit 06"), Contains("pick").Contains("CI commit 05"), Contains("pick").Contains("CI commit 04"), Contains("update-ref").Contains("branch1"), Contains("pick").Contains("CI commit 03"), Contains("pick").Contains("CI commit 02"), - Contains("CI ◯ <-- YOU ARE HERE --- commit 01"), + Contains("--- Commits ---"), + Contains("CI ◯ commit 01"), ). NavigateToLine(Contains("update-ref")). Press(keys.Commits.MoveUpCommit). Press(keys.Commits.MoveUpCommit). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("CI commit 06"), Contains("update-ref").Contains("branch1"), Contains("pick").Contains("CI commit 05"), Contains("pick").Contains("CI commit 04"), Contains("pick").Contains("CI commit 03"), Contains("pick").Contains("CI commit 02"), - Contains("CI ◯ <-- YOU ARE HERE --- commit 01"), + Contains("--- Commits ---"), + Contains("CI ◯ commit 01"), ). Tap(func() { t.Common().ContinueRebase() diff --git a/pkg/integration/tests/interactive_rebase/pick_rescheduled.go b/pkg/integration/tests/interactive_rebase/pick_rescheduled.go index bd0f385f939..af948b7cd13 100644 --- a/pkg/integration/tests/interactive_rebase/pick_rescheduled.go +++ b/pkg/integration/tests/interactive_rebase/pick_rescheduled.go @@ -26,9 +26,11 @@ var PickRescheduled = NewIntegrationTest(NewIntegrationTestArgs{ NavigateToLine(Contains("one")). Press(keys.Universal.Edit). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("three"), Contains("pick").Contains("two"), - Contains("<-- YOU ARE HERE --- one").IsSelected(), + Contains("--- Commits ---"), + Contains("one").IsSelected(), ). Tap(func() { t.Shell().CreateFile("file3", "other content\n") @@ -39,8 +41,10 @@ var PickRescheduled = NewIntegrationTest(NewIntegrationTestArgs{ Confirm() }). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("three"), - Contains("<-- YOU ARE HERE --- two"), + Contains("--- Commits ---"), + Contains("two"), Contains("one"), ) }, diff --git a/pkg/integration/tests/interactive_rebase/quick_start.go b/pkg/integration/tests/interactive_rebase/quick_start.go index d0454d6cf74..07baa061608 100644 --- a/pkg/integration/tests/interactive_rebase/quick_start.go +++ b/pkg/integration/tests/interactive_rebase/quick_start.go @@ -73,9 +73,11 @@ var QuickStart = NewIntegrationTest(NewIntegrationTestArgs{ // Verify quick start picks the last commit on the main branch Press(keys.Commits.StartInteractiveRebase). Lines( + Contains("--- Pending rebase todos ---"), Contains("feature-branch two").IsSelected(), Contains("feature-branch one"), - Contains("last main commit").Contains("YOU ARE HERE"), + Contains("--- Commits ---"), + Contains("last main commit"), Contains("initial commit"), ). // Try again, verify we fail because we're already rebasing @@ -104,8 +106,10 @@ var QuickStart = NewIntegrationTest(NewIntegrationTestArgs{ ). Press(keys.Commits.StartInteractiveRebase). Lines( + Contains("--- Pending rebase todos ---"), Contains("branch-with-merge three").IsSelected(), - Contains("Merge branch 'branch-to-merge'").Contains("YOU ARE HERE"), + Contains("--- Commits ---"), + Contains("Merge branch 'branch-to-merge'"), Contains("branch-to-merge two"), Contains("branch-to-merge one"), Contains("branch-with-merge two"), diff --git a/pkg/integration/tests/interactive_rebase/quick_start_keep_selection.go b/pkg/integration/tests/interactive_rebase/quick_start_keep_selection.go index e17d59fc38b..d57be84b509 100644 --- a/pkg/integration/tests/interactive_rebase/quick_start_keep_selection.go +++ b/pkg/integration/tests/interactive_rebase/quick_start_keep_selection.go @@ -39,6 +39,7 @@ var QuickStartKeepSelection = NewIntegrationTest(NewIntegrationTestArgs{ NavigateToLine(Contains("commit 02")). Press(keys.Commits.StartInteractiveRebase). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("CI commit 07"), Contains("pick").Contains("CI commit 06"), Contains("pick").Contains("CI commit 05"), @@ -46,7 +47,8 @@ var QuickStartKeepSelection = NewIntegrationTest(NewIntegrationTestArgs{ Contains("pick").Contains("CI commit 04"), Contains("pick").Contains("CI commit 03"), Contains("CI commit 02").IsSelected(), - Contains("CI <-- YOU ARE HERE --- commit 01"), + Contains("--- Commits ---"), + Contains("CI commit 01"), ) }, }) diff --git a/pkg/integration/tests/interactive_rebase/quick_start_keep_selection_range.go b/pkg/integration/tests/interactive_rebase/quick_start_keep_selection_range.go index 12c2a87aac8..6b2fe47173e 100644 --- a/pkg/integration/tests/interactive_rebase/quick_start_keep_selection_range.go +++ b/pkg/integration/tests/interactive_rebase/quick_start_keep_selection_range.go @@ -43,6 +43,7 @@ var QuickStartKeepSelectionRange = NewIntegrationTest(NewIntegrationTestArgs{ ). Press(keys.Commits.StartInteractiveRebase). Lines( + Contains("--- Pending rebase todos ---"), Contains("CI commit 07"), Contains("CI commit 06"), Contains("update-ref").Contains("branch2"), @@ -51,7 +52,8 @@ var QuickStartKeepSelectionRange = NewIntegrationTest(NewIntegrationTestArgs{ Contains("update-ref").Contains("branch1").IsSelected(), Contains("CI commit 03").IsSelected(), Contains("CI commit 02").IsSelected(), - Contains("CI <-- YOU ARE HERE --- commit 01"), + Contains("--- Commits ---"), + Contains("CI commit 01"), ) }, }) diff --git a/pkg/integration/tests/interactive_rebase/rebase.go b/pkg/integration/tests/interactive_rebase/rebase.go index 2b279a22e56..e1940ff7a56 100644 --- a/pkg/integration/tests/interactive_rebase/rebase.go +++ b/pkg/integration/tests/interactive_rebase/rebase.go @@ -34,60 +34,72 @@ var Rebase = NewIntegrationTest(NewIntegrationTestArgs{ NavigateToLine(Contains("first commit to edit")). Press(keys.Universal.Edit). Lines( + Contains("--- Pending rebase todos ---"), MatchesRegexp("pick.*commit to fixup"), MatchesRegexp("pick.*commit to drop"), MatchesRegexp("pick.*second commit to edit"), MatchesRegexp("pick.*commit to squash"), - MatchesRegexp("YOU ARE HERE.*first commit to edit").IsSelected(), + Contains("--- Commits ---"), + Contains("first commit to edit").IsSelected(), Contains("initial commit"), ). SelectPreviousItem(). Press(keys.Commits.SquashDown). Lines( + Contains("--- Pending rebase todos ---"), MatchesRegexp("pick.*commit to fixup"), MatchesRegexp("pick.*commit to drop"), MatchesRegexp("pick.*second commit to edit"), MatchesRegexp("squash.*commit to squash").IsSelected(), - MatchesRegexp("YOU ARE HERE.*first commit to edit"), + Contains("--- Commits ---"), + Contains("first commit to edit"), Contains("initial commit"), ). SelectPreviousItem(). Press(keys.Universal.Edit). Lines( + Contains("--- Pending rebase todos ---"), MatchesRegexp("pick.*commit to fixup"), MatchesRegexp("pick.*commit to drop"), MatchesRegexp("edit.*second commit to edit").IsSelected(), MatchesRegexp("squash.*commit to squash"), - MatchesRegexp("YOU ARE HERE.*first commit to edit"), + Contains("--- Commits ---"), + Contains("first commit to edit"), Contains("initial commit"), ). SelectPreviousItem(). Press(keys.Universal.Remove). Lines( + Contains("--- Pending rebase todos ---"), MatchesRegexp("pick.*commit to fixup"), MatchesRegexp("drop.*commit to drop").IsSelected(), MatchesRegexp("edit.*second commit to edit"), MatchesRegexp("squash.*commit to squash"), - MatchesRegexp("YOU ARE HERE.*first commit to edit"), + Contains("--- Commits ---"), + Contains("first commit to edit"), Contains("initial commit"), ). SelectPreviousItem(). Press(keys.Commits.MarkCommitAsFixup). Lines( + Contains("--- Pending rebase todos ---"), MatchesRegexp("fixup.*commit to fixup").IsSelected(), MatchesRegexp("drop.*commit to drop"), MatchesRegexp("edit.*second commit to edit"), MatchesRegexp("squash.*commit to squash"), - MatchesRegexp("YOU ARE HERE.*first commit to edit"), + Contains("--- Commits ---"), + Contains("first commit to edit"), Contains("initial commit"), ). Tap(func() { t.Common().ContinueRebase() }). Lines( + Contains("--- Pending rebase todos ---"), MatchesRegexp("fixup.*commit to fixup").IsSelected(), MatchesRegexp("drop.*commit to drop"), - MatchesRegexp("YOU ARE HERE.*second commit to edit"), + Contains("--- Commits ---"), + Contains("second commit to edit"), MatchesRegexp("first commit to edit"), Contains("initial commit"), ). diff --git a/pkg/integration/tests/interactive_rebase/revert_during_rebase_when_stopped_on_edit.go b/pkg/integration/tests/interactive_rebase/revert_during_rebase_when_stopped_on_edit.go index 7d49f06db5f..16a2b8c25a2 100644 --- a/pkg/integration/tests/interactive_rebase/revert_during_rebase_when_stopped_on_edit.go +++ b/pkg/integration/tests/interactive_rebase/revert_during_rebase_when_stopped_on_edit.go @@ -30,8 +30,10 @@ var RevertDuringRebaseWhenStoppedOnEdit = NewIntegrationTest(NewIntegrationTestA NavigateToLine(Contains("commit 03")). Press(keys.Universal.Edit). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("commit 04"), - Contains("<-- YOU ARE HERE --- commit 03").IsSelected(), + Contains("--- Commits ---"), + Contains("commit 03").IsSelected(), Contains("commit 02"), Contains("commit 01"), Contains("master commit 2"), @@ -47,8 +49,10 @@ var RevertDuringRebaseWhenStoppedOnEdit = NewIntegrationTest(NewIntegrationTestA Confirm() }). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("commit 04"), - Contains(`<-- YOU ARE HERE --- Revert "commit 01"`), + Contains("--- Commits ---"), + Contains(`Revert "commit 01"`), Contains(`Revert "commit 02"`), Contains("commit 03"), Contains("commit 02").IsSelected(), diff --git a/pkg/integration/tests/interactive_rebase/revert_multiple_commits_in_interactive_rebase.go b/pkg/integration/tests/interactive_rebase/revert_multiple_commits_in_interactive_rebase.go index 3d3aa42623c..529c0a5ec3b 100644 --- a/pkg/integration/tests/interactive_rebase/revert_multiple_commits_in_interactive_rebase.go +++ b/pkg/integration/tests/interactive_rebase/revert_multiple_commits_in_interactive_rebase.go @@ -50,10 +50,13 @@ var RevertMultipleCommitsInInteractiveRebase = NewIntegrationTest(NewIntegration Confirm() }). Lines( + Contains("--- Pending rebase todos ---"), Contains("CI unrelated change 3"), Contains("CI unrelated change 2"), + Contains("--- Pending reverts ---"), Contains("revert").Contains("CI unrelated change 1"), Contains("revert").Contains("CI <-- CONFLICT --- add first line"), + Contains("--- Commits ---"), Contains("CI ◯ add second line"), Contains("CI ◯ add first line"), Contains("CI ◯ unrelated change 1"), @@ -80,9 +83,11 @@ var RevertMultipleCommitsInInteractiveRebase = NewIntegrationTest(NewIntegration t.Views().Commits(). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("CI unrelated change 3"), Contains("pick").Contains("CI unrelated change 2"), - Contains(`CI ◯ <-- YOU ARE HERE --- Revert "unrelated change 1"`), + Contains("--- Commits ---"), + Contains(`CI ◯ Revert "unrelated change 1"`), Contains(`CI ◯ Revert "add first line"`), Contains("CI ◯ add second line"), Contains("CI ◯ add first line"), diff --git a/pkg/integration/tests/interactive_rebase/revert_single_commit_in_interactive_rebase.go b/pkg/integration/tests/interactive_rebase/revert_single_commit_in_interactive_rebase.go index 05849f21c43..7126699dc08 100644 --- a/pkg/integration/tests/interactive_rebase/revert_single_commit_in_interactive_rebase.go +++ b/pkg/integration/tests/interactive_rebase/revert_single_commit_in_interactive_rebase.go @@ -45,9 +45,12 @@ var RevertSingleCommitInInteractiveRebase = NewIntegrationTest(NewIntegrationTes Cancel() // stay in commits panel }). Lines( + Contains("--- Pending rebase todos ---"), Contains("CI unrelated change 2"), Contains("CI unrelated change 1"), + Contains("--- Pending reverts ---"), Contains("revert").Contains("CI <-- CONFLICT --- add first line"), + Contains("--- Commits ---"), Contains("CI ◯ add second line"), Contains("CI ◯ add first line").IsSelected(), Contains("CI ◯ add empty file"), @@ -81,9 +84,11 @@ var RevertSingleCommitInInteractiveRebase = NewIntegrationTest(NewIntegrationTes t.Views().Commits(). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("CI unrelated change 2"), Contains("pick").Contains("CI unrelated change 1"), - Contains(`CI ◯ <-- YOU ARE HERE --- Revert "add first line"`), + Contains("--- Commits ---"), + Contains(`CI ◯ Revert "add first line"`), Contains("CI ◯ add second line"), Contains("CI ◯ add first line"), Contains("CI ◯ add empty file"), diff --git a/pkg/integration/tests/interactive_rebase/reword_commit_with_editor_and_fail.go b/pkg/integration/tests/interactive_rebase/reword_commit_with_editor_and_fail.go index 99bac839dcc..df6486772e7 100644 --- a/pkg/integration/tests/interactive_rebase/reword_commit_with_editor_and_fail.go +++ b/pkg/integration/tests/interactive_rebase/reword_commit_with_editor_and_fail.go @@ -33,8 +33,10 @@ var RewordCommitWithEditorAndFail = NewIntegrationTest(NewIntegrationTestArgs{ Confirm() }). Lines( + Contains("--- Pending rebase todos ---"), Contains("commit 03"), - Contains("<-- YOU ARE HERE --- commit 02").IsSelected(), + Contains("--- Commits ---"), + Contains("commit 02").IsSelected(), Contains("commit 01"), ) diff --git a/pkg/integration/tests/interactive_rebase/reword_you_are_here_commit.go b/pkg/integration/tests/interactive_rebase/reword_you_are_here_commit.go index d7763c57357..92aaf1a43d1 100644 --- a/pkg/integration/tests/interactive_rebase/reword_you_are_here_commit.go +++ b/pkg/integration/tests/interactive_rebase/reword_you_are_here_commit.go @@ -25,8 +25,10 @@ var RewordYouAreHereCommit = NewIntegrationTest(NewIntegrationTestArgs{ NavigateToLine(Contains("commit 02")). Press(keys.Universal.Edit). Lines( + Contains("--- Pending rebase todos ---"), Contains("commit 03"), - Contains("<-- YOU ARE HERE --- commit 02").IsSelected(), + Contains("--- Commits ---"), + Contains("commit 02").IsSelected(), Contains("commit 01"), ). Press(keys.Commits.RenameCommit). @@ -39,8 +41,10 @@ var RewordYouAreHereCommit = NewIntegrationTest(NewIntegrationTestArgs{ Confirm() }). Lines( + Contains("--- Pending rebase todos ---"), Contains("commit 03"), - Contains("<-- YOU ARE HERE --- renamed 02").IsSelected(), + Contains("--- Commits ---"), + Contains("renamed 02").IsSelected(), Contains("commit 01"), ) }, diff --git a/pkg/integration/tests/interactive_rebase/reword_you_are_here_commit_with_editor.go b/pkg/integration/tests/interactive_rebase/reword_you_are_here_commit_with_editor.go index 4d654e1ddfe..b927684fefc 100644 --- a/pkg/integration/tests/interactive_rebase/reword_you_are_here_commit_with_editor.go +++ b/pkg/integration/tests/interactive_rebase/reword_you_are_here_commit_with_editor.go @@ -27,8 +27,10 @@ var RewordYouAreHereCommitWithEditor = NewIntegrationTest(NewIntegrationTestArgs NavigateToLine(Contains("commit 02")). Press(keys.Universal.Edit). Lines( + Contains("--- Pending rebase todos ---"), Contains("commit 03"), - Contains("<-- YOU ARE HERE --- commit 02").IsSelected(), + Contains("--- Commits ---"), + Contains("commit 02").IsSelected(), Contains("commit 01"), ). Press(keys.Commits.RenameCommitWithEditor). @@ -39,8 +41,10 @@ var RewordYouAreHereCommitWithEditor = NewIntegrationTest(NewIntegrationTestArgs Confirm() }). Lines( + Contains("--- Pending rebase todos ---"), Contains("commit 03"), - Contains("<-- YOU ARE HERE --- renamed 02").IsSelected(), + Contains("--- Commits ---"), + Contains("renamed 02").IsSelected(), Contains("commit 01"), ) }, diff --git a/pkg/integration/tests/interactive_rebase/shared.go b/pkg/integration/tests/interactive_rebase/shared.go index d2f75622f11..ea6626fd652 100644 --- a/pkg/integration/tests/interactive_rebase/shared.go +++ b/pkg/integration/tests/interactive_rebase/shared.go @@ -9,8 +9,10 @@ func handleConflictsFromSwap(t *TestDriver, expectedCommand string) { t.Views().Commits(). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("commit two"), Contains(expectedCommand).Contains("<-- CONFLICT --- commit three"), + Contains("--- Commits ---"), Contains("commit one"), ) diff --git a/pkg/integration/tests/interactive_rebase/show_exec_todos.go b/pkg/integration/tests/interactive_rebase/show_exec_todos.go index 82f45992450..1ae51584523 100644 --- a/pkg/integration/tests/interactive_rebase/show_exec_todos.go +++ b/pkg/integration/tests/interactive_rebase/show_exec_todos.go @@ -31,9 +31,11 @@ var ShowExecTodos = NewIntegrationTest(NewIntegrationTestArgs{ t.ExpectPopup().Alert().Title(Equals("Error")).Content(Contains("Rebasing (2/4)Executing: false")).Confirm() }). Lines( + Contains("--- Pending rebase todos ---"), Contains("exec").Contains("false"), Contains("pick").Contains("CI commit 03"), - Contains("CI ◯ <-- YOU ARE HERE --- commit 02"), + Contains("--- Commits ---"), + Contains("CI ◯ commit 02"), Contains("CI ◯ commit 01"), ). Tap(func() { @@ -41,7 +43,9 @@ var ShowExecTodos = NewIntegrationTest(NewIntegrationTestArgs{ t.ExpectPopup().Alert().Title(Equals("Error")).Content(Contains("exit status 1")).Confirm() }). Lines( - Contains("CI ◯ <-- YOU ARE HERE --- commit 03"), + Contains("--- Pending rebase todos ---"), + Contains("--- Commits ---"), + Contains("CI ◯ commit 03"), Contains("CI ◯ commit 02"), Contains("CI ◯ commit 01"), ). diff --git a/pkg/integration/tests/interactive_rebase/swap_in_rebase_with_conflict.go b/pkg/integration/tests/interactive_rebase/swap_in_rebase_with_conflict.go index f330fd5cf83..f6653f9b008 100644 --- a/pkg/integration/tests/interactive_rebase/swap_in_rebase_with_conflict.go +++ b/pkg/integration/tests/interactive_rebase/swap_in_rebase_with_conflict.go @@ -29,16 +29,20 @@ var SwapInRebaseWithConflict = NewIntegrationTest(NewIntegrationTestArgs{ NavigateToLine(Contains("commit one")). Press(keys.Universal.Edit). Lines( + Contains("--- Pending rebase todos ---"), Contains("commit three"), Contains("commit two"), - Contains("YOU ARE HERE").Contains("commit one").IsSelected(), + Contains("--- Commits ---"), + Contains("commit one").IsSelected(), ). SelectPreviousItem(). Press(keys.Commits.MoveUpCommit). Lines( + Contains("--- Pending rebase todos ---"), Contains("commit two").IsSelected(), Contains("commit three"), - Contains("YOU ARE HERE").Contains("commit one"), + Contains("--- Commits ---"), + Contains("commit one"), ). Tap(func() { t.Common().ContinueRebase() diff --git a/pkg/integration/tests/interactive_rebase/swap_in_rebase_with_conflict_and_edit.go b/pkg/integration/tests/interactive_rebase/swap_in_rebase_with_conflict_and_edit.go index 662a8e8cfc1..f5beb437435 100644 --- a/pkg/integration/tests/interactive_rebase/swap_in_rebase_with_conflict_and_edit.go +++ b/pkg/integration/tests/interactive_rebase/swap_in_rebase_with_conflict_and_edit.go @@ -29,16 +29,20 @@ var SwapInRebaseWithConflictAndEdit = NewIntegrationTest(NewIntegrationTestArgs{ NavigateToLine(Contains("commit one")). Press(keys.Universal.Edit). Lines( + Contains("--- Pending rebase todos ---"), Contains("commit three"), Contains("commit two"), - Contains("<-- YOU ARE HERE --- commit one").IsSelected(), + Contains("--- Commits ---"), + Contains("commit one").IsSelected(), ). NavigateToLine(Contains("commit two")). Press(keys.Commits.MoveUpCommit). Lines( + Contains("--- Pending rebase todos ---"), Contains("commit two").IsSelected(), Contains("commit three"), - Contains("<-- YOU ARE HERE --- commit one"), + Contains("--- Commits ---"), + Contains("commit one"), ). NavigateToLine(Contains("commit three")). Press(keys.Universal.Edit). diff --git a/pkg/integration/tests/interactive_rebase/view_files_of_todo_entries.go b/pkg/integration/tests/interactive_rebase/view_files_of_todo_entries.go index 4140e1a0fca..29d79513e92 100644 --- a/pkg/integration/tests/interactive_rebase/view_files_of_todo_entries.go +++ b/pkg/integration/tests/interactive_rebase/view_files_of_todo_entries.go @@ -28,10 +28,12 @@ var ViewFilesOfTodoEntries = NewIntegrationTest(NewIntegrationTestArgs{ Focus(). Press(keys.Commits.StartInteractiveRebase). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("CI commit 03").IsSelected(), Contains("update-ref").Contains("branch1"), Contains("pick").Contains("CI commit 02"), - Contains("CI <-- YOU ARE HERE --- commit 01"), + Contains("--- Commits ---"), + Contains("CI commit 01"), ). Press(keys.Universal.GoInto) diff --git a/pkg/integration/tests/submodule/reset.go b/pkg/integration/tests/submodule/reset.go index 6f78d974f04..5cd6d58aa25 100644 --- a/pkg/integration/tests/submodule/reset.go +++ b/pkg/integration/tests/submodule/reset.go @@ -107,8 +107,8 @@ var Reset = NewIntegrationTest(NewIntegrationTestArgs{ // submodule has been hard reset to the commit the parent repo specifies t.Views().Branches().Lines( - Contains("HEAD detached").IsSelected(), - Contains("master"), + Contains("HEAD detached"), + Contains("master").IsSelected(), ) // empty commit is gone diff --git a/pkg/integration/tests/sync/pull_rebase_interactive_conflict.go b/pkg/integration/tests/sync/pull_rebase_interactive_conflict.go index 7f1e7721aa7..2bb39e14fd4 100644 --- a/pkg/integration/tests/sync/pull_rebase_interactive_conflict.go +++ b/pkg/integration/tests/sync/pull_rebase_interactive_conflict.go @@ -48,8 +48,10 @@ var PullRebaseInteractiveConflict = NewIntegrationTest(NewIntegrationTestArgs{ t.Views().Commits(). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("five"), Contains("pick").Contains("CONFLICT").Contains("four"), + Contains("--- Commits ---"), Contains("three"), Contains("two"), Contains("one"), diff --git a/pkg/integration/tests/sync/pull_rebase_interactive_conflict_drop.go b/pkg/integration/tests/sync/pull_rebase_interactive_conflict_drop.go index d9dd51c4593..ad7a4806f90 100644 --- a/pkg/integration/tests/sync/pull_rebase_interactive_conflict_drop.go +++ b/pkg/integration/tests/sync/pull_rebase_interactive_conflict_drop.go @@ -49,16 +49,20 @@ var PullRebaseInteractiveConflictDrop = NewIntegrationTest(NewIntegrationTestArg t.Views().Commits(). Focus(). Lines( + Contains("--- Pending rebase todos ---"), Contains("pick").Contains("five").IsSelected(), Contains("pick").Contains("CONFLICT").Contains("four"), + Contains("--- Commits ---"), Contains("three"), Contains("two"), Contains("one"), ). Press(keys.Universal.Remove). Lines( + Contains("--- Pending rebase todos ---"), Contains("drop").Contains("five").IsSelected(), Contains("pick").Contains("CONFLICT").Contains("four"), + Contains("--- Commits ---"), Contains("three"), Contains("two"), Contains("one"),