summary refs log tree commit diff
path: root/tests/unittest.py
diff options
context:
space:
mode:
authorDavid Robertson <davidr@element.io>2021-10-06 13:56:45 +0100
committerGitHub <noreply@github.com>2021-10-06 12:56:45 +0000
commit370bca32e60a854ab063f1abedb087dacae37e5a (patch)
treefc1f91ec6da55e34ac6c223b308881e719eee6b2 /tests/unittest.py
parentUpdated development doc on samling environment for testing. (#10973) (diff)
downloadsynapse-370bca32e60a854ab063f1abedb087dacae37e5a.tar.xz
Don't drop user dir deltas when server leaves room (#10982)
Fix a long-standing bug where a batch of user directory changes would be
silently dropped if the server left a room early in the batch.

* Pull out `wait_for_background_update` in tests

Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
Diffstat (limited to 'tests/unittest.py')
-rw-r--r--tests/unittest.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/tests/unittest.py b/tests/unittest.py
index ae393ee53e..81c1a9e9d2 100644
--- a/tests/unittest.py
+++ b/tests/unittest.py
@@ -317,6 +317,15 @@ class HomeserverTestCase(TestCase):
             self.reactor.advance(0.01)
             time.sleep(0.01)
 
+    def wait_for_background_updates(self) -> None:
+        """Block until all background database updates have completed."""
+        while not self.get_success(
+            self.store.db_pool.updates.has_completed_background_updates()
+        ):
+            self.get_success(
+                self.store.db_pool.updates.do_next_background_update(100), by=0.1
+            )
+
     def make_homeserver(self, reactor, clock):
         """
         Make and return a homeserver.