Documentation
¶
Index ¶
- func AssertAgentRPCError(t testing.TB, err error, code rpc.Code)
- func CollectAllEvents(t testing.TB, recv agentapi.EventReceiver) []agentapi.AgentEvent
- func CreateAgentSession(t testing.TB, svc agentapi.AgentService, cfg agentapi.SessionConfig) *agentapi.CreateAgentSessionResponse
- func DrainReceiver(t testing.TB, recv agentapi.EventReceiver)
- func GenerateAgentMessageRecord(t *rapid.T, turn int) agentapi.AgentMessageRecord
- func GenerateConversationLog(t *rapid.T, maxLen int) []agentapi.AgentMessageRecord
- func NewDriverFactory(...) func(string, agent.DriverConfig) (agent.AgentDriver, error)
- func WaitForReceiverEOF(recv agentapi.EventReceiver, timeout time.Duration) error
- type AgentTestStack
- type MockAgentDriver
- func (d *MockAgentDriver) Resume(ctx context.Context, sess *agent.Session) error
- func (d *MockAgentDriver) SetResumeError(err error)
- func (d *MockAgentDriver) SetStartError(err error)
- func (d *MockAgentDriver) Start(ctx context.Context, sess *agent.Session, prompt string) error
- func (d *MockAgentDriver) StartCount() int
- func (d *MockAgentDriver) Stop(ctx context.Context) error
- func (d *MockAgentDriver) StopCount() int
- func (d *MockAgentDriver) Subscribe(fn func(agent.AgentEvent)) func()
- type MockDriverFactory
- type MockEventPublisher
- type ToolCallEntry
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CollectAllEvents ¶
func CollectAllEvents(t testing.TB, recv agentapi.EventReceiver) []agentapi.AgentEvent
func CreateAgentSession ¶
func CreateAgentSession(t testing.TB, svc agentapi.AgentService, cfg agentapi.SessionConfig) *agentapi.CreateAgentSessionResponse
func DrainReceiver ¶
func DrainReceiver(t testing.TB, recv agentapi.EventReceiver)
func GenerateAgentMessageRecord ¶
func GenerateAgentMessageRecord(t *rapid.T, turn int) agentapi.AgentMessageRecord
func GenerateConversationLog ¶
func GenerateConversationLog(t *rapid.T, maxLen int) []agentapi.AgentMessageRecord
func NewDriverFactory ¶
func NewDriverFactory(resolve func(driverName string, cfg agent.DriverConfig) (*MockAgentDriver, error)) func(string, agent.DriverConfig) (agent.AgentDriver, error)
NewDriverFactory returns a name-aware factory for service.SetDriverFactory.
func WaitForReceiverEOF ¶
func WaitForReceiverEOF(recv agentapi.EventReceiver, timeout time.Duration) error
Types ¶
type AgentTestStack ¶
type AgentTestStack struct {
Service *agent.AgentLoopService
RPCServer *rpcserver.AgentRPCServer
Client *rpcclient.AgentServiceClient
Publisher *MockEventPublisher
DriverFactory *MockDriverFactory
Provider string
Model string
// contains filtered or unexported fields
}
AgentTestStack wires AgentLoopService + AgentRPCServer + AgentServiceClient.
func NewAgentTestStack ¶
func NewAgentTestStack(t testing.TB, opts ...agent.ServiceOption) *AgentTestStack
func (*AgentTestStack) BaseConfig ¶
func (s *AgentTestStack) BaseConfig(sessionID string) agentapi.SessionConfig
func (*AgentTestStack) Close ¶
func (s *AgentTestStack) Close() error
func (*AgentTestStack) CreateAgentSession ¶
func (s *AgentTestStack) CreateAgentSession(ctx context.Context, sessionID string) (*agentapi.CreateAgentSessionResponse, error)
type MockAgentDriver ¶
type MockAgentDriver struct {
TurnScript []agent.AgentEvent
TurnDelay time.Duration
ToolCallScript []ToolCallEntry
BlockOnStart chan struct{}
PanicOnStart bool
// contains filtered or unexported fields
}
MockAgentDriver implements agent.AgentDriver for AgentLoopService tests.
func (*MockAgentDriver) SetResumeError ¶
func (d *MockAgentDriver) SetResumeError(err error)
func (*MockAgentDriver) SetStartError ¶
func (d *MockAgentDriver) SetStartError(err error)
func (*MockAgentDriver) StartCount ¶
func (d *MockAgentDriver) StartCount() int
func (*MockAgentDriver) StopCount ¶
func (d *MockAgentDriver) StopCount() int
func (*MockAgentDriver) Subscribe ¶
func (d *MockAgentDriver) Subscribe(fn func(agent.AgentEvent)) func()
type MockDriverFactory ¶
type MockDriverFactory struct {
// contains filtered or unexported fields
}
MockDriverFactory routes session IDs to configurable MockAgentDrivers.
func NewMockDriverFactory ¶
func NewMockDriverFactory() *MockDriverFactory
func (*MockDriverFactory) Create ¶
func (f *MockDriverFactory) Create(name string, cfg agent.DriverConfig) (agent.AgentDriver, error)
func (*MockDriverFactory) SetDriver ¶
func (f *MockDriverFactory) SetDriver(sessionID string, driver *MockAgentDriver)
type MockEventPublisher ¶
type MockEventPublisher struct {
// contains filtered or unexported fields
}
MockEventPublisher records all published events by session.
func (*MockEventPublisher) EventsForSession ¶
func (p *MockEventPublisher) EventsForSession(sessionID string) []agent.AgentEvent
func (*MockEventPublisher) Publish ¶
func (p *MockEventPublisher) Publish(sessionID string, evt agent.AgentEvent)
type ToolCallEntry ¶
Click to show internal directories.
Click to hide internal directories.