diff options
author | Ryooooooga <eial5q265e5@gmail.com> | 2022-10-15 11:57:19 +0900 |
---|---|---|
committer | Ryooooooga <eial5q265e5@gmail.com> | 2022-10-16 09:30:03 +0900 |
commit | e78e829e3a8940f5b7b8f0bfc77b3316d19e1e8b (patch) | |
tree | d74268b4a7027bc93a6ebc419ec9e945f029d89e /pkg | |
parent | eceb3a5aa6de864f31c52016e6fd497b9b6a1214 (diff) |
test: add an integration test for rename stash
Diffstat (limited to 'pkg')
-rw-r--r-- | pkg/integration/components/shell.go | 5 | ||||
-rw-r--r-- | pkg/integration/tests/stash/rename.go | 33 | ||||
-rw-r--r-- | pkg/integration/tests/tests.go | 2 |
3 files changed, 40 insertions, 0 deletions
diff --git a/pkg/integration/components/shell.go b/pkg/integration/components/shell.go index 5f7fef350..1d8182edb 100644 --- a/pkg/integration/components/shell.go +++ b/pkg/integration/components/shell.go @@ -111,3 +111,8 @@ func (s *Shell) CreateNCommits(n int) *Shell { return s } + +func (s *Shell) StashWithMessage(message string) *Shell { + s.RunCommand(fmt.Sprintf(`git stash -m "%s"`, message)) + return s +} diff --git a/pkg/integration/tests/stash/rename.go b/pkg/integration/tests/stash/rename.go new file mode 100644 index 000000000..97cfae006 --- /dev/null +++ b/pkg/integration/tests/stash/rename.go @@ -0,0 +1,33 @@ +package stash + +import ( + "github.com/jesseduffield/lazygit/pkg/config" + . "github.com/jesseduffield/lazygit/pkg/integration/components" +) + +var Rename = NewIntegrationTest(NewIntegrationTestArgs{ + Description: "Try to rename the stash.", + ExtraCmdArgs: "", + Skip: false, + SetupConfig: func(config *config.AppConfig) {}, + SetupRepo: func(shell *Shell) { + shell. + EmptyCommit("blah"). + CreateFileAndAdd("foo", "change to stash"). + StashWithMessage("bar") + }, + Run: func(shell *Shell, input *Input, assert *Assert, keys config.KeybindingConfig) { + input.SwitchToStashWindow() + assert.CurrentViewName("stash") + + assert.MatchSelectedLine(Equals("On master: bar")) + input.PressKeys(keys.Stash.RenameStash) + assert.InPrompt() + assert.MatchCurrentViewTitle(Equals("Rename stash: stash@{0}")) + + input.Type(" baz") + input.Confirm() + + assert.MatchSelectedLine(Equals("On master: bar baz")) + }, +}) diff --git a/pkg/integration/tests/tests.go b/pkg/integration/tests/tests.go index 21f06a376..6b4583e6d 100644 --- a/pkg/integration/tests/tests.go +++ b/pkg/integration/tests/tests.go @@ -16,6 +16,7 @@ import ( "github.com/jesseduffield/lazygit/pkg/integration/tests/commit" "github.com/jesseduffield/lazygit/pkg/integration/tests/custom_commands" "github.com/jesseduffield/lazygit/pkg/integration/tests/interactive_rebase" + "github.com/jesseduffield/lazygit/pkg/integration/tests/stash" ) // Here is where we lists the actual tests that will run. When you create a new test, @@ -38,6 +39,7 @@ var tests = []*components.IntegrationTest{ cherry_pick.CherryPick, cherry_pick.CherryPickConflicts, custom_commands.FormPrompts, + stash.Rename, } func GetTests() []*components.IntegrationTest { |