utils.go 393 B

12345678910111213141516171819202122
  1. package testdata
  2. import (
  3. "math/rand"
  4. "time"
  5. )
  6. type randomStringProvider struct {
  7. r *rand.Rand
  8. data []string
  9. }
  10. func newRandomStringProvider(data []string) *randomStringProvider {
  11. return &randomStringProvider{
  12. r: rand.New(rand.NewSource(time.Now().UnixNano())),
  13. data: data,
  14. }
  15. }
  16. func (p *randomStringProvider) Next() string {
  17. return p.data[p.r.Int31n(int32(len(p.data)))]
  18. }