chainntnfs+queue: move ConcurrentQueue to own package 'queue'

This commit is contained in:
Johan T. Halseth
2018-10-12 17:08:14 +02:00
parent d52e691d5f
commit dbf9b4ea4c
6 changed files with 22 additions and 19 deletions

26
queue/queue_test.go Normal file
View File

@@ -0,0 +1,26 @@
package queue_test
import (
"testing"
"github.com/lightningnetwork/lnd/queue"
)
func TestConcurrentQueue(t *testing.T) {
queue := queue.NewConcurrentQueue(100)
queue.Start()
defer queue.Stop()
// Pushes should never block for long.
for i := 0; i < 1000; i++ {
queue.ChanIn() <- i
}
// Pops also should not block for long. Expect elements in FIFO order.
for i := 0; i < 1000; i++ {
item := <-queue.ChanOut()
if i != item.(int) {
t.Fatalf("Dequeued wrong value: expected %d, got %d", i, item.(int))
}
}
}