You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
554 B
31 lines
554 B
6 years ago
|
package fanout
|
||
|
|
||
|
import (
|
||
|
"context"
|
||
|
"testing"
|
||
|
"time"
|
||
|
)
|
||
|
|
||
|
func TestFanout_Do(t *testing.T) {
|
||
|
ca := New("cache", Worker(1), Buffer(1024))
|
||
|
var run bool
|
||
|
ca.Do(context.Background(), func(c context.Context) {
|
||
|
run = true
|
||
|
panic("error")
|
||
|
})
|
||
|
time.Sleep(time.Millisecond * 50)
|
||
|
t.Log("not panic")
|
||
|
if !run {
|
||
|
t.Fatal("expect run be true")
|
||
|
}
|
||
|
}
|
||
|
|
||
|
func TestFanout_Close(t *testing.T) {
|
||
|
ca := New("cache", Worker(1), Buffer(1024))
|
||
|
ca.Close()
|
||
|
err := ca.Do(context.Background(), func(c context.Context) {})
|
||
|
if err == nil {
|
||
|
t.Fatal("expect get err")
|
||
|
}
|
||
|
}
|