mirror of
https://github.com/TeaOSLab/EdgeNode.git
synced 2025-12-01 04:40:54 +08:00
套餐可以设置带宽限制
This commit is contained in:
44
internal/utils/ratelimit/counter_test.go
Normal file
44
internal/utils/ratelimit/counter_test.go
Normal file
@@ -0,0 +1,44 @@
|
||||
// Copyright 2021 Liuxiangchao iwind.liu@gmail.com. All rights reserved.
|
||||
|
||||
package ratelimit_test
|
||||
|
||||
import (
|
||||
"github.com/TeaOSLab/EdgeNode/internal/utils/ratelimit"
|
||||
"github.com/TeaOSLab/EdgeNode/internal/utils/testutils"
|
||||
"testing"
|
||||
"time"
|
||||
)
|
||||
|
||||
func TestCounter_ACK(t *testing.T) {
|
||||
if !testutils.IsSingleTesting() {
|
||||
return
|
||||
}
|
||||
|
||||
var counter = ratelimit.NewCounter(10)
|
||||
|
||||
go func() {
|
||||
for i := 0; i < 10; i++ {
|
||||
counter.Ack()
|
||||
}
|
||||
//counter.Release()
|
||||
t.Log("waiting", time.Now().Unix())
|
||||
counter.Ack()
|
||||
t.Log("done", time.Now().Unix())
|
||||
}()
|
||||
|
||||
time.Sleep(1 * time.Second)
|
||||
counter.Close()
|
||||
time.Sleep(1 * time.Second)
|
||||
}
|
||||
|
||||
func TestCounter_Release(t *testing.T) {
|
||||
var counter = ratelimit.NewCounter(10)
|
||||
|
||||
for i := 0; i < 10; i++ {
|
||||
counter.Ack()
|
||||
}
|
||||
for i := 0; i < 10; i++ {
|
||||
counter.Release()
|
||||
}
|
||||
t.Log(counter.Len())
|
||||
}
|
||||
Reference in New Issue
Block a user