milvus/internal/util/logserviceutil/message/message_handler_test.go
chyezh 2b7ee1968f
enhance: new messsage interface for log service (#33286)
issue: #33285

---------

Signed-off-by: chyezh <chyezh@outlook.com>
2024-06-11 10:38:01 +08:00

31 lines
497 B
Go

package message
import (
"testing"
"github.com/stretchr/testify/assert"
)
func TestMessageHandler(t *testing.T) {
ch := make(chan ImmutableMessage, 100)
h := ChanMessageHandler(ch)
h.Handle(nil)
assert.Nil(t, <-ch)
h.Close()
_, ok := <-ch
assert.False(t, ok)
ch = make(chan ImmutableMessage, 100)
hNop := NopCloseHandler{
Handler: ChanMessageHandler(ch),
}
hNop.Handle(nil)
assert.Nil(t, <-ch)
hNop.Close()
select {
case <-ch:
panic("should not be closed")
default:
}
}