AdGuardDNS/internal/connlimiter/counter_internal_test.go
Andrey Meshkov 16fd7a2fd0 Sync v2.2.0
2023-06-11 12:58:40 +03:00

43 lines
727 B
Go

package connlimiter
import (
"testing"
"github.com/stretchr/testify/assert"
)
func TestCounter(t *testing.T) {
t.Run("same", func(t *testing.T) {
c := &counter{
current: 0,
stop: 1,
resume: 1,
isAccepting: true,
}
assert.True(t, c.increment())
assert.False(t, c.increment())
c.decrement()
assert.True(t, c.increment())
assert.False(t, c.increment())
})
t.Run("more", func(t *testing.T) {
c := &counter{
current: 0,
stop: 2,
resume: 1,
isAccepting: true,
}
assert.True(t, c.increment())
assert.True(t, c.increment())
assert.False(t, c.increment())
c.decrement()
assert.True(t, c.increment())
assert.False(t, c.increment())
})
}