testing

package
v0.3.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 13, 2026 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

Package testing provides test utilities for the registry service.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type FakeRegistry

type FakeRegistry struct {

	// Data fields for simple data-driven tests
	Servers      []*apiv0.ServerResponse
	Agents       []*models.AgentResponse
	Skills       []*models.SkillResponse
	Deployments  []*models.Deployment
	Providers    []*models.Provider
	ServerReadme *database.ServerReadme

	// Embedding metadata maps (keyed by "name@version")
	ServerEmbeddingMeta map[string]*database.SemanticEmbeddingMetadata
	AgentEmbeddingMeta  map[string]*database.SemanticEmbeddingMetadata

	// Call counters for verification
	UpsertServerEmbeddingCalls int
	UpsertAgentEmbeddingCalls  int

	// Function hooks for custom behavior (take precedence over data fields when set)
	ListServersFn                 func(ctx context.Context, filter *database.ServerFilter, cursor string, limit int) ([]*apiv0.ServerResponse, string, error)
	GetServerByNameFn             func(ctx context.Context, serverName string) (*apiv0.ServerResponse, error)
	GetServerByNameAndVersionFn   func(ctx context.Context, serverName, version string) (*apiv0.ServerResponse, error)
	GetAllVersionsByServerNameFn  func(ctx context.Context, serverName string) ([]*apiv0.ServerResponse, error)
	CreateServerFn                func(ctx context.Context, req *apiv0.ServerJSON) (*apiv0.ServerResponse, error)
	UpdateServerFn                func(ctx context.Context, serverName, version string, req *apiv0.ServerJSON, newStatus *string) (*apiv0.ServerResponse, error)
	StoreServerReadmeFn           func(ctx context.Context, serverName, version string, content []byte, contentType string) error
	GetServerReadmeLatestFn       func(ctx context.Context, serverName string) (*database.ServerReadme, error)
	GetServerReadmeByVersionFn    func(ctx context.Context, serverName, version string) (*database.ServerReadme, error)
	DeleteServerFn                func(ctx context.Context, serverName, version string) error
	UpsertServerEmbeddingFn       func(ctx context.Context, serverName, version string, embedding *database.SemanticEmbedding) error
	GetServerEmbeddingMetadataFn  func(ctx context.Context, serverName, version string) (*database.SemanticEmbeddingMetadata, error)
	ListAgentsFn                  func(ctx context.Context, filter *database.AgentFilter, cursor string, limit int) ([]*models.AgentResponse, string, error)
	GetAgentByNameFn              func(ctx context.Context, agentName string) (*models.AgentResponse, error)
	GetAgentByNameAndVersionFn    func(ctx context.Context, agentName, version string) (*models.AgentResponse, error)
	GetAllVersionsByAgentNameFn   func(ctx context.Context, agentName string) ([]*models.AgentResponse, error)
	CreateAgentFn                 func(ctx context.Context, req *models.AgentJSON) (*models.AgentResponse, error)
	ResolveAgentManifestSkillsFn  func(ctx context.Context, manifest *models.AgentManifest) ([]platformtypes.AgentSkillRef, error)
	ResolveAgentManifestPromptsFn func(ctx context.Context, manifest *models.AgentManifest) ([]platformtypes.ResolvedPrompt, error)
	DeleteAgentFn                 func(ctx context.Context, agentName, version string) error
	UpsertAgentEmbeddingFn        func(ctx context.Context, agentName, version string, embedding *database.SemanticEmbedding) error
	GetAgentEmbeddingMetadataFn   func(ctx context.Context, agentName, version string) (*database.SemanticEmbeddingMetadata, error)
	ListSkillsFn                  func(ctx context.Context, filter *database.SkillFilter, cursor string, limit int) ([]*models.SkillResponse, string, error)
	GetSkillByNameFn              func(ctx context.Context, skillName string) (*models.SkillResponse, error)
	GetSkillByNameAndVersionFn    func(ctx context.Context, skillName, version string) (*models.SkillResponse, error)
	GetAllVersionsBySkillNameFn   func(ctx context.Context, skillName string) ([]*models.SkillResponse, error)
	CreateSkillFn                 func(ctx context.Context, req *models.SkillJSON) (*models.SkillResponse, error)
	DeleteSkillFn                 func(ctx context.Context, skillName, version string) error
	GetDeploymentsFn              func(ctx context.Context, filter *models.DeploymentFilter) ([]*models.Deployment, error)
	ListProvidersFn               func(ctx context.Context, platform *string) ([]*models.Provider, error)
	GetProviderByIDFn             func(ctx context.Context, providerID string) (*models.Provider, error)
	CreateProviderFn              func(ctx context.Context, in *models.CreateProviderInput) (*models.Provider, error)
	UpdateProviderFn              func(ctx context.Context, providerID string, in *models.UpdateProviderInput) (*models.Provider, error)
	DeleteProviderFn              func(ctx context.Context, providerID string) error
	GetDeploymentByIDFn           func(ctx context.Context, id string) (*models.Deployment, error)
	DeployServerFn                func(ctx context.Context, serverName, version string, config map[string]string, preferRemote bool, providerID string) (*models.Deployment, error)
	DeployAgentFn                 func(ctx context.Context, agentName, version string, config map[string]string, preferRemote bool, providerID string) (*models.Deployment, error)
	RemoveDeploymentByIDFn        func(ctx context.Context, id string) error
	CreateDeploymentFn            func(ctx context.Context, req *models.Deployment) (*models.Deployment, error)
	UndeployDeploymentFn          func(ctx context.Context, deployment *models.Deployment) error
	GetDeploymentLogsFn           func(ctx context.Context, deployment *models.Deployment) ([]string, error)
	CancelDeploymentFn            func(ctx context.Context, deployment *models.Deployment) error
	ReconcileAllFn                func(ctx context.Context) error

	// Prompt fields and hooks
	Prompts                      []*models.PromptResponse
	ListPromptsFn                func(ctx context.Context, filter *database.PromptFilter, cursor string, limit int) ([]*models.PromptResponse, string, error)
	GetPromptByNameFn            func(ctx context.Context, promptName string) (*models.PromptResponse, error)
	GetPromptByNameAndVersionFn  func(ctx context.Context, promptName, version string) (*models.PromptResponse, error)
	GetAllVersionsByPromptNameFn func(ctx context.Context, promptName string) ([]*models.PromptResponse, error)
	CreatePromptFn               func(ctx context.Context, req *models.PromptJSON) (*models.PromptResponse, error)
	DeletePromptFn               func(ctx context.Context, promptName, version string) error
	// contains filtered or unexported fields
}

FakeRegistry is a configurable fake implementation of service.RegistryService for testing. It supports both data-driven setup via struct fields and function hooks for custom behavior.

func NewFakeRegistry

func NewFakeRegistry() *FakeRegistry

NewFakeRegistry creates a new FakeRegistry with initialized maps.

func (*FakeRegistry) CancelDeployment added in v0.2.0

func (f *FakeRegistry) CancelDeployment(ctx context.Context, deployment *models.Deployment) error

func (*FakeRegistry) CreateAgent

func (f *FakeRegistry) CreateAgent(ctx context.Context, req *models.AgentJSON) (*models.AgentResponse, error)

func (*FakeRegistry) CreateDeployment added in v0.2.0

func (f *FakeRegistry) CreateDeployment(ctx context.Context, req *models.Deployment) (*models.Deployment, error)

func (*FakeRegistry) CreatePrompt added in v0.2.0

func (f *FakeRegistry) CreatePrompt(ctx context.Context, req *models.PromptJSON) (*models.PromptResponse, error)

func (*FakeRegistry) CreateProvider added in v0.2.0

func (f *FakeRegistry) CreateProvider(ctx context.Context, in *models.CreateProviderInput) (*models.Provider, error)

func (*FakeRegistry) CreateServer

func (f *FakeRegistry) CreateServer(ctx context.Context, req *apiv0.ServerJSON) (*apiv0.ServerResponse, error)

func (*FakeRegistry) CreateSkill

func (f *FakeRegistry) CreateSkill(ctx context.Context, req *models.SkillJSON) (*models.SkillResponse, error)

func (*FakeRegistry) DeleteAgent

func (f *FakeRegistry) DeleteAgent(ctx context.Context, agentName, version string) error

func (*FakeRegistry) DeletePrompt added in v0.2.0

func (f *FakeRegistry) DeletePrompt(ctx context.Context, promptName, version string) error

func (*FakeRegistry) DeleteProvider added in v0.2.0

func (f *FakeRegistry) DeleteProvider(ctx context.Context, providerID string) error

func (*FakeRegistry) DeleteServer

func (f *FakeRegistry) DeleteServer(ctx context.Context, serverName, version string) error

func (*FakeRegistry) DeleteSkill added in v0.3.1

func (f *FakeRegistry) DeleteSkill(ctx context.Context, skillName, version string) error

func (*FakeRegistry) DeployAgent

func (f *FakeRegistry) DeployAgent(ctx context.Context, agentName, version string, config map[string]string, preferRemote bool, providerID string) (*models.Deployment, error)

func (*FakeRegistry) DeployServer

func (f *FakeRegistry) DeployServer(ctx context.Context, serverName, version string, config map[string]string, preferRemote bool, providerID string) (*models.Deployment, error)

func (*FakeRegistry) GetAgentByName

func (f *FakeRegistry) GetAgentByName(ctx context.Context, agentName string) (*models.AgentResponse, error)

func (*FakeRegistry) GetAgentByNameAndVersion

func (f *FakeRegistry) GetAgentByNameAndVersion(ctx context.Context, agentName, version string) (*models.AgentResponse, error)

func (*FakeRegistry) GetAgentEmbeddingMetadata

func (f *FakeRegistry) GetAgentEmbeddingMetadata(ctx context.Context, agentName, version string) (*database.SemanticEmbeddingMetadata, error)

func (*FakeRegistry) GetAllVersionsByAgentName

func (f *FakeRegistry) GetAllVersionsByAgentName(ctx context.Context, agentName string) ([]*models.AgentResponse, error)

func (*FakeRegistry) GetAllVersionsByPromptName added in v0.2.0

func (f *FakeRegistry) GetAllVersionsByPromptName(ctx context.Context, promptName string) ([]*models.PromptResponse, error)

func (*FakeRegistry) GetAllVersionsByServerName

func (f *FakeRegistry) GetAllVersionsByServerName(ctx context.Context, serverName string) ([]*apiv0.ServerResponse, error)

func (*FakeRegistry) GetAllVersionsBySkillName

func (f *FakeRegistry) GetAllVersionsBySkillName(ctx context.Context, skillName string) ([]*models.SkillResponse, error)

func (*FakeRegistry) GetDeploymentByID added in v0.2.0

func (f *FakeRegistry) GetDeploymentByID(ctx context.Context, id string) (*models.Deployment, error)

func (*FakeRegistry) GetDeploymentLogs added in v0.2.0

func (f *FakeRegistry) GetDeploymentLogs(ctx context.Context, deployment *models.Deployment) ([]string, error)

func (*FakeRegistry) GetDeployments

func (f *FakeRegistry) GetDeployments(ctx context.Context, filter *models.DeploymentFilter) ([]*models.Deployment, error)

func (*FakeRegistry) GetPromptByName added in v0.2.0

func (f *FakeRegistry) GetPromptByName(ctx context.Context, promptName string) (*models.PromptResponse, error)

func (*FakeRegistry) GetPromptByNameAndVersion added in v0.2.0

func (f *FakeRegistry) GetPromptByNameAndVersion(ctx context.Context, promptName, version string) (*models.PromptResponse, error)

func (*FakeRegistry) GetProviderByID added in v0.2.0

func (f *FakeRegistry) GetProviderByID(ctx context.Context, providerID string) (*models.Provider, error)

func (*FakeRegistry) GetServerByName

func (f *FakeRegistry) GetServerByName(ctx context.Context, serverName string) (*apiv0.ServerResponse, error)

func (*FakeRegistry) GetServerByNameAndVersion

func (f *FakeRegistry) GetServerByNameAndVersion(ctx context.Context, serverName, version string) (*apiv0.ServerResponse, error)

func (*FakeRegistry) GetServerEmbeddingMetadata

func (f *FakeRegistry) GetServerEmbeddingMetadata(ctx context.Context, serverName, version string) (*database.SemanticEmbeddingMetadata, error)

func (*FakeRegistry) GetServerReadmeByVersion

func (f *FakeRegistry) GetServerReadmeByVersion(ctx context.Context, serverName, version string) (*database.ServerReadme, error)

func (*FakeRegistry) GetServerReadmeLatest

func (f *FakeRegistry) GetServerReadmeLatest(ctx context.Context, serverName string) (*database.ServerReadme, error)

func (*FakeRegistry) GetSkillByName

func (f *FakeRegistry) GetSkillByName(ctx context.Context, skillName string) (*models.SkillResponse, error)

func (*FakeRegistry) GetSkillByNameAndVersion

func (f *FakeRegistry) GetSkillByNameAndVersion(ctx context.Context, skillName, version string) (*models.SkillResponse, error)

func (*FakeRegistry) ListAgents

func (f *FakeRegistry) ListAgents(ctx context.Context, filter *database.AgentFilter, cursor string, limit int) ([]*models.AgentResponse, string, error)

func (*FakeRegistry) ListPrompts added in v0.2.0

func (f *FakeRegistry) ListPrompts(ctx context.Context, filter *database.PromptFilter, cursor string, limit int) ([]*models.PromptResponse, string, error)

func (*FakeRegistry) ListProviders added in v0.2.0

func (f *FakeRegistry) ListProviders(ctx context.Context, platform *string) ([]*models.Provider, error)

func (*FakeRegistry) ListServers

func (f *FakeRegistry) ListServers(ctx context.Context, filter *database.ServerFilter, cursor string, limit int) ([]*apiv0.ServerResponse, string, error)

func (*FakeRegistry) ListSkills

func (f *FakeRegistry) ListSkills(ctx context.Context, filter *database.SkillFilter, cursor string, limit int) ([]*models.SkillResponse, string, error)

func (*FakeRegistry) ReconcileAll

func (f *FakeRegistry) ReconcileAll(ctx context.Context) error

func (*FakeRegistry) RemoveDeploymentByID added in v0.2.0

func (f *FakeRegistry) RemoveDeploymentByID(ctx context.Context, id string) error

func (*FakeRegistry) ResolveAgentManifestPrompts added in v0.3.1

func (f *FakeRegistry) ResolveAgentManifestPrompts(ctx context.Context, manifest *models.AgentManifest) ([]platformtypes.ResolvedPrompt, error)

func (*FakeRegistry) ResolveAgentManifestSkills added in v0.3.0

func (f *FakeRegistry) ResolveAgentManifestSkills(ctx context.Context, manifest *models.AgentManifest) ([]platformtypes.AgentSkillRef, error)

func (*FakeRegistry) StoreServerReadme

func (f *FakeRegistry) StoreServerReadme(ctx context.Context, serverName, version string, content []byte, contentType string) error

func (*FakeRegistry) UndeployDeployment added in v0.2.0

func (f *FakeRegistry) UndeployDeployment(ctx context.Context, deployment *models.Deployment) error

func (*FakeRegistry) UpdateProvider added in v0.2.0

func (f *FakeRegistry) UpdateProvider(ctx context.Context, providerID string, in *models.UpdateProviderInput) (*models.Provider, error)

func (*FakeRegistry) UpdateServer

func (f *FakeRegistry) UpdateServer(ctx context.Context, serverName, version string, req *apiv0.ServerJSON, newStatus *string) (*apiv0.ServerResponse, error)

func (*FakeRegistry) UpsertAgentEmbedding

func (f *FakeRegistry) UpsertAgentEmbedding(ctx context.Context, agentName, version string, embedding *database.SemanticEmbedding) error

func (*FakeRegistry) UpsertServerEmbedding

func (f *FakeRegistry) UpsertServerEmbedding(ctx context.Context, serverName, version string, embedding *database.SemanticEmbedding) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL