1
0
Fork 0
mirror of https://github.com/binwiederhier/ntfy.git synced 2024-12-14 11:47:33 +00:00
binwiederhier-ntfy/util/batching_queue_test.go
2022-11-15 14:24:56 -05:00

25 lines
467 B
Go

package util_test
import (
"fmt"
"heckel.io/ntfy/util"
"math/rand"
"testing"
"time"
)
func TestConcurrentQueue_Next(t *testing.T) {
q := util.NewBatchingQueue[int](25, 200*time.Millisecond)
go func() {
for batch := range q.Pop() {
fmt.Printf("Batch of %d items\n", len(batch))
}
}()
for i := 0; i < 1000; i++ {
go func(i int) {
time.Sleep(time.Duration(rand.Intn(1000)) * time.Millisecond)
q.Push(i)
}(i)
}
time.Sleep(2 * time.Second)
}