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
42 lines
1.2 KiB
Go
42 lines
1.2 KiB
Go
//go:build windows
|
|
|
|
package computer
|
|
|
|
import (
|
|
"context"
|
|
"os"
|
|
"testing"
|
|
"time"
|
|
)
|
|
|
|
// TestWindowsComputerDriverE2E is opt-in because it starts the installed
|
|
// cua-driver daemon and exercises the real MCP transport. CI keeps the test
|
|
// skipped unless a driver path and an interactive Windows session are present.
|
|
func TestWindowsComputerDriverE2E(t *testing.T) {
|
|
if os.Getenv("TUTTI_COMPUTER_E2E") != "1" {
|
|
t.Skip("set TUTTI_COMPUTER_E2E=1 to run the Windows cua-driver MCP smoke test")
|
|
}
|
|
ctx, cancel := context.WithTimeout(context.Background(), 30*time.Second)
|
|
defer cancel()
|
|
|
|
service := NewService()
|
|
defer service.Close()
|
|
if err := service.CheckReady(ctx); err != nil {
|
|
t.Fatalf("computer readiness: %v", err)
|
|
}
|
|
catalog, err := service.ListTools(ctx, "windows-e2e", "")
|
|
if err != nil {
|
|
t.Fatalf("computer MCP tools/list: %v", err)
|
|
}
|
|
if len(catalog.Tools) == 0 {
|
|
t.Fatal("computer MCP tools/list returned no tools")
|
|
}
|
|
result, err := service.CallNativeTool(ctx, "windows-e2e", "", "get_screen_size", nil)
|
|
if err != nil {
|
|
t.Fatalf("computer MCP get_screen_size: %v", err)
|
|
}
|
|
if result.Text == "" && len(result.StructuredContent) == 0 {
|
|
t.Fatal("computer MCP get_screen_size returned no content")
|
|
}
|
|
}
|