1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- package rq
- import (
- "strconv"
- "testing"
- "time"
- "github.com/stretchr/testify/assert"
- )
- func TestQueueWithTimeout(t *testing.T) {
- consumer, err := wrapWithTimeout(WithHandle(func(string) error {
- time.Sleep(time.Minute)
- return nil
- }), 100)()
- if err != nil {
- t.Fatal(err)
- }
- assert.Equal(t, ErrTimeout, consumer.Consume("any"))
- }
- func TestQueueWithoutTimeout(t *testing.T) {
- consumer, err := wrapWithTimeout(WithHandle(func(string) error {
- return nil
- }), 3600000)()
- if err != nil {
- t.Fatal(err)
- }
- assert.Nil(t, consumer.Consume("any"))
- }
- func BenchmarkQueue(b *testing.B) {
- b.ReportAllocs()
- consumer, err := WithHandle(func(string) error {
- return nil
- })()
- if err != nil {
- b.Fatal(err)
- }
- for i := 0; i < b.N; i++ {
- consumer.Consume(strconv.Itoa(i))
- }
- }
- func BenchmarkQueueWithTimeout(b *testing.B) {
- b.ReportAllocs()
- consumer, err := wrapWithTimeout(WithHandle(func(string) error {
- return nil
- }), 1000)()
- if err != nil {
- b.Fatal(err)
- }
- for i := 0; i < b.N; i++ {
- consumer.Consume(strconv.Itoa(i))
- }
- }
|