MCPcopy Create free account
hub / github.com/Mnexa-AI/e2a / newAgentIDFixture

Function newAgentIDFixture

internal/agent/agent_identity_test.go:41–80  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

39}
40
41func newAgentIDFixture(t *testing.T) *agentIDFixture {
42 t.Helper()
43 pool := testutil.TestDB(t)
44 store := identity.NewStore(pool)
45 smtpRelay := outbound.NewSMTPRelay(&config.OutboundSMTPConfig{})
46 sender := outbound.NewSender(smtpRelay, "test.e2a.dev")
47 api := agent.NewAPI(store, sender, smtpRelay, nil, usage.NewNoopUsageTracker(),
48 "e2a.dev", "test.e2a.dev", "agents.e2a.dev", "https://test.e2a.dev", false)
49
50 // Real RS256 signer — the agent-identity surface requires it.
51 pemKey := testRSAPEM(t)
52 signer, err := agentauth.NewSigner(pemKey, "v1")
53 if err != nil {
54 t.Fatalf("NewSigner: %v", err)
55 }
56 api.SetSigner(signer)
57
58 router := mux.NewRouter()
59 api.RegisterRoutes(router)
60 srv := httptest.NewServer(router)
61 t.Cleanup(srv.Close)
62
63 ctx := context.Background()
64 user, err := store.CreateOrGetUser(ctx, "owner@authflow.example.com", "Owner", "google-authflow")
65 if err != nil {
66 t.Fatalf("CreateOrGetUser: %v", err)
67 }
68 if _, err := store.ClaimOrCreateDomain(ctx, "authflow.example.com", user.ID); err != nil {
69 t.Fatalf("ClaimOrCreateDomain: %v", err)
70 }
71 ag, err := store.CreateAgent(ctx, "bot@authflow.example.com", "authflow.example.com", "", "", "", user.ID)
72 if err != nil {
73 t.Fatalf("CreateAgent: %v", err)
74 }
75 key, err := store.CreateScopedAPIKey(ctx, user.ID, "runtime", identity.ScopeAgent, ag.ID, nil)
76 if err != nil {
77 t.Fatalf("CreateScopedAPIKey: %v", err)
78 }
79 return &agentIDFixture{srv: srv, store: store, pool: pool, api: api, agent: ag, user: user, apiKey: key.PlaintextKey}
80}
81
82// TestAgentIdentity_FullFlow drives the whole autonomous path over HTTP.
83func TestAgentIdentity_FullFlow(t *testing.T) {

Calls 15

SetSignerMethod · 0.95
RegisterRoutesMethod · 0.95
CreateOrGetUserMethod · 0.95
ClaimOrCreateDomainMethod · 0.95
CreateAgentMethod · 0.95
CreateScopedAPIKeyMethod · 0.95
TestDBFunction · 0.92
NewStoreFunction · 0.92
NewSMTPRelayFunction · 0.92
NewSenderFunction · 0.92
NewAPIFunction · 0.92
NewNoopUsageTrackerFunction · 0.92

Tested by

no test coverage detected