1
0
Fork 0

Adding upstream version 2.52.6.

Signed-off-by: Daniel Baumann <daniel@debian.org>
This commit is contained in:
Daniel Baumann 2025-05-17 06:50:16 +02:00
parent a960158181
commit 6d002e9543
Signed by: daniel
GPG key ID: FBB4F0E80A80222F
441 changed files with 95392 additions and 0 deletions

View file

@ -0,0 +1,59 @@
package idempotency_test
import (
"testing"
"time"
"github.com/gofiber/fiber/v2/middleware/idempotency"
"github.com/gofiber/fiber/v2/utils"
)
// go test -run Test_MemoryLock
func Test_MemoryLock(t *testing.T) {
t.Parallel()
l := idempotency.NewMemoryLock()
{
err := l.Lock("a")
utils.AssertEqual(t, nil, err)
}
{
done := make(chan struct{})
go func() {
defer close(done)
err := l.Lock("a")
utils.AssertEqual(t, nil, err)
}()
select {
case <-done:
t.Fatal("lock acquired again")
case <-time.After(time.Second):
}
}
{
err := l.Lock("b")
utils.AssertEqual(t, nil, err)
}
{
err := l.Unlock("b")
utils.AssertEqual(t, nil, err)
}
{
err := l.Lock("b")
utils.AssertEqual(t, nil, err)
}
{
err := l.Unlock("c")
utils.AssertEqual(t, nil, err)
}
{
err := l.Lock("d")
utils.AssertEqual(t, nil, err)
}
}