Reader provides a random reader that can reset during testing.
var Reader io.Reader
func CryptoRandInt63n(max int64) (int64, error)
CryptoRandInt63n returns a random int64 between zero and value of max obtained from the crypto rand source.
func Int63n(reader io.Reader, max int64) (int64, error)
Int63n returns a int64 between zero and value of max, read from an io.Reader source.
UUID provides computing random UUID version 4 values from a random source reader.
type UUID struct {
// contains filtered or unexported fields
}
func NewUUID(r io.Reader) *UUID
NewUUID returns an initialized UUID value that can be used to retrieve random UUID version 4 values.
func (r *UUID) GetBytes() (u []byte, err error)
GetBytes returns a byte slice containing a random UUID version 4 sourced from the random reader the UUID was created with. Returns an error if unable to compute the UUID.
func (r *UUID) GetUUID() (string, error)
GetUUID returns a random UUID version 4 string representation sourced from the random reader the UUID was created with. Returns an error if unable to compute the UUID.
UUIDIdempotencyToken provides a utility to get idempotency tokens in the UUID format.
type UUIDIdempotencyToken struct {
// contains filtered or unexported fields
}
func NewUUIDIdempotencyToken(r io.Reader) *UUIDIdempotencyToken
NewUUIDIdempotencyToken returns a idempotency token provider returning tokens in the UUID random format using the reader provided.
func (u UUIDIdempotencyToken) GetIdempotencyToken() (string, error)
GetIdempotencyToken returns a random UUID value for Idempotency token.