37 lines
604 B
Go
37 lines
604 B
Go
package testutil
|
|
|
|
import (
|
|
"fmt"
|
|
"math/rand/v2"
|
|
"strings"
|
|
)
|
|
|
|
const letters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
|
|
|
func RandomInt(min, max int64) int64 {
|
|
return min + rand.Int64N(max-min+1) // +1 to make max inclusive
|
|
}
|
|
|
|
func RandomString(n int) string {
|
|
var sb strings.Builder
|
|
k := len(letters)
|
|
|
|
for range n {
|
|
c := letters[rand.IntN(k)]
|
|
sb.WriteByte(c)
|
|
}
|
|
return sb.String()
|
|
}
|
|
|
|
func RandomOwner() string {
|
|
return RandomString(6)
|
|
}
|
|
|
|
func RandomMoney() int64 {
|
|
return RandomInt(0, 1000)
|
|
}
|
|
|
|
func RandomEmail() string {
|
|
return fmt.Sprintf("%[email protected]", RandomString(6))
|
|
}
|