Separate the GenerateRandomAlphaOnlyString function from stringutils
Signed-off-by: chaowang <chaowang@localhost.localdomain> Upstream-commit: 7c35a2418265336a572976e2ced378ef4b6f1666 Component: engine
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
package testutil
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
func testLengthHelper(generator func(int) string, t *testing.T) {
|
||||
expectedLength := 20
|
||||
s := generator(expectedLength)
|
||||
assert.Equal(t, expectedLength, len(s))
|
||||
}
|
||||
|
||||
func testUniquenessHelper(generator func(int) string, t *testing.T) {
|
||||
repeats := 25
|
||||
set := make(map[string]struct{}, repeats)
|
||||
for i := 0; i < repeats; i = i + 1 {
|
||||
str := generator(64)
|
||||
assert.Equal(t, 64, len(str))
|
||||
_, ok := set[str]
|
||||
assert.False(t, ok, "Random number is repeated")
|
||||
set[str] = struct{}{}
|
||||
}
|
||||
}
|
||||
|
||||
func TestGenerateRandomAlphaOnlyStringLength(t *testing.T) {
|
||||
testLengthHelper(GenerateRandomAlphaOnlyString, t)
|
||||
}
|
||||
|
||||
func TestGenerateRandomAlphaOnlyStringUniqueness(t *testing.T) {
|
||||
testUniquenessHelper(GenerateRandomAlphaOnlyString, t)
|
||||
}
|
||||
Reference in New Issue
Block a user