provider

package
v0.5.1 Latest Latest
Warning

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

Go to latest
Published: Jun 12, 2025 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Model

type Model struct {
	Model     string `json:"model"`
	Alias     string `json:"alias"`
	Client    string `json:"client"`
	MaxTokens int64  `json:"max_tokens"`
	Rpm       int    `json:"rpm"`
	Default   bool   `json:"default"`
	Image     bool   `json:"image"`
}

type Provider

type Provider struct {
	ID       int     `json:"id"`
	Name     string  `json:"name"`
	Type     string  `json:"type"`
	Key      string  `json:"key"`
	BaseURL  string  `json:"base_url"`
	Models   []Model `json:"models"`
	Editable bool    `json:"editable"`
	Enabled  bool    `json:"enabled"`
}

type ProviderService

type ProviderService interface {
	ListProviders(ctx context.Context) ([]Provider, error)
	CreateProvider(ctx context.Context, provider Provider) error
	UpdateProvider(ctx context.Context, id int, provider Provider) error
	DeleteProvider(ctx context.Context, id int) error
	WithSyncCallback(callback func(ctx context.Context, providers []Provider))
	BuildProviders(ctx context.Context) error
}

type ProviderServiceImpl

type ProviderServiceImpl struct {
	// contains filtered or unexported fields
}

func NewProviderService

func NewProviderService(cfg *config.Config, db *ent.Client, logger *zap.SugaredLogger) *ProviderServiceImpl

func (*ProviderServiceImpl) BuildProviders

func (p *ProviderServiceImpl) BuildProviders(ctx context.Context) error

func (*ProviderServiceImpl) CreateProvider

func (p *ProviderServiceImpl) CreateProvider(ctx context.Context, provider Provider) error

func (*ProviderServiceImpl) DeleteProvider

func (p *ProviderServiceImpl) DeleteProvider(ctx context.Context, id int) error

func (*ProviderServiceImpl) ListProviders

func (p *ProviderServiceImpl) ListProviders(ctx context.Context) ([]Provider, error)

func (*ProviderServiceImpl) UpdateProvider

func (p *ProviderServiceImpl) UpdateProvider(ctx context.Context, id int, provider Provider) error

func (*ProviderServiceImpl) WithSyncCallback

func (p *ProviderServiceImpl) WithSyncCallback(callback func(ctx context.Context, providers []Provider))

type ProviderServiceMock

type ProviderServiceMock struct {
	// BuildProvidersFunc mocks the BuildProviders method.
	BuildProvidersFunc func(ctx context.Context) error

	// CreateProviderFunc mocks the CreateProvider method.
	CreateProviderFunc func(ctx context.Context, provider Provider) error

	// DeleteProviderFunc mocks the DeleteProvider method.
	DeleteProviderFunc func(ctx context.Context, id int) error

	// ListProvidersFunc mocks the ListProviders method.
	ListProvidersFunc func(ctx context.Context) ([]Provider, error)

	// UpdateProviderFunc mocks the UpdateProvider method.
	UpdateProviderFunc func(ctx context.Context, id int, provider Provider) error

	// WithSyncCallbackFunc mocks the WithSyncCallback method.
	WithSyncCallbackFunc func(callback func(ctx context.Context, providers []Provider))
	// contains filtered or unexported fields
}

ProviderServiceMock is a mock implementation of ProviderService.

func TestSomethingThatUsesProviderService(t *testing.T) {

	// make and configure a mocked ProviderService
	mockedProviderService := &ProviderServiceMock{
		BuildProvidersFunc: func(ctx context.Context) error {
			panic("mock out the BuildProviders method")
		},
		CreateProviderFunc: func(ctx context.Context, provider Provider) error {
			panic("mock out the CreateProvider method")
		},
		DeleteProviderFunc: func(ctx context.Context, id int) error {
			panic("mock out the DeleteProvider method")
		},
		ListProvidersFunc: func(ctx context.Context) ([]Provider, error) {
			panic("mock out the ListProviders method")
		},
		UpdateProviderFunc: func(ctx context.Context, id int, provider Provider) error {
			panic("mock out the UpdateProvider method")
		},
		WithSyncCallbackFunc: func(callback func(ctx context.Context, providers []Provider))  {
			panic("mock out the WithSyncCallback method")
		},
	}

	// use mockedProviderService in code that requires ProviderService
	// and then make assertions.

}

func (*ProviderServiceMock) BuildProviders

func (mock *ProviderServiceMock) BuildProviders(ctx context.Context) error

BuildProviders calls BuildProvidersFunc.

func (*ProviderServiceMock) BuildProvidersCalls

func (mock *ProviderServiceMock) BuildProvidersCalls() []struct {
	Ctx context.Context
}

BuildProvidersCalls gets all the calls that were made to BuildProviders. Check the length with:

len(mockedProviderService.BuildProvidersCalls())

func (*ProviderServiceMock) CreateProvider

func (mock *ProviderServiceMock) CreateProvider(ctx context.Context, provider Provider) error

CreateProvider calls CreateProviderFunc.

func (*ProviderServiceMock) CreateProviderCalls

func (mock *ProviderServiceMock) CreateProviderCalls() []struct {
	Ctx      context.Context
	Provider Provider
}

CreateProviderCalls gets all the calls that were made to CreateProvider. Check the length with:

len(mockedProviderService.CreateProviderCalls())

func (*ProviderServiceMock) DeleteProvider

func (mock *ProviderServiceMock) DeleteProvider(ctx context.Context, id int) error

DeleteProvider calls DeleteProviderFunc.

func (*ProviderServiceMock) DeleteProviderCalls

func (mock *ProviderServiceMock) DeleteProviderCalls() []struct {
	Ctx context.Context
	ID  int
}

DeleteProviderCalls gets all the calls that were made to DeleteProvider. Check the length with:

len(mockedProviderService.DeleteProviderCalls())

func (*ProviderServiceMock) ListProviders

func (mock *ProviderServiceMock) ListProviders(ctx context.Context) ([]Provider, error)

ListProviders calls ListProvidersFunc.

func (*ProviderServiceMock) ListProvidersCalls

func (mock *ProviderServiceMock) ListProvidersCalls() []struct {
	Ctx context.Context
}

ListProvidersCalls gets all the calls that were made to ListProviders. Check the length with:

len(mockedProviderService.ListProvidersCalls())

func (*ProviderServiceMock) UpdateProvider

func (mock *ProviderServiceMock) UpdateProvider(ctx context.Context, id int, provider Provider) error

UpdateProvider calls UpdateProviderFunc.

func (*ProviderServiceMock) UpdateProviderCalls

func (mock *ProviderServiceMock) UpdateProviderCalls() []struct {
	Ctx      context.Context
	ID       int
	Provider Provider
}

UpdateProviderCalls gets all the calls that were made to UpdateProvider. Check the length with:

len(mockedProviderService.UpdateProviderCalls())

func (*ProviderServiceMock) WithSyncCallback

func (mock *ProviderServiceMock) WithSyncCallback(callback func(ctx context.Context, providers []Provider))

WithSyncCallback calls WithSyncCallbackFunc.

func (*ProviderServiceMock) WithSyncCallbackCalls

func (mock *ProviderServiceMock) WithSyncCallbackCalls() []struct {
	Callback func(ctx context.Context, providers []Provider)
}

WithSyncCallbackCalls gets all the calls that were made to WithSyncCallback. Check the length with:

len(mockedProviderService.WithSyncCallbackCalls())

type ProviderType added in v0.4.1

type ProviderType string
const (
	ProviderTypeOpenAI           ProviderType = "OpenAI"
	ProviderTypeGemini           ProviderType = "Gemini"
	ProviderTypeOpenAIcompatible ProviderType = "OpenAI-Compatible"
	ProviderTypeAnthropic        ProviderType = "Anthropic"
	ProviderOpenRouter           ProviderType = "OpenRouter"
)

Jump to

Keyboard shortcuts

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