初始化提交
This commit is contained in:
commit
887c1f449e
963 files changed
+166869
No files matched your search
@@ -0,0 +1,63 @@
|
||||
package providers
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"github.com/chenxin/hunjing/mcp/web-search/internal/models"
|
||||
)
|
||||
|
||||
type mockProvider struct {
|
||||
name models.ProviderKind
|
||||
}
|
||||
|
||||
func (m *mockProvider) Name() models.ProviderKind { return m.name }
|
||||
func (m *mockProvider) Search(ctx context.Context, s string, req *models.SearchRequest) (*models.SearchResult, error) {
|
||||
return &models.SearchResult{Provider: m.name, Query: req.Query}, nil
|
||||
}
|
||||
func (m *mockProvider) HealthCheck(ctx context.Context) error { return nil }
|
||||
func (m *mockProvider) MaxResults() int { return 10 }
|
||||
|
||||
func TestRegistry_RegisterAndGet(t *testing.T) {
|
||||
r := NewRegistry()
|
||||
m := &mockProvider{name: models.ProviderTavily}
|
||||
r.Register(m)
|
||||
|
||||
got, ok := r.Get(models.ProviderTavily)
|
||||
if !ok {
|
||||
t.Fatal("expected to find provider")
|
||||
}
|
||||
if got.Name() != models.ProviderTavily {
|
||||
t.Errorf("expected tavily, got %s", got.Name())
|
||||
}
|
||||
}
|
||||
|
||||
func TestRegistry_All(t *testing.T) {
|
||||
r := NewRegistry()
|
||||
r.Register(&mockProvider{name: models.ProviderTavily})
|
||||
r.Register(&mockProvider{name: models.ProviderBrave})
|
||||
|
||||
all := r.All()
|
||||
if len(all) != 2 {
|
||||
t.Errorf("expected 2 providers, got %d", len(all))
|
||||
}
|
||||
}
|
||||
|
||||
func TestRegistry_GetMissing(t *testing.T) {
|
||||
r := NewRegistry()
|
||||
_, ok := r.Get(models.ProviderBrave)
|
||||
if ok {
|
||||
t.Fatal("expected missing provider")
|
||||
}
|
||||
}
|
||||
|
||||
func TestRegistry_Names(t *testing.T) {
|
||||
r := NewRegistry()
|
||||
r.Register(&mockProvider{name: models.ProviderTavily})
|
||||
r.Register(&mockProvider{name: models.ProviderBrave})
|
||||
|
||||
names := r.Names()
|
||||
if len(names) != 2 {
|
||||
t.Errorf("expected 2 names, got %d", len(names))
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user