Make downloader delay a class-variable
authormeejah <meejah@meejah.ca>
Thu, 8 Oct 2015 02:32:19 +0000 (20:32 -0600)
committerDaira Hopwood <daira@jacaranda.org>
Mon, 25 Jan 2016 15:44:20 +0000 (15:44 +0000)
This gives the integration-style CLI-based tests a chance
to set the delay to 0 before the first 3-second delayed
call is queued to _lazy_tail in the Downloader

src/allmydata/frontends/magic_folder.py
src/allmydata/test/test_magic_folder.py

index 422a7c113a436abca280e1a87b606f24f23fd8f7..b6a9476f3627e8db623086656a8d792b1db3c57a 100644 (file)
@@ -378,6 +378,8 @@ class Uploader(QueueMixin):
 
 
 class Downloader(QueueMixin):
+    REMOTE_SCAN_INTERVAL = 3  # facilitates tests
+
     def __init__(self, client, local_path_u, db, collective_dircap, clock):
         QueueMixin.__init__(self, client, local_path_u, db, 'downloader', clock)
 
@@ -389,7 +391,7 @@ class Downloader(QueueMixin):
         if self._collective_dirnode.is_unknown() or not self._collective_dirnode.is_readonly():
             raise AssertionError("The URI in 'private/collective_dircap' is not a readonly cap to a directory.")
 
-        self._turn_delay = 3 # delay between remote scans
+        self._turn_delay = self.REMOTE_SCAN_INTERVAL
         self._download_scan_batch = {} # path -> [(filenode, metadata)]
 
     def start_scanning(self):
index 75511b799d37dfe3049b32ec3a011eae76af085a..5e2afa00aa0a9ccce97a38f0c90e22fc7c75f40e 100644 (file)
@@ -31,6 +31,7 @@ class MagicFolderTestMixin(MagicFolderCLITestMixin, ShouldFailMixin, ReallyEqual
         temp = self.mktemp()
         self.basedir = abspath_expanduser_unicode(temp.decode(get_filesystem_encoding()))
         self.magicfolder = None
+        Downloader.REMOTE_SCAN_INTERVAL = 0
 
     def _get_count(self, name, client=None):
         counters = (client or self.get_client()).stats_provider.get_stats()["counters"]