1
0
mirror of https://github.com/jesseduffield/lazygit.git synced 2024-12-12 11:15:00 +02:00
lazygit/pkg/integration/tests/patch_building/move_to_index_partial.go
Jesse Duffield d772c9f1d4 Use sentence case everywhere
We have not been good at consistent casing so far. Now we use 'Sentence case' everywhere. EVERYWHERE.

Also Removing 'Lc' prefix from i18n field names: the 'Lc' stood for lowercase but now that everything
is in 'Sentence case' there's no need for the distinction.

I've got a couple lower case things I've kept: namely, things that show up in parentheses.
2023-05-25 23:52:19 +10:00

99 lines
2.4 KiB
Go

package patch_building
import (
"github.com/jesseduffield/lazygit/pkg/config"
. "github.com/jesseduffield/lazygit/pkg/integration/components"
)
var MoveToIndexPartial = NewIntegrationTest(NewIntegrationTestArgs{
Description: "Move a patch from a commit to the index. This is different from the MoveToIndex test in that we're only selecting a partial patch from a file",
ExtraCmdArgs: []string{},
Skip: false,
SetupConfig: func(config *config.AppConfig) {},
SetupRepo: func(shell *Shell) {
shell.CreateFileAndAdd("file1", "first line\nsecond line\nthird line\n")
shell.Commit("first commit")
shell.UpdateFileAndAdd("file1", "first line2\nsecond line\nthird line2\n")
shell.Commit("second commit")
shell.CreateFileAndAdd("file2", "file1 content")
shell.Commit("third commit")
},
Run: func(t *TestDriver, keys config.KeybindingConfig) {
t.Views().Commits().
Focus().
Lines(
Contains("third commit").IsSelected(),
Contains("second commit"),
Contains("first commit"),
).
NavigateToLine(Contains("second commit")).
PressEnter()
t.Views().CommitFiles().
IsFocused().
Lines(
Contains("file1").IsSelected(),
).
PressEnter()
t.Views().PatchBuilding().
IsFocused().
ContainsLines(
Contains(`-first line`).IsSelected(),
Contains(`+first line2`),
Contains(` second line`),
Contains(`-third line`),
Contains(`+third line2`),
).
PressPrimaryAction().
SelectNextItem().
PressPrimaryAction().
Tap(func() {
t.Views().Information().Content(Contains("Building patch"))
t.Views().PatchBuildingSecondary().
ContainsLines(
Contains(`-first line`),
Contains(`+first line2`),
Contains(` second line`),
Contains(` third line`),
)
t.Common().SelectPatchOption(Contains("Move patch out into index"))
t.Views().Files().
Lines(
Contains("M").Contains("file1"),
)
})
// Focus is automatically returned to the commit files panel. Arguably it shouldn't be.
t.Views().CommitFiles().
IsFocused().
Lines(
Contains("file1"),
)
t.Views().Main().
ContainsLines(
Contains(` first line`),
Contains(` second line`),
Contains(`-third line`),
Contains(`+third line2`),
)
t.Views().Files().
Focus()
t.Views().Main().
ContainsLines(
Contains(`-first line`),
Contains(`+first line2`),
Contains(` second line`),
Contains(` third line2`),
)
},
})