(&mut self)
| 150 | } |
| 151 | |
| 152 | pub fn generate(&mut self) { |
| 153 | if self.has_generated { |
| 154 | panic!("Test data has already been generated"); |
| 155 | } |
| 156 | |
| 157 | self.has_generated = true; |
| 158 | |
| 159 | // Add the user groups |
| 160 | let mut user_groups = Vec::new(); |
| 161 | for _ in 0..self.user_groups { |
| 162 | let user_group = |
| 163 | user_group::add_user_group(self.env, self.station_canister_id, self.requester); |
| 164 | self.increment_request_count(); |
| 165 | |
| 166 | if self.perform_edit_operations { |
| 167 | user_group::edit_user_group( |
| 168 | self.env, |
| 169 | self.station_canister_id, |
| 170 | self.requester, |
| 171 | user_group.id.clone(), |
| 172 | format!("{}_edited", user_group.name), |
| 173 | ); |
| 174 | self.increment_request_count(); |
| 175 | } |
| 176 | |
| 177 | user_groups.push(user_group); |
| 178 | } |
| 179 | |
| 180 | // Add the users |
| 181 | let mut user_group_ids = user_groups |
| 182 | .iter() |
| 183 | .map(|group| group.id.clone()) |
| 184 | .collect::<Vec<_>>(); |
| 185 | |
| 186 | user_group_ids.truncate(self.max_user_groups_per_user); |
| 187 | |
| 188 | for _ in 0..self.users { |
| 189 | let user = user::add_user( |
| 190 | self.env, |
| 191 | self.station_canister_id, |
| 192 | self.requester, |
| 193 | user_group_ids.clone(), |
| 194 | ); |
| 195 | self.increment_request_count(); |
| 196 | |
| 197 | if self.perform_edit_operations { |
| 198 | user::edit_user_name( |
| 199 | self.env, |
| 200 | self.station_canister_id, |
| 201 | self.requester, |
| 202 | user.id.clone(), |
| 203 | format!("{}_edited", user.name), |
| 204 | ); |
| 205 | self.increment_request_count(); |
| 206 | } |
| 207 | } |
| 208 | |
| 209 | // Add the accounts |
no test coverage detected