|
32 | 32 | import static org.junit.Assert.assertThat;
|
33 | 33 | import static org.junit.Assert.fail;
|
34 | 34 |
|
| 35 | +import java.util.ArrayList; |
35 | 36 | import java.util.Arrays;
|
36 | 37 | import java.util.Collection;
|
37 | 38 | import java.util.HashMap;
|
| 39 | +import java.util.List; |
38 | 40 | import java.util.Map;
|
39 | 41 |
|
| 42 | +import org.hamcrest.Matcher; |
40 | 43 | import org.junit.Test;
|
41 | 44 | import org.junit.runner.RunWith;
|
42 | 45 | import org.junit.runners.Parameterized;
|
@@ -191,12 +194,25 @@ public void getUsersOnlyRoot() {
|
191 | 194 | @Test
|
192 | 195 | public void getUsers() {
|
193 | 196 | try {
|
| 197 | + // Allow & account for pre-existing users other than ROOT |
| 198 | + final Collection<UserEntity> initialUsers = arangoDB.getUsers(); |
194 | 199 | arangoDB.createUser(USER, PW, null);
|
195 | 200 | final Collection<UserEntity> users = arangoDB.getUsers();
|
196 | 201 | assertThat(users, is(notNullValue()));
|
197 |
| - assertThat(users.size(), is(2)); |
| 202 | + assertThat(users.size(), is(initialUsers.size()+1)); |
| 203 | + |
| 204 | + List<Matcher<? super String>> matchers = new ArrayList<Matcher<? super String>>(users.size()); |
| 205 | + // Add initial users, including root |
| 206 | + for (UserEntity userEntity : initialUsers) { |
| 207 | + Matcher<String> matcher = is(userEntity.getUser()); |
| 208 | + if (!matchers.contains(matcher)) |
| 209 | + matchers.add(matcher); |
| 210 | + } |
| 211 | + // Add USER |
| 212 | + matchers.add(is(USER)); |
| 213 | + |
198 | 214 | for (final UserEntity user : users) {
|
199 |
| - assertThat(user.getUser(), anyOf(is(ROOT), is(USER))); |
| 215 | + assertThat(user.getUser(), anyOf(matchers)); |
200 | 216 | }
|
201 | 217 | } finally {
|
202 | 218 | arangoDB.deleteUser(USER);
|
|
0 commit comments