1
Fork 0
mirror of https://github.com/jech/galene.git synced 2024-11-23 00:55:58 +01:00
galene/estimator/estimator_test.go

46 lines
835 B
Go
Raw Normal View History

2020-04-30 20:15:52 +02:00
package estimator
import (
"testing"
2020-12-06 19:43:17 +01:00
"galene/rtptime"
2020-04-30 20:15:52 +02:00
)
func TestEstimator(t *testing.T) {
now := rtptime.Jiffies()
e := New(rtptime.JiffiesPerSec)
2020-04-30 20:15:52 +02:00
e.estimate(now)
2020-05-31 23:47:12 +02:00
e.Accumulate(42)
e.Accumulate(128)
e.estimate(now + rtptime.JiffiesPerSec)
rate, packetRate :=
e.estimate(now + (rtptime.JiffiesPerSec * 1001) / 1000)
2020-04-30 20:15:52 +02:00
if rate != 42+128 {
t.Errorf("Expected %v, got %v", 42+128, rate)
}
if packetRate != 2 {
t.Errorf("Expected 2, got %v", packetRate)
}
2020-05-31 23:54:55 +02:00
totalP, totalB := e.Totals()
if totalP != 2 {
t.Errorf("Expected 2, got %v", totalP)
}
if totalB != 42+128 {
t.Errorf("Expected %v, got %v", 42+128, totalB)
}
e.Accumulate(12)
totalP, totalB = e.Totals()
if totalP != 3 {
t.Errorf("Expected 2, got %v", totalP)
}
if totalB != 42+128+12 {
t.Errorf("Expected %v, got %v", 42+128, totalB)
}
2020-04-30 20:15:52 +02:00
}