stream: registers but does not spawn session when disconnected
This commit is contained in:
+22
-4
@@ -239,10 +239,28 @@ func TestRequestManager_Stream(t *testing.T) {
|
|||||||
})
|
})
|
||||||
|
|
||||||
t.Run("registers but does not spawn session when disconnected", func(t *testing.T) {
|
t.Run("registers but does not spawn session when disconnected", func(t *testing.T) {
|
||||||
// do not connect the envoy
|
p := newMockPool(t)
|
||||||
// call Stream
|
emb := NewEmbassy(p.ctx, p.plugin, nil)
|
||||||
// assert mock send is never called
|
err := emb.Dispatch(p.url)
|
||||||
// assert the returned channels are non-nil and open
|
assert.NoError(t, err)
|
||||||
|
envoy := emb.Call(p.url)
|
||||||
|
|
||||||
|
m := NewRequestManager(envoy)
|
||||||
|
filters := [][]byte{[]byte(`{}`)}
|
||||||
|
id, events, closed := m.Stream(filters)
|
||||||
|
|
||||||
|
assert.NotEmpty(t, id)
|
||||||
|
assert.NotNil(t, events)
|
||||||
|
assert.NotNil(t, closed)
|
||||||
|
|
||||||
|
Never(t, func() bool {
|
||||||
|
select {
|
||||||
|
case <-p.sent:
|
||||||
|
return true
|
||||||
|
default:
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
}, "send should not be called when disconnected")
|
||||||
})
|
})
|
||||||
|
|
||||||
t.Run("forwards events to caller", func(t *testing.T) {
|
t.Run("forwards events to caller", func(t *testing.T) {
|
||||||
|
|||||||
Reference in New Issue
Block a user