nomino/gen_rand_test.go

41 lines
712 B
Go

package nomino
import (
"testing"
"github.com/google/uuid"
"github.com/stretchr/testify/assert"
)
func TestUUID(t *testing.T) {
st, err := UUID(nil)(nil)
assert.NoError(t, err)
_, parseErr := uuid.Parse(st)
assert.NoError(t, parseErr)
}
type badRead struct{}
func (badRead) Read([]byte) (int, error) {
return 0, errTest
}
func TestUUIDFail(t *testing.T) {
uuid.SetRand(badRead{})
defer uuid.SetRand(nil)
_, err := UUID(nil)(nil)
assert.ErrorIs(t, err, errTest)
}
func TestRand(t *testing.T) {
st, err := Random()(nil)
assert.NoError(t, err)
assert.Len(t, st, 8)
}
func TestRandLen(t *testing.T) {
st, err := Random(RandomLength(32))(nil)
assert.NoError(t, err)
assert.Len(t, st, 32)
}