feat: Admin settings 侧栏 aside_widgets 开关与排序
让运营可在 /admin/settings 配置右栏组件,并与友链页 aside 开关共用同一份 JSON。 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
31
routers/web/aside_widgets_test.go
Normal file
31
routers/web/aside_widgets_test.go
Normal file
@@ -0,0 +1,31 @@
|
||||
package web
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"git.iioio.com/freefire/jiang13-forum/services"
|
||||
)
|
||||
|
||||
func TestMoveAsideWidget(t *testing.T) {
|
||||
base := []services.AsideWidget{
|
||||
{ID: services.AsideWidgetTagCloud, Enabled: true},
|
||||
{ID: services.AsideWidgetRecentComments, Enabled: false},
|
||||
{ID: services.AsideWidgetRecentUsers, Enabled: false},
|
||||
{ID: services.AsideWidgetFriendLinks, Enabled: true},
|
||||
}
|
||||
|
||||
up := moveAsideWidget(append([]services.AsideWidget(nil), base...), "up:"+services.AsideWidgetRecentComments)
|
||||
if up[0].ID != services.AsideWidgetRecentComments || up[1].ID != services.AsideWidgetTagCloud {
|
||||
t.Fatalf("up move failed: %+v", up)
|
||||
}
|
||||
|
||||
down := moveAsideWidget(append([]services.AsideWidget(nil), base...), "down:"+services.AsideWidgetTagCloud)
|
||||
if down[0].ID != services.AsideWidgetRecentComments || down[1].ID != services.AsideWidgetTagCloud {
|
||||
t.Fatalf("down move failed: %+v", down)
|
||||
}
|
||||
|
||||
noop := moveAsideWidget(append([]services.AsideWidget(nil), base...), "up:"+services.AsideWidgetTagCloud)
|
||||
if noop[0].ID != services.AsideWidgetTagCloud {
|
||||
t.Fatalf("top up should noop: %+v", noop)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user