forgejo/modules/setting/admin_test.go
Earl Warren a215e9db30
fix(services): set SendNotificationEmailOnNewUser
regression from 767e9634d3. It changed
the parsing of the [admin] section from being derived from the content
of each key with mustMapSetting(rootCfg, "admin", &Admin) to
explicitly listing all keys in the code.

SEND_NOTIFICATION_EMAIL_ON_NEW_USER was not added and therefore
ignored. As a consequence notifications of newly registered users were
never sent.

(cherry picked from commit ff2a3f4e3a)

Conflict:
   modules/setting/admin_test.go
   EXTERNAL_USER_DISABLE_FEATURES does not exist in v7.0
2024-05-25 17:32:52 +02:00

30 lines
761 B
Go

// Copyright The Forgejo Authors.
// SPDX-License-Identifier: MIT
package setting
import (
"testing"
"code.gitea.io/gitea/modules/container"
"github.com/stretchr/testify/assert"
)
func Test_loadAdminFrom(t *testing.T) {
iniStr := `
[admin]
DISABLE_REGULAR_ORG_CREATION = true
DEFAULT_EMAIL_NOTIFICATIONS = z
SEND_NOTIFICATION_EMAIL_ON_NEW_USER = true
USER_DISABLED_FEATURES = a,b
`
cfg, err := NewConfigProviderFromData(iniStr)
assert.NoError(t, err)
loadAdminFrom(cfg)
assert.EqualValues(t, true, Admin.DisableRegularOrgCreation)
assert.EqualValues(t, "z", Admin.DefaultEmailNotification)
assert.EqualValues(t, true, Admin.SendNotificationEmailOnNewUser)
assert.EqualValues(t, container.SetOf("a", "b"), Admin.UserDisabledFeatures)
}