1
0
Fork 0
mirror of https://codeberg.org/forgejo/forgejo.git synced 2025-07-19 01:29:40 +02:00

[v12.0/forgejo] fix(ui): prevent render failure on faulty org settings post (#8555)

**Backport:** https://codeberg.org/forgejo/forgejo/pulls/8553

Fix regression of https://codeberg.org/forgejo/forgejo/pulls/7998
Same as https://codeberg.org/forgejo/forgejo/pulls/8236 but for orgs

Amended existing tests to verify which error messages show up and not show up.

Co-authored-by: 0ko <0ko@noreply.codeberg.org>
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/8555
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
Co-authored-by: forgejo-backport-action <forgejo-backport-action@noreply.codeberg.org>
Co-committed-by: forgejo-backport-action <forgejo-backport-action@noreply.codeberg.org>
This commit is contained in:
forgejo-backport-action 2025-07-18 14:01:38 +02:00 committed by Gusted
parent c2cd3fb19b
commit 1d7c366588
2 changed files with 14 additions and 3 deletions

View file

@ -71,6 +71,9 @@ func SettingsPost(ctx *context.Context) {
ctx.Data["PageIsSettingsOptions"] = true ctx.Data["PageIsSettingsOptions"] = true
ctx.Data["CurrentVisibility"] = ctx.Org.Organization.Visibility ctx.Data["CurrentVisibility"] = ctx.Org.Organization.Visibility
ctx.Data["CooldownPeriod"] = setting.Service.UsernameCooldownPeriod ctx.Data["CooldownPeriod"] = setting.Service.UsernameCooldownPeriod
ctx.Data["MaxAvatarFileSize"] = setting.Avatar.MaxFileSize
ctx.Data["MaxAvatarWidth"] = setting.Avatar.MaxWidth
ctx.Data["MaxAvatarHeight"] = setting.Avatar.MaxHeight
if ctx.HasError() { if ctx.HasError() {
ctx.HTML(http.StatusOK, tplSettingsOptions) ctx.HTML(http.StatusOK, tplSettingsOptions)

View file

@ -57,7 +57,9 @@ func TestOrgSettingsChangeEmail(t *testing.T) {
settings := getOrgSettingsFormData(t, session, orgName) settings := getOrgSettingsFormData(t, session, orgName)
settings["email"] = "invalid" settings["email"] = "invalid"
session.MakeRequest(t, NewRequestWithValues(t, "POST", settingsURL, settings), http.StatusOK) doc := NewHTMLParser(t, session.MakeRequest(t, NewRequestWithValues(t, "POST", settingsURL, settings), http.StatusOK).Body)
doc.AssertElement(t, ".status-page-500", false)
doc.AssertElement(t, ".flash-error", true)
org := getOrgSettings(t, token, orgName) org := getOrgSettings(t, token, orgName)
assert.Equal(t, "org3@example.com", org.Email) assert.Equal(t, "org3@example.com", org.Email)
@ -69,7 +71,10 @@ func TestOrgSettingsChangeEmail(t *testing.T) {
settings := getOrgSettingsFormData(t, session, orgName) settings := getOrgSettingsFormData(t, session, orgName)
settings["email"] = "example@example.com" settings["email"] = "example@example.com"
session.MakeRequest(t, NewRequestWithValues(t, "POST", settingsURL, settings), http.StatusSeeOther) doc := NewHTMLParser(t, session.MakeRequest(t, NewRequestWithValues(t, "POST", settingsURL, settings), http.StatusSeeOther).Body)
doc.AssertElement(t, "body", true)
doc.AssertElement(t, ".status-page-500", false)
doc.AssertElement(t, ".flash-error", false)
org := getOrgSettings(t, token, orgName) org := getOrgSettings(t, token, orgName)
assert.Equal(t, "example@example.com", org.Email) assert.Equal(t, "example@example.com", org.Email)
@ -81,7 +86,10 @@ func TestOrgSettingsChangeEmail(t *testing.T) {
settings := getOrgSettingsFormData(t, session, orgName) settings := getOrgSettingsFormData(t, session, orgName)
settings["email"] = "" settings["email"] = ""
session.MakeRequest(t, NewRequestWithValues(t, "POST", settingsURL, settings), http.StatusSeeOther) doc := NewHTMLParser(t, session.MakeRequest(t, NewRequestWithValues(t, "POST", settingsURL, settings), http.StatusSeeOther).Body)
doc.AssertElement(t, "body", true)
doc.AssertElement(t, ".status-page-500", false)
doc.AssertElement(t, ".flash-error", false)
org := getOrgSettings(t, token, orgName) org := getOrgSettings(t, token, orgName)
assert.Empty(t, org.Email) assert.Empty(t, org.Email)