github.com/willmadison/cli@v6.40.1-0.20181018160101-29d5937903ff+incompatible/util/randomword/generator_test.go (about) 1 package randomword_test 2 3 import ( 4 "time" 5 6 . "code.cloudfoundry.org/cli/util/randomword" 7 8 . "github.com/onsi/ginkgo" 9 . "github.com/onsi/gomega" 10 ) 11 12 var _ = Describe("Generator", func() { 13 var gen Generator 14 15 BeforeEach(func() { 16 gen = Generator{} 17 }) 18 19 Describe("RandomAdjective", func() { 20 It("generates a random adjective each time it is called", func() { 21 setOne := []string{} 22 setTwo := []string{} 23 24 for i := 0; i < 3; i++ { 25 setOne = append(setOne, gen.RandomAdjective()) 26 // We wait for 3 millisecond because the seed we use to generate the 27 // randomness has a unit of 1 nanosecond plus random test flakiness 28 time.Sleep(3) 29 setTwo = append(setTwo, gen.RandomAdjective()) 30 } 31 Expect(setOne).ToNot(ConsistOf(setTwo)) 32 }) 33 }) 34 35 Describe("RandomNoun", func() { 36 It("generates a random noun each time it is called", func() { 37 setOne := []string{} 38 setTwo := []string{} 39 40 for i := 0; i < 3; i++ { 41 setOne = append(setOne, gen.RandomNoun()) 42 // We wait for 3 millisecond because the seed we use to generate the 43 // randomness has a unit of 1 nanosecond plus random test flakiness 44 time.Sleep(3) 45 setTwo = append(setTwo, gen.RandomNoun()) 46 } 47 Expect(setOne).ToNot(ConsistOf(setTwo)) 48 }) 49 }) 50 51 Describe("Babble", func() { 52 It("generates a random adjective noun pair each time it is called", func() { 53 wordPair := gen.Babble() 54 Expect(wordPair).To(MatchRegexp("^\\w+-\\w+$")) 55 }) 56 }) 57 })