@@ -21,6 +21,16 @@ const (
21
21
GroupVote = "group-vote"
22
22
)
23
23
24
+ func checkAccExists (acc sdk.AccAddress , g []* group.GroupMember , lastIndex int ) bool {
25
+ s := acc .String ()
26
+ for i := 0 ; i < lastIndex ; i ++ {
27
+ if g [i ].Member .Address == s {
28
+ return true
29
+ }
30
+ }
31
+ return false
32
+ }
33
+
24
34
func getGroups (r * rand.Rand , accounts []simtypes.Account ) []* group.GroupInfo {
25
35
groups := make ([]* group.GroupInfo , 3 )
26
36
for i := 0 ; i < 3 ; i ++ {
@@ -40,6 +50,9 @@ func getGroupMembers(r *rand.Rand, accounts []simtypes.Account) []*group.GroupMe
40
50
groupMembers := make ([]* group.GroupMember , 3 )
41
51
for i := 0 ; i < 3 ; i ++ {
42
52
acc , _ := simtypes .RandomAcc (r , accounts )
53
+ for checkAccExists (acc .Address , groupMembers , i ) {
54
+ acc , _ = simtypes .RandomAcc (r , accounts )
55
+ }
43
56
groupMembers [i ] = & group.GroupMember {
44
57
GroupId : uint64 (i + 1 ),
45
58
Member : & group.Member {
@@ -147,6 +160,11 @@ func getVoteOption(index int) group.VoteOption {
147
160
148
161
// RandomizedGenState generates a random GenesisState for the group module.
149
162
func RandomizedGenState (simState * module.SimulationState ) {
163
+ // The test requires we have at least 3 accounts.
164
+ if len (simState .Accounts ) < 3 {
165
+ return
166
+ }
167
+
150
168
// groups
151
169
var groups []* group.GroupInfo
152
170
simState .AppParams .GetOrGenerate (
0 commit comments