diff --git a/src/Connectors/Test.js b/src/Connectors/Test.js
index 8c14b047843f3a3ea1932ca6b0173eeb849e8f4c..9492eb27c43effee877ffce783a710f874503cd3 100644
--- a/src/Connectors/Test.js
+++ b/src/Connectors/Test.js
@@ -81,7 +81,7 @@ module.exports = function (Y) {
               } else {
                 resolve()
               }
-            }, 10)
+            }, 0)
           }
         }
         globalRoom.whenTransactionsFinished().then(nextFlush)
diff --git a/src/SpecHelper.js b/src/SpecHelper.js
index 5e5bd07b947ef89e2fdd5943e566206ee05ae346..5683962d2e4517b8e322fd5226f8b0b898e13fb4 100644
--- a/src/SpecHelper.js
+++ b/src/SpecHelper.js
@@ -139,8 +139,7 @@ g.applyRandomTransactionsWithGC = async(function * applyRandomTransactions (user
 })
 
 g.garbageCollectAllUsers = async(function * garbageCollectAllUsers (users) {
-  // gc two times because of the two gc phases (really collect everything)
-  yield wait(100)
+  yield Y.utils.globalRoom.flushAll()
   for (var i in users) {
     yield users[i].db.emptyGarbageCollector()
   }
@@ -254,7 +253,6 @@ g.createUsers = async(function * createUsers (self, numberOfUsers, database, ini
     Y.utils.globalRoom.users[u].y.destroy()
   }
   self.users = null
-  yield wait()
 
   var promises = []
   for (var i = 0; i < numberOfUsers; i++) {