mirror of
https://github.com/go-gitea/gitea.git
synced 2026-08-14 03:04:37 +00:00
debug
This commit is contained in:
@@ -22,6 +22,8 @@ import (
|
||||
func TestMigratePackages(t *testing.T) {
|
||||
assert.NoError(t, unittest.PrepareTestDatabase())
|
||||
|
||||
t.Log("DebugLogs", setting.DebugGetLogs())
|
||||
|
||||
creator := unittest.AssertExistsAndLoadBean(t, &user_model.User{ID: 1})
|
||||
|
||||
content := "package main\n\nfunc main() {\nfmt.Println(\"hi\")\n}\n"
|
||||
|
||||
@@ -19,7 +19,6 @@ import (
|
||||
"code.gitea.io/gitea/modules/setting/config"
|
||||
"code.gitea.io/gitea/modules/storage"
|
||||
"code.gitea.io/gitea/modules/tempdir"
|
||||
"code.gitea.io/gitea/modules/testlogger"
|
||||
"code.gitea.io/gitea/modules/util"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
@@ -41,34 +40,40 @@ func MainTest(m *testing.M, testOptsArg ...*TestOptions) {
|
||||
}
|
||||
|
||||
func mainTest(m *testing.M, testOptsArg ...*TestOptions) int {
|
||||
reportError := func(msg string, a ...any) int {
|
||||
_, _ = fmt.Fprintf(os.Stderr, msg+"\n", a...)
|
||||
return 1
|
||||
}
|
||||
|
||||
testOpts := util.OptionalArg(testOptsArg, &TestOptions{})
|
||||
|
||||
appDataPath, appDataCleanup, err := tempdir.OsTempDir("gitea-test").MkdirTempRandom("unit-test-data-")
|
||||
if err != nil {
|
||||
testlogger.Panicf("TempDir: %v\n", err)
|
||||
return reportError("Failed to create temp dir for app data path: %v", err)
|
||||
}
|
||||
|
||||
// FIXME: debug
|
||||
_, _ = fmt.Fprintf(os.Stderr, "Prepare APP_DATA_PATH for SetupGiteaTestEnv: %s\n", appDataPath)
|
||||
setting.DebugAppendLog("Prepare APP_DATA_PATH for SetupGiteaTestEnv: %s", appDataPath)
|
||||
defer func() {
|
||||
_, _ = fmt.Fprintf(os.Stderr, "Remove APP_DATA_PATH for SetupGiteaTestEnv: %s\n", appDataPath)
|
||||
setting.DebugAppendLog("Remove APP_DATA_PATH for SetupGiteaTestEnv: %s", appDataPath)
|
||||
appDataCleanup()
|
||||
}()
|
||||
|
||||
_ = os.Setenv("GITEA_TEST_CONF_CONTENT", `
|
||||
[server]
|
||||
APP_DATA_PATH = `+appDataPath+`
|
||||
`)
|
||||
setting.SetupGiteaTestEnv()
|
||||
if setting.RepoRootPath == "" || setting.AppDataPath == "" {
|
||||
_, _ = fmt.Fprintln(os.Stderr, "SetupGiteaTestEnv failed, paths are not initialized")
|
||||
os.Exit(1)
|
||||
return reportError("SetupGiteaTestEnv failed, paths are not initialized")
|
||||
}
|
||||
|
||||
giteaRoot := setting.GetGiteaTestSourceRoot()
|
||||
fixturesOpts := FixturesOptions{Dir: filepath.Join(giteaRoot, "models", "fixtures"), Files: testOpts.FixtureFiles}
|
||||
if err := CreateTestEngine(fixturesOpts); err != nil {
|
||||
_, _ = fmt.Fprintf(os.Stderr, "Error creating test database engine: %v\n", err)
|
||||
os.Exit(1)
|
||||
return reportError("Error creating test database engine: %v", err)
|
||||
}
|
||||
|
||||
setting.AppURL = "https://try.gitea.io/"
|
||||
@@ -86,22 +91,22 @@ APP_DATA_PATH = `+appDataPath+`
|
||||
config.SetDynGetter(system.NewDatabaseDynKeyGetter())
|
||||
|
||||
if err = cache.Init(); err != nil {
|
||||
testlogger.Panicf("cache.Init: %v\n", err)
|
||||
return reportError("cache.Init: %v", err)
|
||||
}
|
||||
if err = storage.Init(); err != nil {
|
||||
testlogger.Panicf("storage.Init: %v\n", err)
|
||||
return reportError("storage.Init: %v", err)
|
||||
}
|
||||
if err = SyncDirs(filepath.Join(giteaRoot, "tests", "gitea-repositories-meta"), setting.RepoRootPath); err != nil {
|
||||
testlogger.Panicf("util.SyncDirs: %v\n", err)
|
||||
return reportError("util.SyncDirs: %v", err)
|
||||
}
|
||||
|
||||
if err = git.InitFull(); err != nil {
|
||||
testlogger.Panicf("git.Init: %v\n", err)
|
||||
return reportError("git.Init: %v", err)
|
||||
}
|
||||
|
||||
if testOpts.SetUp != nil {
|
||||
if err := testOpts.SetUp(); err != nil {
|
||||
testlogger.Panicf("set up failed: %v\n", err)
|
||||
return reportError("set up failed: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -109,7 +114,7 @@ APP_DATA_PATH = `+appDataPath+`
|
||||
|
||||
if testOpts.TearDown != nil {
|
||||
if err := testOpts.TearDown(); err != nil {
|
||||
testlogger.Panicf("tear down failed: %v\n", err)
|
||||
return reportError("tear down failed: %v", err)
|
||||
}
|
||||
}
|
||||
return exitStatus
|
||||
|
||||
@@ -282,7 +282,7 @@ func loadServerFrom(rootCfg ConfigProvider) {
|
||||
// FIXME: debug
|
||||
bufCustomConf, _ := os.ReadFile(CustomConf)
|
||||
log.Error("Set AppDataPath=%s (CustomConf=%s)\n%s\n%s\n", AppDataPath, CustomConf, string(bufCustomConf), log.Stack(2))
|
||||
|
||||
DebugAppendLog("Set AppDataPath=%s (CustomConf=%s)\n%s\n%s\n", AppDataPath, CustomConf, string(bufCustomConf), log.Stack(2))
|
||||
if !filepath.IsAbs(AppDataPath) {
|
||||
AppDataPath = filepath.ToSlash(filepath.Join(AppWorkPath, AppDataPath))
|
||||
}
|
||||
|
||||
@@ -21,6 +21,19 @@ func GetGiteaTestSourceRoot() string {
|
||||
return *giteaTestSourceRoot
|
||||
}
|
||||
|
||||
func DebugAppendLog(msg string, a ...any) {
|
||||
f, _ := os.OpenFile("/tmp/debug.log", os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0o644)
|
||||
if f != nil {
|
||||
defer f.Close()
|
||||
fmt.Fprintf(f, msg+"\n", a...)
|
||||
}
|
||||
}
|
||||
|
||||
func DebugGetLogs() string {
|
||||
buf, _ := os.ReadFile("/tmp/debug.log")
|
||||
return string(buf)
|
||||
}
|
||||
|
||||
func SetupGiteaTestEnv() {
|
||||
if giteaTestSourceRoot != nil {
|
||||
return // already initialized
|
||||
@@ -69,6 +82,7 @@ func SetupGiteaTestEnv() {
|
||||
|
||||
// FIXME: debug
|
||||
log.Error("SetupGiteaTestEnv CustomConf=%s\n%s\n%s\n", CustomConf, os.Getenv("GITEA_TEST_CONF_CONTENT"), log.Stack(2))
|
||||
DebugAppendLog("SetupGiteaTestEnv CustomConf=%s\n%s\n%s\n", CustomConf, os.Getenv("GITEA_TEST_CONF_CONTENT"), log.Stack(2))
|
||||
} else {
|
||||
// CustomConf must be absolute path to make tests pass,
|
||||
CustomConf = filepath.Join(AppWorkPath, giteaConf)
|
||||
|
||||
Reference in New Issue
Block a user