fix: close receipt delivery workflows
This commit is contained in:
@@ -912,10 +912,14 @@ func TestDownstreamDeliveryRequiresAcknowledgement(t *testing.T) {
|
||||
defer resetDownstreamRegistry()
|
||||
|
||||
events := make(chan downstreamDeliveryLifecycleEvent, 1)
|
||||
protocolEvents := make(chan protocolLogEvent, 1)
|
||||
conn := &cmpp.Conn{}
|
||||
session := &downstreamSession{
|
||||
conn: conn, connectionID: "conn-1",
|
||||
deliveryReport: func(event downstreamDeliveryLifecycleEvent) { events <- event },
|
||||
tenantID: "tenant-1", applicationID: "app-1", account: "607532",
|
||||
messageID: "MSG-LONG-1", phoneNumber: "18821203795",
|
||||
protocolLog: func(event protocolLogEvent) { protocolEvents <- event },
|
||||
}
|
||||
registerDownstreamAck(session, "delivery-1", 37, 9016479179509871733, time.Now().Add(time.Second))
|
||||
handleDownstreamAcknowledgement(conn, 37, 9016479179509871733, 0, log.Default())
|
||||
@@ -928,6 +932,17 @@ func TestDownstreamDeliveryRequiresAcknowledgement(t *testing.T) {
|
||||
case <-time.After(time.Second):
|
||||
t.Fatal("timed out waiting acknowledgement event")
|
||||
}
|
||||
select {
|
||||
case event := <-protocolEvents:
|
||||
if event.Protocol != "cmpp" || event.Direction != "client_to_platform" || event.EventType != "deliver_resp" {
|
||||
t.Fatalf("unexpected acknowledgement protocol event: %+v", event)
|
||||
}
|
||||
if event.MessageID != "MSG-LONG-1" || event.GatewayMessageID != "9016479179509871733" || event.ResultCode != "0" {
|
||||
t.Fatalf("unexpected acknowledgement identifiers: %+v", event)
|
||||
}
|
||||
case <-time.After(time.Second):
|
||||
t.Fatal("timed out waiting acknowledgement protocol event")
|
||||
}
|
||||
}
|
||||
|
||||
func TestReceiptLookupDoesNotFallbackToAccountBeforeSubmitMappingExists(t *testing.T) {
|
||||
|
||||
Reference in New Issue
Block a user