mirror of
https://github.com/jesseduffield/lazygit.git
synced 2025-04-21 12:16:54 +02:00
Change our fake clipboard command to not append a linefeed; that's closer to what the production code does. This allows us to use Equals instead of Contains for checking the clipboard contents. Finally, use FileSystem().FileContent() to assert the clipboard contents, instead of selecting the clipboard file and then checking the diff view.
40 lines
1016 B
Go
40 lines
1016 B
Go
package misc
|
|
|
|
import (
|
|
"github.com/jesseduffield/lazygit/pkg/config"
|
|
. "github.com/jesseduffield/lazygit/pkg/integration/components"
|
|
)
|
|
|
|
// We're emulating the clipboard by writing to a file called clipboard
|
|
|
|
var CopyToClipboard = NewIntegrationTest(NewIntegrationTestArgs{
|
|
Description: "Copy a branch name to the clipboard using custom clipboard command template",
|
|
ExtraCmdArgs: []string{},
|
|
Skip: false,
|
|
SetupConfig: func(config *config.AppConfig) {
|
|
config.GetUserConfig().OS.CopyToClipboardCmd = "printf '%s' {{text}} > clipboard"
|
|
},
|
|
|
|
SetupRepo: func(shell *Shell) {
|
|
shell.NewBranch("branch-a")
|
|
},
|
|
|
|
Run: func(t *TestDriver, keys config.KeybindingConfig) {
|
|
t.Views().Branches().
|
|
Focus().
|
|
Lines(
|
|
Contains("branch-a").IsSelected(),
|
|
).
|
|
Press(keys.Universal.CopyToClipboard)
|
|
|
|
t.ExpectToast(Equals("'branch-a' copied to clipboard"))
|
|
|
|
t.Views().Files().
|
|
Focus()
|
|
|
|
t.GlobalPress(keys.Files.RefreshFiles)
|
|
|
|
t.FileSystem().FileContent("clipboard", Equals("branch-a"))
|
|
},
|
|
})
|