mirror of
https://github.com/tailscale/tailscale.git
synced 2024-11-27 12:05:40 +00:00
7c1d6e35a5
Updates #11058 Change-Id: I35e7ef9b90e83cac04ca93fd964ad00ed5b48430 Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
73 lines
1.2 KiB
Go
73 lines
1.2 KiB
Go
// Copyright (c) Tailscale Inc & AUTHORS
|
|
// SPDX-License-Identifier: BSD-3-Clause
|
|
|
|
package fastuuid
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/google/uuid"
|
|
)
|
|
|
|
func TestNewUUID(t *testing.T) {
|
|
g := pool.Get().(*generator)
|
|
defer pool.Put(g)
|
|
u := g.newUUID()
|
|
if u[6] != (u[6]&0x0f)|0x40 {
|
|
t.Errorf("version bits are incorrect")
|
|
}
|
|
if u[8] != (u[8]&0x3f)|0x80 {
|
|
t.Errorf("variant bits are incorrect")
|
|
}
|
|
}
|
|
|
|
func BenchmarkBasic(b *testing.B) {
|
|
b.Run("NewUUID", func(b *testing.B) {
|
|
for range b.N {
|
|
NewUUID()
|
|
}
|
|
})
|
|
|
|
b.Run("uuid.New-unpooled", func(b *testing.B) {
|
|
uuid.DisableRandPool()
|
|
for range b.N {
|
|
uuid.New()
|
|
}
|
|
})
|
|
|
|
b.Run("uuid.New-pooled", func(b *testing.B) {
|
|
uuid.EnableRandPool()
|
|
for range b.N {
|
|
uuid.New()
|
|
}
|
|
})
|
|
}
|
|
|
|
func BenchmarkParallel(b *testing.B) {
|
|
b.Run("NewUUID", func(b *testing.B) {
|
|
b.RunParallel(func(pb *testing.PB) {
|
|
for pb.Next() {
|
|
NewUUID()
|
|
}
|
|
})
|
|
})
|
|
|
|
b.Run("uuid.New-unpooled", func(b *testing.B) {
|
|
uuid.DisableRandPool()
|
|
b.RunParallel(func(pb *testing.PB) {
|
|
for pb.Next() {
|
|
uuid.New()
|
|
}
|
|
})
|
|
})
|
|
|
|
b.Run("uuid.New-pooled", func(b *testing.B) {
|
|
uuid.EnableRandPool()
|
|
b.RunParallel(func(pb *testing.PB) {
|
|
for pb.Next() {
|
|
uuid.New()
|
|
}
|
|
})
|
|
})
|
|
}
|