MCPcopy
hub / github.com/Jguer/yay / TestSyncUpgrade

Function TestSyncUpgrade

sync_test.go:36–152  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

34)
35
36func TestSyncUpgrade(t *testing.T) {
37 t.Parallel()
38 makepkgBin := t.TempDir() + "/makepkg"
39 pacmanBin := t.TempDir() + "/pacman"
40 gitBin := t.TempDir() + "/git"
41 f, err := os.OpenFile(makepkgBin, os.O_RDONLY|os.O_CREATE, 0o755)
42 require.NoError(t, err)
43 require.NoError(t, f.Close())
44
45 f, err = os.OpenFile(pacmanBin, os.O_RDONLY|os.O_CREATE, 0o755)
46 require.NoError(t, err)
47 require.NoError(t, f.Close())
48
49 f, err = os.OpenFile(gitBin, os.O_RDONLY|os.O_CREATE, 0o755)
50 require.NoError(t, err)
51 require.NoError(t, f.Close())
52
53 captureOverride := func(cmd *exec.Cmd) (stdout string, stderr string, err error) {
54 return "", "", nil
55 }
56
57 showOverride := func(cmd *exec.Cmd) error {
58 return nil
59 }
60
61 mockRunner := &exe.MockRunner{CaptureFn: captureOverride, ShowFn: showOverride}
62 cmdBuilder := &exe.CmdBuilder{
63 MakepkgBin: makepkgBin,
64 SudoBin: "su",
65 PacmanBin: pacmanBin,
66 PacmanConfigPath: "/etc/pacman.conf",
67 GitBin: "git",
68 Runner: mockRunner,
69 SudoLoopEnabled: false,
70 }
71
72 cmdArgs := parser.MakeArguments()
73 cmdArgs.AddArg("S")
74 cmdArgs.AddArg("y")
75 cmdArgs.AddArg("u")
76
77 dbName := mock.NewDB("core")
78
79 db := &mock.DBExecutor{
80 AlpmArchitecturesFn: func() ([]string, error) {
81 return []string{"x86_64"}, nil
82 },
83 RefreshHandleFn: func() error {
84 return nil
85 },
86 ReposFn: func() []string {
87 return []string{"core"}
88 },
89 InstalledRemotePackagesFn: func() map[string]alpm.Package {
90 return map[string]alpm.Package{}
91 },
92 InstalledRemotePackageNamesFn: func() []string {
93 return []string{}

Callers

nothing calls this directly

Calls 7

MakeArgumentsFunction · 0.92
NewLoggerFunction · 0.92
AddArgMethod · 0.80
handleCmdFunction · 0.70
LenMethod · 0.65
CloseMethod · 0.45
StringMethod · 0.45

Tested by

no test coverage detected