frp/pkg/util/metric/date_counter_test.go

28 lines
524 B
Go
Raw Normal View History

2017-03-27 23:46:38 +08:00
package metric
import (
"testing"
2025-05-26 14:54:03 +08:00
"github.com/stretchr/testify/require"
2017-03-27 23:46:38 +08:00
)
func TestDateCounter(t *testing.T) {
2025-05-26 14:54:03 +08:00
require := require.New(t)
2017-03-27 23:46:38 +08:00
dc := NewDateCounter(3)
dc.Inc(10)
2025-05-26 14:54:03 +08:00
require.EqualValues(10, dc.TodayCount())
2017-03-27 23:46:38 +08:00
dc.Dec(5)
2025-05-26 14:54:03 +08:00
require.EqualValues(5, dc.TodayCount())
2017-03-27 23:46:38 +08:00
counts := dc.GetLastDaysCount(3)
2025-05-26 14:54:03 +08:00
require.EqualValues(3, len(counts))
require.EqualValues(5, counts[0])
require.EqualValues(0, counts[1])
require.EqualValues(0, counts[2])
2017-03-27 23:46:38 +08:00
dcTmp := dc.Snapshot()
2025-05-26 14:54:03 +08:00
require.EqualValues(5, dcTmp.TodayCount())
2017-03-27 23:46:38 +08:00
}