Files
tutti/services/tuttid/api/daemon_generated_route_availability_test.go
agent-radar 2ed3415fb7
Publish Claude Code Binaries / Stage and publish binaries (push) Canceled after 0s
Publish Tutti App Runtime / Build darwin-arm64 (push) Canceled after 0s
Publish Tutti App Runtime / Build darwin-amd64 (push) Canceled after 0s
Publish Tutti App Runtime / Build linux-amd64 (push) Canceled after 0s
Publish Tutti App Runtime / Build windows-amd64 (push) Canceled after 0s
Sync Tutti Agent Skills / sync (push) Canceled after 0s
Windows Agent Adapters / Test Windows agent adapters (push) Canceled after 0s
Windows Daemon Adapters / Test Windows daemon adapters (push) Canceled after 0s
Publish Tutti App Runtime / Publish runtime catalog (push) Canceled after 0s
源码快照 @ 2026-09-01 (source-only, 剔除非源码素材)
2026-09-01 20:17:27 +08:00

64 lines
2.1 KiB
Go

package api
import (
"net/http"
"testing"
tuttigenerated "github.com/tutti-os/tutti/services/tuttid/api/generated"
"github.com/tutti-os/tutti/services/tuttid/apierrors"
)
func TestDaemonAPIGeneratedRoutesWorkspaceTerminalsReturnServiceUnavailable(t *testing.T) {
mux := http.NewServeMux()
RegisterRoutes(mux, NewRoutes(DaemonAPI{}))
recorder := performGeneratedRouteRequest(t, mux, http.MethodGet, "/v1/workspaces/ws-1/terminals", nil)
if recorder.Code != http.StatusServiceUnavailable {
t.Fatalf("status = %d, want %d; body: %s", recorder.Code, http.StatusServiceUnavailable, recorder.Body.String())
}
assertGeneratedRouteError(
t,
recorder,
tuttigenerated.ServiceUnavailable,
apierrors.ReasonWorkspaceTerminalUnavailable,
"workspace terminal service is unavailable",
)
}
func TestDaemonAPIGeneratedRoutesSearchWorkspaceIssueReferencesReturnServiceUnavailable(t *testing.T) {
mux := http.NewServeMux()
RegisterRoutes(mux, NewRoutes(DaemonAPI{}))
recorder := performGeneratedRouteRequest(t, mux, http.MethodPost, "/v1/workspaces/ws-1/issue-references/search", map[string]any{"query": "login"})
if recorder.Code != http.StatusServiceUnavailable {
t.Fatalf("status = %d, want %d; body: %s", recorder.Code, http.StatusServiceUnavailable, recorder.Body.String())
}
assertGeneratedRouteError(
t,
recorder,
tuttigenerated.ServiceUnavailable,
apierrors.ReasonWorkspaceIssueServiceUnavailable,
"workspace issue-manager service is unavailable",
)
}
func TestDaemonAPIGeneratedRoutesAgentSessionsReturnServiceUnavailable(t *testing.T) {
mux := http.NewServeMux()
RegisterRoutes(mux, NewRoutes(DaemonAPI{}))
recorder := performGeneratedRouteRequest(t, mux, http.MethodGet, "/v1/workspaces/ws-1/agent-sessions", nil)
if recorder.Code != http.StatusServiceUnavailable {
t.Fatalf("status = %d, want %d; body: %s", recorder.Code, http.StatusServiceUnavailable, recorder.Body.String())
}
assertGeneratedRouteError(
t,
recorder,
tuttigenerated.ServiceUnavailable,
apierrors.ReasonWorkspaceAgentSessionUnavailable,
"workspace agent session service is unavailable",
)
}