From c0016e47931a5871cbf23cb37ce43d16986fba52 Mon Sep 17 00:00:00 2001 From: Daira Hopwood <daira@jacaranda.org> Date: Mon, 13 Jul 2015 18:08:45 +0100 Subject: [PATCH] Remove workaround for collective_dircap and repair some tests. Signed-off-by: Daira Hopwood <daira@jacaranda.org> --- src/allmydata/frontends/magic_folder.py | 13 ++++++------- src/allmydata/test/test_cli_magic_folder.py | 2 ++ src/allmydata/test/test_magic_folder.py | 21 ++++----------------- 3 files changed, 12 insertions(+), 24 deletions(-) diff --git a/src/allmydata/frontends/magic_folder.py b/src/allmydata/frontends/magic_folder.py index 6eba9cc4..ff9e2554 100644 --- a/src/allmydata/frontends/magic_folder.py +++ b/src/allmydata/frontends/magic_folder.py @@ -77,13 +77,12 @@ class MagicFolder(service.MultiService): # TODO: allow a path rather than a cap URI. self._upload_dirnode = self._client.create_node_from_uri(upload_dircap) - if collective_dircap != "": - # XXX this condition used for some unit tests - self._collective_dirnode = self._client.create_node_from_uri(collective_dircap) - if not IDirectoryNode.providedBy(self._collective_dirnode): - raise AssertionError("The URI in 'private/collective_dircap' does not refer to a directory.") - 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._collective_dirnode = self._client.create_node_from_uri(collective_dircap) + if not IDirectoryNode.providedBy(self._collective_dirnode): + raise AssertionError("The URI in 'private/collective_dircap' does not refer to a directory.") + 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.") if not IDirectoryNode.providedBy(self._upload_dirnode): raise AssertionError("The URI in 'private/magic_folder_dircap' does not refer to a directory.") diff --git a/src/allmydata/test/test_cli_magic_folder.py b/src/allmydata/test/test_cli_magic_folder.py index f6e9a16d..9894ed93 100644 --- a/src/allmydata/test/test_cli_magic_folder.py +++ b/src/allmydata/test/test_cli_magic_folder.py @@ -95,6 +95,8 @@ class MagicFolderCLITestMixin(CLITestMixin, GridTestMixin): d.addCallback(_done) def get_alice_caps(x): self.collective_dircap, self.upload_dircap = self.get_caps_from_files(0) + self.collective_dirnode = self.client.create_node_from_uri(self.collective_dircap) + self.upload_dirnode = self.client.create_node_from_uri(self.upload_dircap) d.addCallback(get_alice_caps) d.addCallback(lambda x: self.check_joined_config(0, self.upload_dircap)) d.addCallback(lambda x: self.check_config(0, local_dir)) diff --git a/src/allmydata/test/test_magic_folder.py b/src/allmydata/test/test_magic_folder.py index ac5e0d9a..303e5b5c 100644 --- a/src/allmydata/test/test_magic_folder.py +++ b/src/allmydata/test/test_magic_folder.py @@ -30,7 +30,6 @@ class MagicFolderTestMixin(MagicFolderCLITestMixin, ShouldFailMixin, ReallyEqual temp = self.mktemp() self.basedir = abspath_expanduser_unicode(temp.decode(get_filesystem_encoding())) self.magicfolder = None - self.dir_node = None def _get_count(self, name): return self.stats_provider.get_stats()["counters"].get(name, 0) @@ -42,16 +41,6 @@ class MagicFolderTestMixin(MagicFolderCLITestMixin, ShouldFailMixin, ReallyEqual self.failUnlessEqual(bdb.VERSION, 3) return bdb - def _made_upload_dir(self, n): - if self.dir_node == None: - self.dir_node = n - else: - n = self.dir_node - self.failUnless(IDirectoryNode.providedBy(n)) - self.upload_dirnode = n - self.upload_dircap = n.get_uri() - self.collective_dircap = "" - def _create_magicfolder(self, ign): dbfile = abspath_expanduser_unicode(u"magicfolderdb.sqlite", base=self.basedir) self.magicfolder = MagicFolder(self.client, self.upload_dircap, self.collective_dircap, self.local_dir, @@ -104,9 +93,9 @@ class MagicFolderTestMixin(MagicFolderCLITestMixin, ShouldFailMixin, ReallyEqual self.client = self.g.clients[0] self.stats_provider = self.client.stats_provider - d = self.client.create_dirnode() - d.addCallback(self._made_upload_dir) + d = self.create_invite_join_magic_folder(u"Alice", self.local_dir) d.addCallback(self._create_magicfolder) + d.addCallback(lambda ign: self.failUnlessReallyEqual(self._get_count('magic_folder.dirs_monitored'), 1)) d.addBoth(self.cleanup) d.addCallback(lambda ign: self.failUnlessReallyEqual(self._get_count('magic_folder.dirs_monitored'), 0)) @@ -209,6 +198,7 @@ class MagicFolderTestMixin(MagicFolderCLITestMixin, ShouldFailMixin, ReallyEqual d = self.create_invite_join_magic_folder(u"Alice", self.local_dir) d.addCallback(self._create_magicfolder) + def create_test_file(result): d2 = defer.Deferred() self.magicfolder.set_processed_callback(d2.callback, ignore_count=0) @@ -254,10 +244,7 @@ class MagicFolderTestMixin(MagicFolderCLITestMixin, ShouldFailMixin, ReallyEqual self.client = self.g.clients[0] self.stats_provider = self.client.stats_provider - d = self.client.create_dirnode() - - d.addCallback(self._made_upload_dir) - self.collective_dircap = "" + d = self.create_invite_join_magic_folder(u"Alice", self.local_dir) d.addCallback(self._create_magicfolder) # Write something short enough for a LIT file. -- 2.45.2