Files
mautrix-telegram/pkg/gotd/telegram/updates/gap_buffer_test.go
T
2025-06-27 20:03:37 -07:00

25 lines
553 B
Go

package updates
import (
"testing"
"github.com/stretchr/testify/require"
)
func TestGapBuffer(t *testing.T) {
buf := new(gapBuffer)
buf.Enable(1, 7)
require.True(t, buf.Consume(update{State: 4, Count: 3}))
require.Equal(t, []gap{{4, 7}}, buf.gaps)
require.False(t, buf.Consume(update{State: 1, Count: 1}))
require.Equal(t, []gap{{4, 7}}, buf.gaps)
require.False(t, buf.Consume(update{State: 8, Count: 1}))
require.Equal(t, []gap{{4, 7}}, buf.gaps)
require.True(t, buf.Consume(update{State: 7, Count: 3}))
require.Empty(t, buf.gaps)
}