add the 'spurious' notifies
authormeejah <meejah@meejah.ca>
Mon, 26 Oct 2015 17:25:56 +0000 (11:25 -0600)
committermeejah <meejah@meejah.ca>
Mon, 26 Oct 2015 20:24:36 +0000 (14:24 -0600)
src/allmydata/frontends/magic_folder.py
src/allmydata/test/test_magic_folder.py

index 4bfa16f1c52467bb5cd55888d942abb142307cb2..6127537275c5602da9b17d94a28960fe0c5005e5 100644 (file)
@@ -625,6 +625,7 @@ class Downloader(QueueMixin, WriteFileMixin):
             if self._should_download(relpath_u, metadata['version']):
                 extension += [(relpath_u, file_node, metadata)]
             else:
+                self._log("Excluding '{0}'".format(relpath_u))
                 self._count('objects_excluded')
                 self._call_hook(None, 'processed')
         return extension
index a799f51a774d30a3170f9f17c9dc895614cd4e12..88e5bc241e40c1577cf698081cf9ef025ee5dd6b 100644 (file)
@@ -682,6 +682,7 @@ class MagicFolderTestMixin(MagicFolderCLITestMixin, ShouldFailMixin, ReallyEqual
 
         def _wait_for_Bob(ign, downloaded_d):
             print "Now waiting for Bob to download\n"
+            self.magicfolder = self.bob_magicfolder
             bob_clock.advance(0)
             return downloaded_d
 
@@ -721,6 +722,19 @@ class MagicFolderTestMixin(MagicFolderCLITestMixin, ShouldFailMixin, ReallyEqual
             self.notify(to_filepath(self.file_path), self.inotify.IN_DELETE)
         d.addCallback(_wait_for, Alice_to_delete_file)
 
+        def notify_bob_moved(ign):
+            d0 = self.bob_magicfolder.uploader.set_hook('processed')
+            self.magicfolder = self.bob_magicfolder
+            p = abspath_expanduser_unicode(u"file1", base=self.bob_magicfolder.uploader._local_path_u)
+            self.notify(to_filepath(p), self.inotify.IN_MOVED_FROM)
+
+            def foo(x):
+                self.notify(to_filepath(p + u'.backup'), self.inotify.IN_MOVED_TO)
+                return ign
+            d0.addCallback(foo)
+            return d0
+        d.addCallback(notify_bob_moved)
+
         d.addCallback(lambda ign: self._check_version_in_dmd(self.alice_magicfolder, u"file1", 1))
         d.addCallback(lambda ign: self._check_version_in_local_db(self.alice_magicfolder, u"file1", 1))
         d.addCallback(_check_uploader_count, 'objects_failed', 0)
@@ -734,6 +748,7 @@ class MagicFolderTestMixin(MagicFolderCLITestMixin, ShouldFailMixin, ReallyEqual
 
         def Alice_to_rewrite_file():
             print "Alice rewrites file\n"
+            self.magicfolder = self.alice_magicfolder
             self.file_path = abspath_expanduser_unicode(u"file1", base=self.alice_magicfolder.uploader._local_path_u)
             fileutil.write(self.file_path, "Alice suddenly sees the white rabbit running into the forest.")
             self.notify(to_filepath(self.file_path), self.inotify.IN_CLOSE_WRITE)
@@ -771,7 +786,7 @@ class MagicFolderTestMixin(MagicFolderCLITestMixin, ShouldFailMixin, ReallyEqual
 
         d.addCallback(lambda ign: self.failIf(os.path.exists(path_u)))
         d.addCallback(lambda ign: self._check_version_in_local_db(self.bob_magicfolder, encoded_path_u, None))
-        d.addCallback(_check_downloader_count, 'objects_excluded', 1)
+        d.addCallback(_check_downloader_count, 'objects_excluded', 2)
         d.addCallback(_check_downloader_count, 'objects_downloaded', 3)
 
         def _cleanup(ign, magicfolder, clock):