mocks

package
v0.20.0 Latest Latest
Warning

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

Go to latest
Published: Dec 18, 2025 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type MockAMQPClient

type MockAMQPClient struct {
	*MockMessagingClient
	// contains filtered or unexported fields
}

MockAMQPClient provides a testify-based mock implementation of the messaging.AMQPClient interface. It extends MockMessagingClient with AMQP-specific operations for advanced testing scenarios.

Example usage:

mockAMQP := &mocks.MockAMQPClient{}
mockAMQP.On("DeclareQueue", "test.queue", true, false, false, false).Return(nil)
mockAMQP.On("PublishToExchange", mock.Anything, mock.MatchedBy(func(opts messaging.PublishOptions) bool {
	return opts.Exchange == "test.exchange"
}), mock.Anything).Return(nil)

func NewMockAMQPClient

func NewMockAMQPClient() *MockAMQPClient

NewMockAMQPClient creates a new mock AMQP client

func (*MockAMQPClient) BindQueue

func (m *MockAMQPClient) BindQueue(queue, exchange, routingKey string, noWait bool) error

BindQueue implements messaging.AMQPClient

func (*MockAMQPClient) ClearInfrastructure

func (m *MockAMQPClient) ClearInfrastructure()

ClearInfrastructure clears all declared infrastructure (for test cleanup)

func (*MockAMQPClient) ConsumeFromQueue

func (m *MockAMQPClient) ConsumeFromQueue(ctx context.Context, options messaging.ConsumeOptions) (<-chan amqp.Delivery, error)

ConsumeFromQueue implements messaging.AMQPClient

func (*MockAMQPClient) DeclareExchange

func (m *MockAMQPClient) DeclareExchange(name, kind string, durable, autoDelete, internal, noWait bool) error

DeclareExchange implements messaging.AMQPClient

func (*MockAMQPClient) DeclareQueue

func (m *MockAMQPClient) DeclareQueue(name string, durable, autoDelete, exclusive, noWait bool) error

DeclareQueue implements messaging.AMQPClient

func (*MockAMQPClient) ExpectBindQueue

func (m *MockAMQPClient) ExpectBindQueue(queue, exchange, routingKey string, noWait bool, err error) *mock.Call

ExpectBindQueue sets up a bind queue expectation

func (*MockAMQPClient) ExpectBindQueueAny

func (m *MockAMQPClient) ExpectBindQueueAny(err error) *mock.Call

ExpectBindQueueAny sets up a bind queue expectation for any parameters

func (*MockAMQPClient) ExpectConsumeFromQueue

func (m *MockAMQPClient) ExpectConsumeFromQueue(options messaging.ConsumeOptions, err error) *mock.Call

ExpectConsumeFromQueue sets up a consume from queue expectation

func (*MockAMQPClient) ExpectDeclareExchange

func (m *MockAMQPClient) ExpectDeclareExchange(name, kind string, durable, autoDelete, internal, noWait bool, err error) *mock.Call

ExpectDeclareExchange sets up a declare exchange expectation

func (*MockAMQPClient) ExpectDeclareExchangeAny

func (m *MockAMQPClient) ExpectDeclareExchangeAny(err error) *mock.Call

ExpectDeclareExchangeAny sets up a declare exchange expectation for any parameters

func (*MockAMQPClient) ExpectDeclareQueue

func (m *MockAMQPClient) ExpectDeclareQueue(name string, durable, autoDelete, exclusive, noWait bool, err error) *mock.Call

ExpectDeclareQueue sets up a declare queue expectation

func (*MockAMQPClient) ExpectDeclareQueueAny

func (m *MockAMQPClient) ExpectDeclareQueueAny(err error) *mock.Call

ExpectDeclareQueueAny sets up a declare queue expectation for any parameters

func (*MockAMQPClient) ExpectPublishToExchange

func (m *MockAMQPClient) ExpectPublishToExchange(options messaging.PublishOptions, data []byte, err error) *mock.Call

ExpectPublishToExchange sets up a publish to exchange expectation

func (*MockAMQPClient) ExpectPublishToExchangeAny

func (m *MockAMQPClient) ExpectPublishToExchangeAny(err error) *mock.Call

ExpectPublishToExchangeAny sets up a publish to exchange expectation for any options and data

func (*MockAMQPClient) IsExchangeDeclared

func (m *MockAMQPClient) IsExchangeDeclared(name string) bool

IsExchangeDeclared returns true if the exchange was declared

func (*MockAMQPClient) IsQueueBound

func (m *MockAMQPClient) IsQueueBound(queue, exchange, routingKey string) bool

IsQueueBound returns true if the queue is bound to the exchange with the routing key

func (*MockAMQPClient) IsQueueDeclared

func (m *MockAMQPClient) IsQueueDeclared(name string) bool

IsQueueDeclared returns true if the queue was declared

func (*MockAMQPClient) PublishToExchange

func (m *MockAMQPClient) PublishToExchange(ctx context.Context, options messaging.PublishOptions, data []byte) error

PublishToExchange implements messaging.AMQPClient

type MockDatabase

type MockDatabase struct {
	mock.Mock
}

MockDatabase provides a testify-based mock implementation of the database.Interface. It allows for sophisticated testing scenarios with expectation setting and behavior verification.

Example usage:

mockDB := &mocks.MockDatabase{}
mockDB.On("Query", mock.Anything, "SELECT * FROM users", mock.Anything).Return(rows, nil)
mockDB.On("Health", mock.Anything).Return(nil)

// Use mockDB in your tests
result, err := service.GetUsers(ctx, mockDB)

func (*MockDatabase) Begin

func (m *MockDatabase) Begin(ctx context.Context) (types.Tx, error)

Begin implements types.Interface

func (*MockDatabase) BeginTx

func (m *MockDatabase) BeginTx(ctx context.Context, opts *sql.TxOptions) (types.Tx, error)

BeginTx implements types.Interface

func (*MockDatabase) Close

func (m *MockDatabase) Close() error

Close implements types.Interface

func (*MockDatabase) CreateMigrationTable

func (m *MockDatabase) CreateMigrationTable(ctx context.Context) error

CreateMigrationTable implements types.Interface

func (*MockDatabase) DatabaseType

func (m *MockDatabase) DatabaseType() string

DatabaseType implements types.Interface

func (*MockDatabase) Exec

func (m *MockDatabase) Exec(ctx context.Context, query string, args ...any) (sql.Result, error)

Exec implements types.Interface

func (*MockDatabase) ExpectDatabaseType

func (m *MockDatabase) ExpectDatabaseType(dbType string) *mock.Call

ExpectDatabaseType sets up a database type expectation

func (*MockDatabase) ExpectExec

func (m *MockDatabase) ExpectExec(query string, result sql.Result, err error) *mock.Call

ExpectExec sets up an exec expectation with the provided result and error

func (*MockDatabase) ExpectHealthCheck

func (m *MockDatabase) ExpectHealthCheck(healthy bool) *mock.Call

ExpectHealthCheck sets up a health check expectation

func (*MockDatabase) ExpectQuery

func (m *MockDatabase) ExpectQuery(query string, rows *sql.Rows, err error) *mock.Call

ExpectQuery sets up a query expectation with the provided rows and error

func (*MockDatabase) ExpectStats

func (m *MockDatabase) ExpectStats(stats map[string]any, err error) *mock.Call

ExpectStats sets up a stats expectation with the provided stats and error

func (*MockDatabase) ExpectTransaction

func (m *MockDatabase) ExpectTransaction(tx types.Tx, err error) *mock.Call

ExpectTransaction sets up a transaction expectation with the provided mock transaction

func (*MockDatabase) Health

func (m *MockDatabase) Health(ctx context.Context) error

Health implements types.Interface

func (*MockDatabase) MigrationTable added in v0.19.0

func (m *MockDatabase) MigrationTable() string

MigrationTable implements types.Interface

func (*MockDatabase) Prepare

func (m *MockDatabase) Prepare(ctx context.Context, query string) (types.Statement, error)

Prepare implements types.Interface

func (*MockDatabase) Query

func (m *MockDatabase) Query(ctx context.Context, query string, args ...any) (*sql.Rows, error)

Query implements types.Interface

func (*MockDatabase) QueryRow

func (m *MockDatabase) QueryRow(ctx context.Context, query string, args ...any) types.Row

QueryRow implements types.Interface

func (*MockDatabase) Stats

func (m *MockDatabase) Stats() (map[string]any, error)

Stats implements types.Interface

type MockMessagingClient

type MockMessagingClient struct {
	mock.Mock
	// contains filtered or unexported fields
}

MockMessagingClient provides a testify-based mock implementation of the messaging.Client interface. It includes message simulation capabilities for testing message flows.

Example usage:

mockClient := mocks.NewMockMessagingClient()
mockClient.On("Publish", mock.Anything, "user.created", mock.Anything).Return(nil)
mockClient.On("IsReady").Return(true)

// Simulate incoming messages
mockClient.SimulateMessage("test.queue", []byte(`{"event": "test"}`))

func NewMockMessagingClient

func NewMockMessagingClient() *MockMessagingClient

NewMockMessagingClient creates a new mock messaging client with message simulation capabilities

func (*MockMessagingClient) Close

func (m *MockMessagingClient) Close() error

Close implements messaging.Client

func (*MockMessagingClient) Consume

func (m *MockMessagingClient) Consume(ctx context.Context, destination string) (<-chan amqp.Delivery, error)

Consume implements messaging.Client

func (*MockMessagingClient) ExpectClose

func (m *MockMessagingClient) ExpectClose(err error) *mock.Call

ExpectClose sets up a close expectation

func (*MockMessagingClient) ExpectConsume

func (m *MockMessagingClient) ExpectConsume(destination string, err error) *mock.Call

ExpectConsume sets up a consume expectation

func (*MockMessagingClient) ExpectConsumeAny

func (m *MockMessagingClient) ExpectConsumeAny(err error) *mock.Call

ExpectConsumeAny sets up a consume expectation for any destination

func (*MockMessagingClient) ExpectIsReady

func (m *MockMessagingClient) ExpectIsReady(ready bool) *mock.Call

ExpectIsReady sets up an IsReady expectation

func (*MockMessagingClient) ExpectPublish

func (m *MockMessagingClient) ExpectPublish(destination string, data []byte, err error) *mock.Call

ExpectPublish sets up a publish expectation

func (*MockMessagingClient) ExpectPublishAny

func (m *MockMessagingClient) ExpectPublishAny(err error) *mock.Call

ExpectPublishAny sets up a publish expectation for any destination and data

func (*MockMessagingClient) IsReady

func (m *MockMessagingClient) IsReady() bool

IsReady implements messaging.Client

func (*MockMessagingClient) Publish

func (m *MockMessagingClient) Publish(ctx context.Context, destination string, data []byte) error

Publish implements messaging.Client

func (*MockMessagingClient) SetReady

func (m *MockMessagingClient) SetReady(ready bool)

SetReady sets the ready state of the mock client

func (*MockMessagingClient) SimulateMessage

func (m *MockMessagingClient) SimulateMessage(destination string, body []byte)

SimulateMessage sends a simulated message to the specified destination

func (*MockMessagingClient) SimulateMessageWithHeaders

func (m *MockMessagingClient) SimulateMessageWithHeaders(destination string, body []byte, headers map[string]any)

SimulateMessageWithHeaders sends a simulated message with headers to the specified destination

type MockQueryBuilder added in v0.8.1

type MockQueryBuilder struct {
	mock.Mock
}

MockQueryBuilder provides a testify-based mock implementation of the QueryBuilderInterface. It allows for sophisticated testing scenarios with expectation setting and behavior verification for services that construct SQL queries using the query builder.

Example usage:

mockQB := &mocks.MockQueryBuilder{}
mockQB.On("Vendor").Return("postgresql")
mockQB.On("Select", "id", "name").Return(mockSelectBuilder)
mockQB.On("BuildCaseInsensitiveLike", "name", "john").Return(squirrel.ILike{"name": "%john%"})

// Use mockQB in your tests
result := service.BuildUserQuery(mockQB, criteria)

func (*MockQueryBuilder) BuildBooleanValue added in v0.8.1

func (m *MockQueryBuilder) BuildBooleanValue(value bool) any

BuildBooleanValue implements types.QueryBuilderInterface

func (*MockQueryBuilder) BuildCaseInsensitiveLike added in v0.8.1

func (m *MockQueryBuilder) BuildCaseInsensitiveLike(column, value string) squirrel.Sqlizer

BuildCaseInsensitiveLike implements types.QueryBuilderInterface

func (*MockQueryBuilder) BuildCurrentTimestamp added in v0.8.1

func (m *MockQueryBuilder) BuildCurrentTimestamp() string

BuildCurrentTimestamp implements types.QueryBuilderInterface

func (*MockQueryBuilder) BuildUUIDGeneration added in v0.8.1

func (m *MockQueryBuilder) BuildUUIDGeneration() string

BuildUUIDGeneration implements types.QueryBuilderInterface

func (*MockQueryBuilder) BuildUpsert added in v0.8.1

func (m *MockQueryBuilder) BuildUpsert(table string, conflictColumns []string, insertColumns, updateColumns map[string]any) (query string, args []any, err error)

BuildUpsert implements types.QueryBuilderInterface

func (*MockQueryBuilder) Columns added in v0.15.0

func (m *MockQueryBuilder) Columns(structPtr any) types.Columns

Columns implements types.QueryBuilderInterface

func (*MockQueryBuilder) CrossJoinOn added in v0.13.0

func (m *MockQueryBuilder) CrossJoinOn(table any) types.SelectQueryBuilder

CrossJoinOn implements types.SelectQueryBuilder

func (*MockQueryBuilder) Delete added in v0.8.1

Delete implements types.QueryBuilderInterface

func (*MockQueryBuilder) EscapeIdentifier added in v0.8.1

func (m *MockQueryBuilder) EscapeIdentifier(identifier string) string

EscapeIdentifier implements types.QueryBuilderInterface

func (*MockQueryBuilder) ExpectBooleanValue added in v0.8.1

func (m *MockQueryBuilder) ExpectBooleanValue(input bool, output any) *mock.Call

ExpectBooleanValue sets up a boolean value conversion expectation

func (*MockQueryBuilder) ExpectCaseInsensitiveLike added in v0.8.1

func (m *MockQueryBuilder) ExpectCaseInsensitiveLike(column, value string, sqlizer squirrel.Sqlizer) *mock.Call

ExpectCaseInsensitiveLike sets up a case-insensitive like expectation

func (*MockQueryBuilder) ExpectCurrentTimestamp added in v0.8.1

func (m *MockQueryBuilder) ExpectCurrentTimestamp(timestamp string) *mock.Call

ExpectCurrentTimestamp sets up a current timestamp expectation

func (*MockQueryBuilder) ExpectDelete added in v0.8.1

func (m *MockQueryBuilder) ExpectDelete(table string, builder types.DeleteQueryBuilder) *mock.Call

ExpectDelete sets up a delete expectation with the provided builder

func (*MockQueryBuilder) ExpectEscapeIdentifier added in v0.8.1

func (m *MockQueryBuilder) ExpectEscapeIdentifier(input, output string) *mock.Call

ExpectEscapeIdentifier sets up an identifier escaping expectation

func (*MockQueryBuilder) ExpectInsert added in v0.8.1

func (m *MockQueryBuilder) ExpectInsert(table string, builder squirrel.InsertBuilder) *mock.Call

ExpectInsert sets up an insert expectation with the provided builder

func (*MockQueryBuilder) ExpectSelect added in v0.8.1

func (m *MockQueryBuilder) ExpectSelect(columns []string, builder types.SelectQueryBuilder) *mock.Call

ExpectSelect sets up a select expectation with the provided builder

func (*MockQueryBuilder) ExpectUUIDGeneration added in v0.8.1

func (m *MockQueryBuilder) ExpectUUIDGeneration(uuidFunc string) *mock.Call

ExpectUUIDGeneration sets up a UUID generation expectation

func (*MockQueryBuilder) ExpectUpdate added in v0.8.1

func (m *MockQueryBuilder) ExpectUpdate(table string, builder types.UpdateQueryBuilder) *mock.Call

ExpectUpdate sets up an update expectation with the provided builder

func (*MockQueryBuilder) ExpectVendor added in v0.8.1

func (m *MockQueryBuilder) ExpectVendor(vendor string) *mock.Call

ExpectVendor sets up a vendor expectation

func (*MockQueryBuilder) Expr added in v0.14.2

func (m *MockQueryBuilder) Expr(sql string, alias ...string) (types.RawExpression, error)

Expr implements types.QueryBuilderInterface

func (*MockQueryBuilder) Filter added in v0.13.0

func (m *MockQueryBuilder) Filter() types.FilterFactory

Filter implements types.QueryBuilderInterface

func (*MockQueryBuilder) From added in v0.11.0

func (m *MockQueryBuilder) From(from ...any) types.SelectQueryBuilder

func (*MockQueryBuilder) GroupBy added in v0.11.0

func (m *MockQueryBuilder) GroupBy(groupBys ...any) types.SelectQueryBuilder

func (*MockQueryBuilder) Having added in v0.11.0

func (m *MockQueryBuilder) Having(pred any, args ...any) types.SelectQueryBuilder

func (*MockQueryBuilder) InnerJoinOn added in v0.13.0

func (m *MockQueryBuilder) InnerJoinOn(table any, filter types.JoinFilter) types.SelectQueryBuilder

InnerJoinOn implements types.SelectQueryBuilder

func (*MockQueryBuilder) Insert added in v0.8.1

func (m *MockQueryBuilder) Insert(table string) squirrel.InsertBuilder

Insert implements types.QueryBuilderInterface

func (*MockQueryBuilder) InsertFields added in v0.15.0

func (m *MockQueryBuilder) InsertFields(table string, instance any, fields ...string) squirrel.InsertBuilder

InsertFields implements types.QueryBuilderInterface

func (*MockQueryBuilder) InsertStruct added in v0.15.0

func (m *MockQueryBuilder) InsertStruct(table string, instance any) squirrel.InsertBuilder

InsertStruct implements types.QueryBuilderInterface

func (*MockQueryBuilder) InsertWithColumns added in v0.8.1

func (m *MockQueryBuilder) InsertWithColumns(table string, columns ...string) squirrel.InsertBuilder

InsertWithColumns implements types.QueryBuilderInterface

func (*MockQueryBuilder) JoinFilter added in v0.13.0

func (m *MockQueryBuilder) JoinFilter() types.JoinFilterFactory

JoinFilter implements types.QueryBuilderInterface

func (*MockQueryBuilder) JoinOn added in v0.13.0

func (m *MockQueryBuilder) JoinOn(table any, filter types.JoinFilter) types.SelectQueryBuilder

JoinOn implements types.SelectQueryBuilder

func (*MockQueryBuilder) LeftJoinOn added in v0.13.0

func (m *MockQueryBuilder) LeftJoinOn(table any, filter types.JoinFilter) types.SelectQueryBuilder

LeftJoinOn implements types.SelectQueryBuilder

func (*MockQueryBuilder) Limit added in v0.11.0

func (*MockQueryBuilder) MustExpr added in v0.19.0

func (m *MockQueryBuilder) MustExpr(sql string, alias ...string) types.RawExpression

MustExpr implements types.QueryBuilderInterface

func (*MockQueryBuilder) Offset added in v0.11.0

func (m *MockQueryBuilder) Offset(offset uint64) types.SelectQueryBuilder

func (*MockQueryBuilder) OrderBy added in v0.11.0

func (m *MockQueryBuilder) OrderBy(orderBys ...any) types.SelectQueryBuilder

func (*MockQueryBuilder) Paginate added in v0.11.0

func (m *MockQueryBuilder) Paginate(limit, offset uint64) types.SelectQueryBuilder

func (*MockQueryBuilder) RightJoinOn added in v0.13.0

func (m *MockQueryBuilder) RightJoinOn(table any, filter types.JoinFilter) types.SelectQueryBuilder

RightJoinOn implements types.SelectQueryBuilder

func (*MockQueryBuilder) Select added in v0.8.1

func (m *MockQueryBuilder) Select(columns ...any) types.SelectQueryBuilder

Select implements types.QueryBuilderInterface

func (*MockQueryBuilder) ToSQL added in v0.11.0

func (m *MockQueryBuilder) ToSQL() (sql string, args []any, err error)

func (*MockQueryBuilder) Update added in v0.8.1

Update implements types.QueryBuilderInterface

func (*MockQueryBuilder) Vendor added in v0.8.1

func (m *MockQueryBuilder) Vendor() string

Vendor implements types.QueryBuilderInterface

func (*MockQueryBuilder) Where added in v0.11.0

Where implements types.SelectQueryBuilder

type MockRegistry

type MockRegistry struct {
	mock.Mock
	// contains filtered or unexported fields
}

MockRegistry provides a testify-based mock implementation of the messaging.RegistryInterface. It allows for testing messaging infrastructure management and consumer lifecycle.

Example usage:

mockRegistry := &mocks.MockRegistry{}
mockRegistry.On("RegisterExchange", mock.MatchedBy(func(decl *messaging.ExchangeDeclaration) bool {
	return decl.Name == "test.exchange"
})).Return()
mockRegistry.On("DeclareInfrastructure", mock.Anything).Return(nil)

func NewMockRegistry

func NewMockRegistry() *MockRegistry

NewMockRegistry creates a new mock registry

func (*MockRegistry) Bindings added in v0.19.0

func (m *MockRegistry) Bindings() []*messaging.BindingDeclaration

Bindings implements messaging.RegistryInterface

func (*MockRegistry) ClearRegistrations

func (m *MockRegistry) ClearRegistrations()

ClearRegistrations clears all internal registrations (for test cleanup)

func (*MockRegistry) Consumers added in v0.19.0

func (m *MockRegistry) Consumers() []*messaging.ConsumerDeclaration

Consumers implements messaging.RegistryInterface

func (*MockRegistry) DeclareInfrastructure

func (m *MockRegistry) DeclareInfrastructure(ctx context.Context) error

DeclareInfrastructure implements messaging.RegistryInterface

func (*MockRegistry) Exchanges added in v0.19.0

func (m *MockRegistry) Exchanges() map[string]*messaging.ExchangeDeclaration

Exchanges implements messaging.RegistryInterface

func (*MockRegistry) ExpectDeclareInfrastructure

func (m *MockRegistry) ExpectDeclareInfrastructure(err error) *mock.Call

ExpectDeclareInfrastructure sets up a declare infrastructure expectation

func (*MockRegistry) ExpectRegistrations

func (m *MockRegistry) ExpectRegistrations()

ExpectRegistrations sets up expectations for infrastructure registration

func (*MockRegistry) ExpectStartConsumers

func (m *MockRegistry) ExpectStartConsumers(err error) *mock.Call

ExpectStartConsumers sets up a start consumers expectation

func (*MockRegistry) ExpectStopConsumers

func (m *MockRegistry) ExpectStopConsumers() *mock.Call

ExpectStopConsumers sets up a stop consumers expectation

func (*MockRegistry) ExpectValidateConsumer

func (m *MockRegistry) ExpectValidateConsumer(queue string, valid bool) *mock.Call

ExpectValidateConsumer sets up a validate consumer expectation

func (*MockRegistry) ExpectValidatePublisher

func (m *MockRegistry) ExpectValidatePublisher(exchange, routingKey string, valid bool) *mock.Call

ExpectValidatePublisher sets up a validate publisher expectation

func (*MockRegistry) Publishers added in v0.19.0

func (m *MockRegistry) Publishers() []*messaging.PublisherDeclaration

Publishers implements messaging.RegistryInterface

func (*MockRegistry) Queues added in v0.19.0

func (m *MockRegistry) Queues() map[string]*messaging.QueueDeclaration

Queues implements messaging.RegistryInterface

func (*MockRegistry) RegisterBinding

func (m *MockRegistry) RegisterBinding(declaration *messaging.BindingDeclaration)

RegisterBinding implements messaging.RegistryInterface

func (*MockRegistry) RegisterConsumer

func (m *MockRegistry) RegisterConsumer(declaration *messaging.ConsumerDeclaration)

RegisterConsumer implements messaging.RegistryInterface

func (*MockRegistry) RegisterExchange

func (m *MockRegistry) RegisterExchange(declaration *messaging.ExchangeDeclaration)

RegisterExchange implements messaging.RegistryInterface

func (*MockRegistry) RegisterPublisher

func (m *MockRegistry) RegisterPublisher(declaration *messaging.PublisherDeclaration)

RegisterPublisher implements messaging.RegistryInterface

func (*MockRegistry) RegisterQueue

func (m *MockRegistry) RegisterQueue(declaration *messaging.QueueDeclaration)

RegisterQueue implements messaging.RegistryInterface

func (*MockRegistry) StartConsumers

func (m *MockRegistry) StartConsumers(ctx context.Context) error

StartConsumers implements messaging.RegistryInterface

func (*MockRegistry) StopConsumers

func (m *MockRegistry) StopConsumers()

StopConsumers implements messaging.RegistryInterface

func (*MockRegistry) ValidateConsumer

func (m *MockRegistry) ValidateConsumer(queue string) bool

ValidateConsumer implements messaging.RegistryInterface

func (*MockRegistry) ValidatePublisher

func (m *MockRegistry) ValidatePublisher(exchange, routingKey string) bool

ValidatePublisher implements messaging.RegistryInterface

type MockStatement

type MockStatement struct {
	mock.Mock
}

MockStatement provides a testify-based mock implementation of the database Statement interface. It allows for testing prepared statement scenarios and error conditions.

Example usage:

mockStmt := &mocks.MockStatement{}
mockStmt.On("Query", mock.Anything, mock.Anything).Return(rows, nil)
mockStmt.On("Close").Return(nil)

// Use mockStmt in your tests
rows, err := stmt.Query(ctx, args...)

func (*MockStatement) Close

func (m *MockStatement) Close() error

Close implements types.Statement

func (*MockStatement) Exec

func (m *MockStatement) Exec(ctx context.Context, args ...any) (sql.Result, error)

Exec implements types.Statement

func (*MockStatement) ExpectClose

func (m *MockStatement) ExpectClose(err error) *mock.Call

ExpectClose sets up a close expectation with the provided error

func (*MockStatement) ExpectExec

func (m *MockStatement) ExpectExec(result sql.Result, err error) *mock.Call

ExpectExec sets up an exec expectation with the provided result and error

func (*MockStatement) ExpectQuery

func (m *MockStatement) ExpectQuery(rows *sql.Rows, err error) *mock.Call

ExpectQuery sets up a query expectation with the provided rows and error

func (*MockStatement) ExpectQueryRow

func (m *MockStatement) ExpectQueryRow(row types.Row) *mock.Call

ExpectQueryRow sets up a query row expectation with the provided row

func (*MockStatement) Query

func (m *MockStatement) Query(ctx context.Context, args ...any) (*sql.Rows, error)

Query implements types.Statement

func (*MockStatement) QueryRow

func (m *MockStatement) QueryRow(ctx context.Context, args ...any) types.Row

QueryRow implements types.Statement

type MockTx

type MockTx struct {
	mock.Mock
}

MockTx provides a testify-based mock implementation of the database Tx interface. It allows for testing transaction scenarios including commit, rollback, and error conditions.

Example usage:

mockTx := &mocks.MockTx{}
mockTx.On("Exec", mock.Anything, "INSERT INTO users", mock.Anything).Return(result, nil)
mockTx.On("Commit", mock.Anything).Return(nil)

// Use mockTx in your tests
err := tx.Commit(ctx)

func (*MockTx) Commit

func (m *MockTx) Commit(ctx context.Context) error

Commit implements types.Tx

func (*MockTx) Exec

func (m *MockTx) Exec(ctx context.Context, query string, args ...any) (sql.Result, error)

Exec implements types.Tx

func (*MockTx) ExpectCommit

func (m *MockTx) ExpectCommit(err error) *mock.Call

ExpectCommit sets up a commit expectation with the provided error

func (*MockTx) ExpectExec

func (m *MockTx) ExpectExec(query string, result sql.Result, err error) *mock.Call

ExpectExec sets up an exec expectation with the provided result and error

func (*MockTx) ExpectFailedTransaction

func (m *MockTx) ExpectFailedTransaction(commitErr error)

ExpectFailedTransaction sets up expectations for a failed transaction that should be rolled back

func (*MockTx) ExpectPrepare

func (m *MockTx) ExpectPrepare(query string, stmt types.Statement, err error) *mock.Call

ExpectPrepare sets up a prepare expectation with the provided statement and error

func (*MockTx) ExpectQuery

func (m *MockTx) ExpectQuery(query string, rows *sql.Rows, err error) *mock.Call

ExpectQuery sets up a query expectation with the provided rows and error

func (*MockTx) ExpectRollback

func (m *MockTx) ExpectRollback(err error) *mock.Call

ExpectRollback sets up a rollback expectation with the provided error

func (*MockTx) ExpectSuccessfulTransaction

func (m *MockTx) ExpectSuccessfulTransaction()

ExpectSuccessfulTransaction sets up expectations for a successful transaction

func (*MockTx) Prepare

func (m *MockTx) Prepare(ctx context.Context, query string) (types.Statement, error)

Prepare implements types.Tx

func (*MockTx) Query

func (m *MockTx) Query(ctx context.Context, query string, args ...any) (*sql.Rows, error)

Query implements types.Tx

func (*MockTx) QueryRow

func (m *MockTx) QueryRow(ctx context.Context, query string, args ...any) types.Row

QueryRow implements types.Tx

func (*MockTx) Rollback

func (m *MockTx) Rollback(ctx context.Context) error

Rollback implements types.Tx Note: Implementation follows the same pattern as Commit for consistent mock tracking

Jump to

Keyboard shortcuts

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