You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

45 lines
829 B

  1. package rand
  2. import (
  3. "testing"
  4. "github.com/stretchr/testify/assert"
  5. )
  6. func TestRandStr(t *testing.T) {
  7. l := 243
  8. s := Str(l)
  9. assert.Equal(t, l, len(s))
  10. }
  11. func TestRandBytes(t *testing.T) {
  12. l := 243
  13. b := Bytes(l)
  14. assert.Equal(t, l, len(b))
  15. }
  16. func BenchmarkRandBytes10B(b *testing.B) {
  17. benchmarkRandBytes(b, 10)
  18. }
  19. func BenchmarkRandBytes100B(b *testing.B) {
  20. benchmarkRandBytes(b, 100)
  21. }
  22. func BenchmarkRandBytes1KiB(b *testing.B) {
  23. benchmarkRandBytes(b, 1024)
  24. }
  25. func BenchmarkRandBytes10KiB(b *testing.B) {
  26. benchmarkRandBytes(b, 10*1024)
  27. }
  28. func BenchmarkRandBytes100KiB(b *testing.B) {
  29. benchmarkRandBytes(b, 100*1024)
  30. }
  31. func BenchmarkRandBytes1MiB(b *testing.B) {
  32. benchmarkRandBytes(b, 1024*1024)
  33. }
  34. func benchmarkRandBytes(b *testing.B, n int) {
  35. for i := 0; i < b.N; i++ {
  36. _ = Bytes(n)
  37. }
  38. b.ReportAllocs()
  39. }