github.com/benoitkugler/goacve@v0.0.0-20201217100549-151ce6e55dc8/server/passwords/data_test.go (about) 1 package passwords 2 3 import "math/rand" 4 5 func randint64() int64 { 6 return int64(rand.Intn(1000000)) 7 } 8 9 func randSliceint64() []int64 { 10 l := rand.Intn(10) 11 out := make([]int64, l) 12 for i := range out { 13 out[i] = randint64() 14 } 15 return out 16 } 17 18 func randIds() Ids { 19 return Ids(randSliceint64()) 20 } 21 22 var letterRunes2 = []rune("azertyuiopqsdfghjklmwxcvbn123456789é@!?&èïab ") 23 24 func randstring() string { 25 b := make([]rune, 50) 26 maxLength := len(letterRunes2) 27 for i := range b { 28 b[i] = letterRunes2[rand.Intn(maxLength)] 29 } 30 return string(b) 31 } 32 33 func randBasePassword() BasePassword { 34 return BasePassword{ 35 Id: randint64(), 36 Provenance: randstring(), 37 Loggin: randstring(), 38 Description: randstring(), 39 } 40 } 41 42 func randuint8() uint8 { 43 return uint8(rand.Intn(1000000)) 44 } 45 46 func randSliceuint8() []byte { 47 l := rand.Intn(10) 48 out := make([]byte, l) 49 for i := range out { 50 out[i] = randuint8() 51 } 52 return out 53 } 54 55 func randPassword() Password { 56 return Password{ 57 BasePassword: randBasePassword(), 58 PasswordCrypted: randSliceuint8(), 59 } 60 }