Wade Simmons 1 month ago
parent
commit
e5e449cb19
1 changed files with 7 additions and 2 deletions
  1. 7 2
      bits_test.go

+ 7 - 2
bits_test.go

@@ -212,8 +212,11 @@ func TestBitsLostCounter(t *testing.T) {
 	assert.Equal(t, int64(36), b.lostCounter.Count())
 	assert.Equal(t, int64(0), b.dupeCounter.Count())
 	assert.Equal(t, int64(0), b.outOfWindowCounter.Count())
+}
 
-	b = NewBits(10)
+func TestBitsLostCounterIssue1(t *testing.T) {
+	l := test.NewLogger()
+	b := NewBits(10)
 	b.lostCounter.Clear()
 	b.dupeCounter.Clear()
 	b.outOfWindowCounter.Clear()
@@ -232,6 +235,7 @@ func TestBitsLostCounter(t *testing.T) {
 	assert.True(t, b.Update(l, 11))
 
 	assert.True(t, b.Update(l, 14))
+	// Issue seems to be here, we reset missing packet 8 to false here and don't increment the lost counter
 	assert.True(t, b.Update(l, 19))
 	assert.True(t, b.Update(l, 12))
 	assert.True(t, b.Update(l, 13))
@@ -242,7 +246,8 @@ func TestBitsLostCounter(t *testing.T) {
 	assert.True(t, b.Update(l, 20))
 	assert.True(t, b.Update(l, 21))
 
-	assert.Equal(t, int64(0), b.lostCounter.Count())
+	// We missed packet 8 above
+	assert.Equal(t, int64(1), b.lostCounter.Count())
 	assert.Equal(t, int64(0), b.dupeCounter.Count())
 	assert.Equal(t, int64(0), b.outOfWindowCounter.Count())
 }