From fb0931e1a1d21fb07cf924cdfea7213810b10d9c Mon Sep 17 00:00:00 2001 From: Jesse Duffield Date: Tue, 23 May 2023 19:58:09 +1000 Subject: [PATCH] Fix discard logic Missed a spot a couple PR's ago. We had an integration test which caught this but which was skipped due to index.lock file issues. The test was also broken for other reasons due to it not having been running for a while, so I've fixed that up too. --- pkg/commands/git_commands/working_tree.go | 2 +- pkg/integration/tests/file/discard_changes.go | 11 +++++++---- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/pkg/commands/git_commands/working_tree.go b/pkg/commands/git_commands/working_tree.go index 6269ce21a..9a167de36 100644 --- a/pkg/commands/git_commands/working_tree.go +++ b/pkg/commands/git_commands/working_tree.go @@ -149,7 +149,7 @@ func (self *WorkingTreeCommands) DiscardAllFileChanges(file *models.File) error if file.ShortStatus == "DU" { return self.cmd.New( - NewGitCmd("rm").Arg("rm", "--", file.Name).ToArgv(), + NewGitCmd("rm").Arg("--", file.Name).ToArgv(), ).Run() } diff --git a/pkg/integration/tests/file/discard_changes.go b/pkg/integration/tests/file/discard_changes.go index dcc63bd59..b23b9888e 100644 --- a/pkg/integration/tests/file/discard_changes.go +++ b/pkg/integration/tests/file/discard_changes.go @@ -99,9 +99,13 @@ var DiscardChanges = NewIntegrationTest(NewIntegrationTestArgs{ {status: "DU", label: "deleted-us.txt", menuTitle: "deleted-us.txt"}, }) - t.Common().ContinueOnConflictsResolved() + t.ExpectPopup().Confirmation(). + Title(Equals("continue")). + Content(Contains("all merge conflicts resolved. Continue?")). + Cancel() discardOneByOne([]statusFile{ + {status: "AM", label: "added-changed.txt", menuTitle: "added-changed.txt"}, {status: "MD", label: "change-delete.txt", menuTitle: "change-delete.txt"}, {status: "D ", label: "delete-change.txt", menuTitle: "delete-change.txt"}, {status: "D ", label: "deleted-staged.txt", menuTitle: "deleted-staged.txt"}, @@ -109,11 +113,10 @@ var DiscardChanges = NewIntegrationTest(NewIntegrationTestArgs{ {status: "MM", label: "double-modded.txt", menuTitle: "double-modded.txt"}, {status: "M ", label: "modded-staged.txt", menuTitle: "modded-staged.txt"}, {status: " M", label: "modded.txt", menuTitle: "modded.txt"}, - // the menu title only includes the new file - {status: "R ", label: "renamed.txt → renamed2.txt", menuTitle: "renamed2.txt"}, - {status: "AM", label: "added-changed.txt", menuTitle: "added-changed.txt"}, {status: "A ", label: "new-staged.txt", menuTitle: "new-staged.txt"}, {status: "??", label: "new.txt", menuTitle: "new.txt"}, + // the menu title only includes the new file + {status: "R ", label: "renamed.txt → renamed2.txt", menuTitle: "renamed2.txt"}, }) t.Views().Files().IsEmpty()