keycloak-aplcache

Details

diff --git a/testsuite/integration/src/test/java/org/keycloak/testsuite/account/AccountTest.java b/testsuite/integration/src/test/java/org/keycloak/testsuite/account/AccountTest.java
index 83bc12c..ab61236 100755
--- a/testsuite/integration/src/test/java/org/keycloak/testsuite/account/AccountTest.java
+++ b/testsuite/integration/src/test/java/org/keycloak/testsuite/account/AccountTest.java
@@ -261,7 +261,7 @@ public class AccountTest {
                 @Override
                 public void config(RealmManager manager, RealmModel adminstrationRealm, RealmModel appRealm) {
                     appRealm.setPasswordPolicy(new PasswordPolicy(null));
-               }
+                }
             });
         }
     }
@@ -368,44 +368,43 @@ public class AccountTest {
         });
 
         try {
-            List<Event> e = new LinkedList<Event>();
+            List<Event> expectedEvents = new LinkedList<Event>();
 
             loginPage.open();
             loginPage.clickRegister();
 
             registerPage.register("view", "log", "view-log@localhost", "view-log", "password", "password");
 
-            e.add(events.poll());
-            e.add(events.poll());
+            expectedEvents.add(events.poll());
+            expectedEvents.add(events.poll());
 
             profilePage.open();
             profilePage.updateProfile("view", "log2", "view-log@localhost");
 
-            e.add(events.poll());
+            expectedEvents.add(events.poll());
 
             logPage.open();
 
-            Collections.reverse(e);
-
             Assert.assertTrue(logPage.isCurrent());
-            Thread.sleep(100); // seems to be some kind of race here.
-            final int expectedEvents = e.size();
-            Retry.execute(new Runnable() {
-                @Override
-                public void run() {
-                    Assert.assertEquals(expectedEvents, logPage.getEvents().size());
+
+            List<List<String>> actualEvents = logPage.getEvents();
+
+            Assert.assertEquals(expectedEvents.size(), actualEvents.size());
+
+            for (Event e : expectedEvents) {
+                boolean match = false;
+                for (List<String> a : logPage.getEvents()) {
+                    if (e.getType().toString().replace('_', ' ').toLowerCase().equals(a.get(1)) &&
+                            e.getIpAddress().equals(a.get(2)) &&
+                            e.getClientId().equals(a.get(3))) {
+                        match = true;
+                        break;
+                    }
+                }
+                if (!match) {
+                    Assert.fail("Event not found " + e.getType());
                 }
-            }, 10, 500);
-
-            Iterator<List<String>> itr = logPage.getEvents().iterator();
-            for (Event event : e) {
-                List<String> a = itr.next();
-                Assert.assertEquals(event.getType().toString().replace('_', ' ').toLowerCase(), a.get(1));
-                Assert.assertEquals(event.getIpAddress(), a.get(2));
-                Assert.assertEquals(event.getClientId(), a.get(3));
             }
-        } catch (InterruptedException e) {
-            e.printStackTrace();
         } finally {
             keycloakRule.update(new KeycloakSetup() {
                 @Override