fix: broadcast forwarded messages after kafka publish
This commit is contained in:
@@ -5828,6 +5828,7 @@ func TestServeIMMessageForwardKafkaAssignsSeqAndBroadcasts(t *testing.T) {
|
||||
TenantID: 7,
|
||||
SeqId: 34,
|
||||
}, nil)
|
||||
topics.EXPECT().GetSubs(types.TenantID(7), targetTopic, nil).Return(nil, nil)
|
||||
messages.EXPECT().GetOne(types.TenantID(7), "grpSource", int64(14)).Return(&types.Message{
|
||||
TenantID: 7,
|
||||
Topic: "grpSource",
|
||||
@@ -5877,13 +5878,13 @@ func TestServeIMMessageForwardKafkaAssignsSeqAndBroadcasts(t *testing.T) {
|
||||
if publishedPayload.Message.Topic != targetTopic || publishedPayload.Message.SeqId != 35 {
|
||||
t.Fatalf("unexpected kafka message: %#v", publishedPayload.Message)
|
||||
}
|
||||
if !publishedPayload.BroadcastAfterPersist {
|
||||
t.Fatalf("forwarded HTTP message must broadcast after kafka persistence: %#v", publishedPayload)
|
||||
}
|
||||
select {
|
||||
case delivered := <-globals.hub.routeSrv:
|
||||
t.Fatalf("pending forward should not broadcast immediately: %#v", delivered)
|
||||
if delivered.Data == nil || delivered.Data.Topic != targetTopic || delivered.Data.SeqId != 35 {
|
||||
t.Fatalf("unexpected immediate broadcast: %#v", delivered)
|
||||
}
|
||||
default:
|
||||
t.Fatalf("pending forward should broadcast immediately after kafka publish")
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user