feat: sync deployed v1.0.0-rc.38-custom.42

Sync production source including routing, billing, Astra detection and public uptime. Update custom build instructions and license packaging.
This commit is contained in:
cneicy committed 2026-09-26 04:49:11 +08:00
1 parent aa6c3f50f4
commit ceddfd3d6b
828 files changed
+122253 -13702

No files matched your search

+34
View File
@@ -0,0 +1,34 @@
package model
import (
"testing"
"github.com/stretchr/testify/require"
)
func TestGetGroupPoolParsesLegacyNamesAndEntries(t *testing.T) {
legacy := &Token{AutoGroups: `["vip","pro"]`}
pool, err := legacy.GetGroupPool()
require.NoError(t, err)
require.Equal(t, []TokenGroupEntry{{Group: "vip", Priority: 0}, {Group: "pro", Priority: 1}}, pool)
names, err := legacy.GetAutoGroups()
require.NoError(t, err)
require.Equal(t, []string{"vip", "pro"}, names)
explicit := &Token{AutoGroups: `[{"group":"vip","priority":2},{"group":"pro","priority":1}]`}
pool, err = explicit.GetGroupPool()
require.NoError(t, err)
require.Equal(t, []TokenGroupEntry{{Group: "vip", Priority: 2}, {Group: "pro", Priority: 1}}, pool)
}
func TestSetGroupPoolRoundTrips(t *testing.T) {
token := &Token{}
require.NoError(t, token.SetGroupPool([]TokenGroupEntry{{Group: "vip", Priority: 1}}))
pool, err := token.GetGroupPool()
require.NoError(t, err)
require.Equal(t, []TokenGroupEntry{{Group: "vip", Priority: 1}}, pool)
require.NoError(t, token.SetGroupPool(nil))
require.Empty(t, token.AutoGroups)
}