Initial commit

This commit is contained in:
Djuri 2025-05-18 23:54:04 +02:00
commit c5111cb551
Signed by: djuri
GPG key ID: 61B9B2DDE5AA3AC1
20 changed files with 1764 additions and 0 deletions

35
clients/mock_broker.go Normal file
View file

@ -0,0 +1,35 @@
package clients
import (
"btclock/broker"
"github.com/stretchr/testify/mock"
)
// MockEventBroker implements broker.EventBroker for testing
type MockEventBroker struct {
mock.Mock
realBroker *broker.EventBroker
}
func NewMockEventBroker() *broker.EventBroker {
mock := &MockEventBroker{
realBroker: broker.NewEventBroker(),
}
return mock.realBroker
}
func (m *MockEventBroker) Register(eventType string, handler broker.EventHandler) {
m.Called(eventType, handler)
m.realBroker.Register(eventType, handler)
}
func (m *MockEventBroker) Publish(eventType string, event broker.Event) {
m.Called(eventType, event)
m.realBroker.Publish(eventType, event)
}
func (m *MockEventBroker) Unregister(eventType string, handler broker.EventHandler) {
m.Called(eventType, handler)
m.realBroker.Unregister(eventType, handler)
}