|
|
|
@ -6,7 +6,6 @@ package cmd
|
|
|
|
|
import (
|
|
|
|
|
"fmt"
|
|
|
|
|
"io"
|
|
|
|
|
"os"
|
|
|
|
|
"path/filepath"
|
|
|
|
|
"strings"
|
|
|
|
|
"testing"
|
|
|
|
@ -113,37 +112,17 @@ func TestCliCmd(t *testing.T) {
|
|
|
|
|
_, _ = fmt.Fprint(ctx.App.Writer, makePathOutput(setting.AppWorkPath, setting.CustomPath, setting.CustomConf))
|
|
|
|
|
return nil
|
|
|
|
|
})
|
|
|
|
|
var envBackup []string
|
|
|
|
|
for _, s := range os.Environ() {
|
|
|
|
|
if strings.HasPrefix(s, "GITEA_") && strings.Contains(s, "=") {
|
|
|
|
|
envBackup = append(envBackup, s)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
clearGiteaEnv := func() {
|
|
|
|
|
for _, s := range os.Environ() {
|
|
|
|
|
if strings.HasPrefix(s, "GITEA_") {
|
|
|
|
|
_ = os.Unsetenv(s)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
defer func() {
|
|
|
|
|
clearGiteaEnv()
|
|
|
|
|
for _, s := range envBackup {
|
|
|
|
|
k, v, _ := strings.Cut(s, "=")
|
|
|
|
|
_ = os.Setenv(k, v)
|
|
|
|
|
}
|
|
|
|
|
}()
|
|
|
|
|
|
|
|
|
|
for _, c := range cases {
|
|
|
|
|
clearGiteaEnv()
|
|
|
|
|
t.Run(c.cmd, func(t *testing.T) {
|
|
|
|
|
for k, v := range c.env {
|
|
|
|
|
_ = os.Setenv(k, v)
|
|
|
|
|
t.Setenv(k, v)
|
|
|
|
|
}
|
|
|
|
|
args := strings.Split(c.cmd, " ") // for test only, "split" is good enough
|
|
|
|
|
r, err := runTestApp(app, args...)
|
|
|
|
|
assert.NoError(t, err, c.cmd)
|
|
|
|
|
assert.NotEmpty(t, c.exp, c.cmd)
|
|
|
|
|
assert.Contains(t, r.Stdout, c.exp, c.cmd)
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|