github.com/darmach/terratest@v0.34.8-0.20210517103231-80931f95e3ff/modules/random/random_test.go (about) 1 package random 2 3 import ( 4 "strconv" 5 "testing" 6 7 "github.com/stretchr/testify/assert" 8 ) 9 10 func TestRandom(t *testing.T) { 11 t.Parallel() 12 13 min := 0 14 max := 100 15 16 for i := 0; i < 100000; i++ { 17 value := Random(min, max) 18 assert.True(t, value >= min && value <= max) 19 } 20 } 21 22 func TestRandomInt(t *testing.T) { 23 t.Parallel() 24 25 min := 0 26 max := 1000 27 28 list := []int{} 29 for i := min; i < max; i++ { 30 list = append(list, i) 31 } 32 33 for i := 0; i < 100000; i++ { 34 value := RandomInt(list) 35 assert.Contains(t, list, value) 36 } 37 } 38 39 func TestRandomString(t *testing.T) { 40 t.Parallel() 41 42 min := 0 43 max := 1000 44 45 list := []string{} 46 for i := min; i < max; i++ { 47 list = append(list, strconv.Itoa(i)) 48 } 49 50 for i := 0; i < 100000; i++ { 51 value := RandomString(list) 52 assert.Contains(t, list, value) 53 } 54 } 55 56 func TestUniqueId(t *testing.T) { 57 t.Parallel() 58 59 previouslySeen := map[string]bool{} 60 61 for i := 0; i < 100; i++ { 62 uniqueID := UniqueId() 63 assert.Len(t, uniqueID, 6) 64 assert.NotContains(t, previouslySeen, uniqueID) 65 66 previouslySeen[uniqueID] = true 67 } 68 }