Refactor the setting to make unit test easier (#22405)
Some bugs caused by less unit tests in fundamental packages. This PR refactor `setting` package so that create a unit test will be easier than before. - All `LoadFromXXX` files has been splited as two functions, one is `InitProviderFromXXX` and `LoadCommonSettings`. The first functions will only include the code to create or new a ini file. The second function will load common settings. - It also renames all functions in setting from `newXXXService` to `loadXXXSetting` or `loadXXXFrom` to make the function name less confusing. - Move `XORMLog` to `SQLLog` because it's a better name for that. Maybe we should finally move these `loadXXXSetting` into the `XXXInit` function? Any idea? --------- Co-authored-by: 6543 <6543@obermui.de> Co-authored-by: delvh <dev.lh@web.de>
This commit is contained in:
parent
2b02343e21
commit
c53ad052d8
86 changed files with 1694 additions and 1464 deletions
|
@ -87,8 +87,8 @@ func TestMain(m *testing.M) {
|
|||
c = routers.NormalRoutes(context.TODO())
|
||||
|
||||
// integration test settings...
|
||||
if setting.Cfg != nil {
|
||||
testingCfg := setting.Cfg.Section("integration-tests")
|
||||
if setting.CfgProvider != nil {
|
||||
testingCfg := setting.CfgProvider.Section("integration-tests")
|
||||
tests.SlowTest = testingCfg.Key("SLOW_TEST").MustDuration(tests.SlowTest)
|
||||
tests.SlowFlush = testingCfg.Key("SLOW_FLUSH").MustDuration(tests.SlowFlush)
|
||||
}
|
||||
|
|
|
@ -57,7 +57,7 @@ func initMigrationTest(t *testing.T) func() {
|
|||
setting.CustomConf = giteaConf
|
||||
}
|
||||
|
||||
setting.LoadForTest()
|
||||
setting.InitProviderAndLoadCommonSettingsForTest()
|
||||
|
||||
assert.True(t, len(setting.RepoRootPath) != 0)
|
||||
assert.NoError(t, util.RemoveAll(setting.RepoRootPath))
|
||||
|
@ -83,8 +83,8 @@ func initMigrationTest(t *testing.T) func() {
|
|||
}
|
||||
|
||||
assert.NoError(t, git.InitFull(context.Background()))
|
||||
setting.InitDBConfig()
|
||||
setting.NewLogServices(true)
|
||||
setting.LoadDBSetting()
|
||||
setting.InitLogs(true)
|
||||
return deferFn
|
||||
}
|
||||
|
||||
|
@ -292,7 +292,7 @@ func doMigrationTest(t *testing.T, version string) {
|
|||
return
|
||||
}
|
||||
|
||||
setting.NewXORMLogService(false)
|
||||
setting.InitSQLLog(false)
|
||||
|
||||
err := db.InitEngineWithMigration(context.Background(), wrappedMigrate)
|
||||
assert.NoError(t, err)
|
||||
|
|
|
@ -57,7 +57,7 @@ func InitTest(requireGitea bool) {
|
|||
}
|
||||
|
||||
setting.SetCustomPathAndConf("", "", "")
|
||||
setting.LoadForTest()
|
||||
setting.InitProviderAndLoadCommonSettingsForTest()
|
||||
setting.Repository.DefaultBranch = "master" // many test code still assume that default branch is called "master"
|
||||
_ = util.RemoveAll(repo_module.LocalCopyPath())
|
||||
|
||||
|
@ -65,7 +65,7 @@ func InitTest(requireGitea bool) {
|
|||
log.Fatal("git.InitOnceWithSync: %v", err)
|
||||
}
|
||||
|
||||
setting.InitDBConfig()
|
||||
setting.LoadDBSetting()
|
||||
if err := storage.Init(); err != nil {
|
||||
fmt.Printf("Init storage failed: %v", err)
|
||||
os.Exit(1)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue