skillhub/github-sync-go/cmd/github-sync/main_test.go
XiaoSeS 2df4c913cb feat(github-sync): add continuous public repository discovery and skill sync
Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
2026-10-20 14:40:46 +08:00

27 lines
993 B
Go

package main
import (
"strings"
"testing"
)
func TestLoadConfigBoundsRepositoryWorkersByTotalWorkspace(t *testing.T) {
t.Setenv("SKILLHUB_GITHUB_SYNC_JAVA_URL", "http://127.0.0.1:8080/internal/github-sync/v1")
t.Setenv("SKILLHUB_GITHUB_SYNC_SERVICE_TOKEN", strings.Repeat("t", 32))
t.Setenv("SKILLHUB_GITHUB_SYNC_TEMP_ROOT", t.TempDir())
t.Setenv("SKILLHUB_GITHUB_SYNC_MAX_WORKSPACE_BYTES", "33554432")
t.Setenv("SKILLHUB_GITHUB_SYNC_TOTAL_WORKSPACE_BYTES", "67108864")
t.Setenv("SKILLHUB_GITHUB_SYNC_MIN_FREE_BYTES", "8388608")
t.Setenv("SKILLHUB_GITHUB_SYNC_REPOSITORY_WORKERS", "2")
settings, err := loadConfig()
if err != nil || settings.Pool.RepositoryWorkers != 2 {
t.Fatalf("two workers within the total budget should start: workers=%d, err=%v",
settings.Pool.RepositoryWorkers, err)
}
t.Setenv("SKILLHUB_GITHUB_SYNC_REPOSITORY_WORKERS", "3")
if _, err := loadConfig(); err == nil {
t.Fatal("workers exceeding the total workspace budget must be rejected")
}
}