merged from gramsrv upstream
This commit is contained in:
parent
79c64ee916
commit
21a0856587
651 changed files with 54774 additions and 4590 deletions
83
internal/loadharness/delivery_test.go
Normal file
83
internal/loadharness/delivery_test.go
Normal file
|
|
@ -0,0 +1,83 @@
|
|||
package loadharness
|
||||
|
||||
import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/iamxvbaba/td/tg"
|
||||
)
|
||||
|
||||
func TestDeliveryTrackerReconcilesObservationBeforeSendReturn(t *testing.T) {
|
||||
tracker := newDeliveryTracker("run")
|
||||
marker := tracker.marker(7, 9)
|
||||
|
||||
tracker.observe(marker, 200, deliveryLive)
|
||||
tracker.expect(marker, 100, 200)
|
||||
|
||||
report := tracker.report()
|
||||
if report.Expected != 1 || report.Delivered != 1 || report.LiveDelivered != 1 || report.Missing != 0 {
|
||||
t.Fatalf("unexpected report: %+v", report)
|
||||
}
|
||||
}
|
||||
|
||||
func TestDeliveryTrackerMeasuresFromSendStart(t *testing.T) {
|
||||
tracker := newDeliveryTracker("run")
|
||||
marker := tracker.marker(1, 1)
|
||||
tracker.begin(marker, 100, 200, time.Now().Add(-25*time.Millisecond))
|
||||
tracker.observe(marker, 200, deliveryLive)
|
||||
tracker.finish(marker, true)
|
||||
|
||||
report := tracker.report()
|
||||
if report.E2EP50MS < 20 || report.E2EP99MS < report.E2EP50MS || report.E2EMaxMS < report.E2EP99MS {
|
||||
t.Fatalf("unexpected e2e latency report: %+v", report)
|
||||
}
|
||||
}
|
||||
|
||||
func TestDeliveryTrackerSeparatesDifferenceRecoveryAndDuplicates(t *testing.T) {
|
||||
tracker := newDeliveryTracker("run")
|
||||
liveMarker := tracker.marker(1, 1)
|
||||
differenceMarker := tracker.marker(2, 1)
|
||||
tracker.expect(liveMarker, 100, 200)
|
||||
tracker.expect(differenceMarker, 200, 300)
|
||||
|
||||
tracker.observe(liveMarker, 200, deliveryLive)
|
||||
tracker.observe(liveMarker, 200, deliveryLive)
|
||||
tracker.observe(liveMarker, 200, deliveryDifference)
|
||||
tracker.observe(differenceMarker, 300, deliveryDifference)
|
||||
|
||||
report := tracker.report()
|
||||
if report.Delivered != 2 || report.LiveDelivered != 1 || report.DifferenceRecovered != 1 {
|
||||
t.Fatalf("unexpected delivery sources: %+v", report)
|
||||
}
|
||||
if report.DuplicateObservations != 1 {
|
||||
t.Fatalf("duplicate observations = %d, want 1", report.DuplicateObservations)
|
||||
}
|
||||
}
|
||||
|
||||
func TestObserveUpdatesClassExtractsPrivateMessages(t *testing.T) {
|
||||
tracker := newDeliveryTracker("run")
|
||||
shortMarker := tracker.marker(1, 1)
|
||||
fullMarker := tracker.marker(2, 1)
|
||||
tracker.expect(shortMarker, 100, 200)
|
||||
tracker.expect(fullMarker, 300, 200)
|
||||
|
||||
observeUpdatesClass(tracker, 200, &tg.UpdateShortMessage{Message: shortMarker}, deliveryLive)
|
||||
observeUpdatesClass(tracker, 200, &tg.Updates{Updates: []tg.UpdateClass{
|
||||
&tg.UpdateNewMessage{Message: &tg.Message{Message: fullMarker}},
|
||||
}}, deliveryLive)
|
||||
|
||||
report := tracker.report()
|
||||
if report.Delivered != 2 || report.Missing != 0 {
|
||||
t.Fatalf("unexpected report: %+v", report)
|
||||
}
|
||||
}
|
||||
|
||||
func TestDeliveryTrackerRejectsForeignAndMalformedMarkers(t *testing.T) {
|
||||
tracker := newDeliveryTracker("run")
|
||||
tracker.observe("telesrv-load-v3/other/1/1", 200, deliveryLive)
|
||||
tracker.observe("telesrv-load-v3/run/not-an-index/1", 200, deliveryLive)
|
||||
|
||||
if report := tracker.report(); report.UnmatchedMarkers != 0 {
|
||||
t.Fatalf("foreign marker entered report: %+v", report)
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue