pubsub

package
v0.0.9 Latest Latest
Warning

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

Go to latest
Published: May 14, 2024 License: MIT Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Broker

type Broker interface {
	BrokerConnection() error
	Publisher
	Subscriber
}

type BrokerConnectionFunc

type BrokerConnectionFunc = func() error

type BrokerOption

type BrokerOption func(f *FakeBroker)

func BrokerOnBrokerConnection

func BrokerOnBrokerConnection(fn ...BrokerConnectionFunc) BrokerOption

func BrokerOnPublishMessage

func BrokerOnPublishMessage(fn ...PublishMessageFunc) BrokerOption

func BrokerOnSubscribeToMessages

func BrokerOnSubscribeToMessages(fn ...SubscribeToMessagesFunc) BrokerOption

type FakeBroker

type FakeBroker struct {
	BrokerConnectionCount    int
	PublishMessageCount      int
	SubscribeToMessagesCount int
	FBrokerConnection        []func() error
	FPublishMessage          []func(m *Message) error
	FSubscribeToMessages     []func() (chan *Message, error)
	// contains filtered or unexported fields
}

func NewFakeBroker

func NewFakeBroker(t *testing.T, opts ...BrokerOption) *FakeBroker

func (*FakeBroker) BrokerConnection

func (fake *FakeBroker) BrokerConnection() error

func (*FakeBroker) OnBrokerConnection

func (f *FakeBroker) OnBrokerConnection(fns ...BrokerConnectionFunc)

func (*FakeBroker) OnPublishMessage

func (f *FakeBroker) OnPublishMessage(fns ...PublishMessageFunc)

func (*FakeBroker) OnSubscribeToMessages

func (f *FakeBroker) OnSubscribeToMessages(fns ...SubscribeToMessagesFunc)

func (*FakeBroker) PublishMessage

func (fake *FakeBroker) PublishMessage(m *Message) error

func (*FakeBroker) SubscribeToMessages

func (fake *FakeBroker) SubscribeToMessages() (chan *Message, error)

type FakePublisher

type FakePublisher struct {
	PublishMessageCount int
	FPublishMessage     []func(m *Message) error
	// contains filtered or unexported fields
}

func NewFakePublisher

func NewFakePublisher(t *testing.T, opts ...PublisherOption) *FakePublisher

func (*FakePublisher) OnPublishMessage

func (f *FakePublisher) OnPublishMessage(fns ...PublishMessageFunc)

func (*FakePublisher) PublishMessage

func (fake *FakePublisher) PublishMessage(m *Message) error

type FakeSubscriber

type FakeSubscriber struct {
	SubscribeToMessagesCount int
	FSubscribeToMessages     []func() (chan *Message, error)
	// contains filtered or unexported fields
}

func NewFakeSubscriber

func NewFakeSubscriber(t *testing.T, opts ...SubscriberOption) *FakeSubscriber

func (*FakeSubscriber) OnSubscribeToMessages

func (f *FakeSubscriber) OnSubscribeToMessages(fns ...SubscribeToMessagesFunc)

func (*FakeSubscriber) SubscribeToMessages

func (fake *FakeSubscriber) SubscribeToMessages() (chan *Message, error)

type Message

type Message struct {
	ID        int
	Topic     string
	Data      []byte
	Timestamp time.Time
}

type PublishMessageFunc

type PublishMessageFunc = func(m *Message) error

type Publisher

type Publisher interface {
	PublishMessage(m *Message) error
}

type PublisherOption

type PublisherOption func(f *FakePublisher)

func OnPublishMessage

func OnPublishMessage(fn ...PublishMessageFunc) PublisherOption

type SubscribeToMessagesFunc

type SubscribeToMessagesFunc = func() (chan *Message, error)

type Subscriber

type Subscriber interface {
	SubscribeToMessages() (chan *Message, error)
}

type SubscriberOption

type SubscriberOption func(f *FakeSubscriber)

func OnSubscribeToMessages

func OnSubscribeToMessages(fn ...SubscribeToMessagesFunc) SubscriberOption

Jump to

Keyboard shortcuts

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