mirror of
https://github.com/jesseduffield/lazygit.git
synced 2025-04-21 04:25:53 +03:00
Use Equals instead of Contains for asserting the status view content. This solves the problem that we might assert Contains("↓2 repo"), but what it really shows is "↑1↓2 repo", and the test still succeeds. At best this is confusing. Also, this way we don't have to use the awkward DoesNotContain to check that it really doesn't show a checkmark. To do this, we need to fix two whitespace problems: - there was always a space at the end for no reason. Simply remove it. It was added in efb51eee96, but from looking at that diff it seems it was added accidentally. - there was a space at the beginning if the branch status was empty. This is actually a cosmetic problem, for branches without a status the text was indented by once space. Change this so that the space is added conditionally. It's a bit awkward that we have to use Decolorise here, but this will go away again later in this branch.
46 lines
1.2 KiB
Go
46 lines
1.2 KiB
Go
package sync
|
|
|
|
import (
|
|
"github.com/jesseduffield/lazygit/pkg/config"
|
|
. "github.com/jesseduffield/lazygit/pkg/integration/components"
|
|
)
|
|
|
|
var PullAndSetUpstream = NewIntegrationTest(NewIntegrationTestArgs{
|
|
Description: "Pull a commit from the remote, setting the upstream branch in the process",
|
|
ExtraCmdArgs: []string{},
|
|
Skip: false,
|
|
SetupConfig: func(config *config.AppConfig) {},
|
|
SetupRepo: func(shell *Shell) {
|
|
shell.EmptyCommit("one")
|
|
shell.EmptyCommit("two")
|
|
|
|
shell.CloneIntoRemote("origin")
|
|
|
|
// remove the 'two' commit so that we have something to pull from the remote
|
|
shell.HardReset("HEAD^")
|
|
},
|
|
Run: func(t *TestDriver, keys config.KeybindingConfig) {
|
|
t.Views().Commits().
|
|
Lines(
|
|
Contains("one"),
|
|
)
|
|
|
|
t.Views().Status().Content(Equals("repo → master"))
|
|
|
|
t.Views().Files().IsFocused().Press(keys.Universal.Pull)
|
|
|
|
t.ExpectPopup().Prompt().
|
|
Title(Equals("Enter upstream as '<remote> <branchname>'")).
|
|
SuggestionLines(Equals("origin master")).
|
|
ConfirmFirstSuggestion()
|
|
|
|
t.Views().Commits().
|
|
Lines(
|
|
Contains("two"),
|
|
Contains("one"),
|
|
)
|
|
|
|
t.Views().Status().Content(Equals("✓ repo → master"))
|
|
},
|
|
})
|