35 lines
827 B
Go
35 lines
827 B
Go
package gochannel_test
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/ThreeDotsLabs/watermill/pubsub/gochannel"
|
|
|
|
"github.com/ThreeDotsLabs/watermill/pubsub/tests"
|
|
|
|
"github.com/ThreeDotsLabs/watermill"
|
|
"github.com/ThreeDotsLabs/watermill/message"
|
|
)
|
|
|
|
func BenchmarkSubscriber(b *testing.B) {
|
|
tests.BenchSubscriber(b, func(n int) (message.Publisher, message.Subscriber) {
|
|
pubSub := gochannel.NewGoChannel(
|
|
gochannel.Config{OutputChannelBuffer: int64(n)}, watermill.NopLogger{},
|
|
)
|
|
return pubSub, pubSub
|
|
})
|
|
}
|
|
|
|
func BenchmarkSubscriberPersistent(b *testing.B) {
|
|
tests.BenchSubscriber(b, func(n int) (message.Publisher, message.Subscriber) {
|
|
pubSub := gochannel.NewGoChannel(
|
|
gochannel.Config{
|
|
OutputChannelBuffer: int64(n),
|
|
Persistent: true,
|
|
},
|
|
watermill.NopLogger{},
|
|
)
|
|
return pubSub, pubSub
|
|
})
|
|
}
|