Files
lislgosms/gateway/internal/tracker/tracker_test.go
T

37 lines
910 B
Go

package tracker
import "testing"
func TestTrackerMapsMessageSequenceAndGatewayIDs(t *testing.T) {
tr := New()
submit := tr.TrackSubmit("msg-1", 1001)
if submit.MessageID != "msg-1" || submit.SequenceID != 1001 {
t.Fatalf("unexpected submit mapping: %+v", submit)
}
resp, err := tr.TrackSubmitResp(1001, "gw-1")
if err != nil {
t.Fatalf("track submit resp: %v", err)
}
if resp.GatewayMessageID != "gw-1" {
t.Fatalf("unexpected gateway message id: %+v", resp)
}
byGateway, err := tr.ByGatewayMessageID("gw-1")
if err != nil {
t.Fatalf("lookup by gateway id: %v", err)
}
if byGateway.MessageID != "msg-1" || byGateway.SequenceID != 1001 {
t.Fatalf("unexpected gateway lookup: %+v", byGateway)
}
}
func TestTrackerRejectsUnknownSubmitResp(t *testing.T) {
tr := New()
if _, err := tr.TrackSubmitResp(404, "gw-missing"); err == nil {
t.Fatal("expected missing mapping error")
}
}