code.gitea.io/gitea@v1.22.3/modules/setting/git_test.go (about) 1 // Copyright 2019 The Gitea Authors. All rights reserved. 2 // SPDX-License-Identifier: MIT 3 4 package setting 5 6 import ( 7 "testing" 8 9 "github.com/stretchr/testify/assert" 10 ) 11 12 func TestGitConfig(t *testing.T) { 13 oldGit := Git 14 oldGitConfig := GitConfig 15 defer func() { 16 Git = oldGit 17 GitConfig = oldGitConfig 18 }() 19 20 cfg, err := NewConfigProviderFromData(` 21 [git.config] 22 a.b = 1 23 `) 24 assert.NoError(t, err) 25 loadGitFrom(cfg) 26 assert.EqualValues(t, "1", GitConfig.Options["a.b"]) 27 assert.EqualValues(t, "histogram", GitConfig.Options["diff.algorithm"]) 28 29 cfg, err = NewConfigProviderFromData(` 30 [git.config] 31 diff.algorithm = other 32 `) 33 assert.NoError(t, err) 34 loadGitFrom(cfg) 35 assert.EqualValues(t, "other", GitConfig.Options["diff.algorithm"]) 36 } 37 38 func TestGitReflog(t *testing.T) { 39 oldGit := Git 40 oldGitConfig := GitConfig 41 defer func() { 42 Git = oldGit 43 GitConfig = oldGitConfig 44 }() 45 46 // default reflog config without legacy options 47 cfg, err := NewConfigProviderFromData(``) 48 assert.NoError(t, err) 49 loadGitFrom(cfg) 50 51 assert.EqualValues(t, "true", GitConfig.GetOption("core.logAllRefUpdates")) 52 assert.EqualValues(t, "90", GitConfig.GetOption("gc.reflogExpire")) 53 54 // custom reflog config by legacy options 55 cfg, err = NewConfigProviderFromData(` 56 [git.reflog] 57 ENABLED = false 58 EXPIRATION = 123 59 `) 60 assert.NoError(t, err) 61 loadGitFrom(cfg) 62 63 assert.EqualValues(t, "false", GitConfig.GetOption("core.logAllRefUpdates")) 64 assert.EqualValues(t, "123", GitConfig.GetOption("gc.reflogExpire")) 65 }