From 4fc0eaae4655679108fcd958d5c0c011f5ea500c Mon Sep 17 00:00:00 2001 From: Daira Hopwood Date: Fri, 23 Oct 2015 23:13:43 +0100 Subject: [PATCH] More path fixes. Signed-off-by: Daira Hopwood --- src/allmydata/scripts/magic_folder_cli.py | 9 ++++++--- src/allmydata/test/test_cli_magic_folder.py | 6 ++---- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/src/allmydata/scripts/magic_folder_cli.py b/src/allmydata/scripts/magic_folder_cli.py index 8be94c92..e25f7b54 100644 --- a/src/allmydata/scripts/magic_folder_cli.py +++ b/src/allmydata/scripts/magic_folder_cli.py @@ -27,10 +27,13 @@ class CreateOptions(BasedirOptions): raise usage.UsageError("An alias must end with a ':' character.") self.alias = alias[:-1] self.nickname = None if nickname is None else argv_to_unicode(nickname) - self.local_dir = None if local_dir is None else argv_to_abspath(local_dir) + + # Expand the path relative to the current directory of the CLI command, not the node. + self.local_dir = None if local_dir is None else argv_to_abspath(local_dir, long_path=False) + if self.nickname and not self.local_dir: raise usage.UsageError("If NICKNAME is specified then LOCAL_DIR must also be specified.") - node_url_file = os.path.join(self['node-directory'], "node.url") + node_url_file = os.path.join(self['node-directory'], u"node.url") self['node-url'] = fileutil.read(node_url_file).strip() def _delegate_options(source_options, target_options): @@ -88,7 +91,7 @@ class InviteOptions(BasedirOptions): raise usage.UsageError("An alias must end with a ':' character.") self.alias = alias[:-1] self.nickname = argv_to_unicode(nickname) - node_url_file = os.path.join(self['node-directory'], "node.url") + node_url_file = os.path.join(self['node-directory'], u"node.url") self['node-url'] = open(node_url_file, "r").read().strip() aliases = get_aliases(self['node-directory']) self.aliases = aliases diff --git a/src/allmydata/test/test_cli_magic_folder.py b/src/allmydata/test/test_cli_magic_folder.py index 07e6ed7f..960b031b 100644 --- a/src/allmydata/test/test_cli_magic_folder.py +++ b/src/allmydata/test/test_cli_magic_folder.py @@ -8,7 +8,6 @@ from twisted.python import usage from allmydata.util.assertutil import precondition from allmydata.util import fileutil -from allmydata.util.fileutil import precondition_abspath from allmydata.scripts.common import get_aliases from allmydata.test.no_network import GridTestMixin from .test_cli import CLITestMixin @@ -81,11 +80,10 @@ class MagicFolderCLITestMixin(CLITestMixin, GridTestMixin): return collective_dircap, upload_dircap def check_config(self, client_num, local_dir): - precondition_abspath(local_dir) client_config = fileutil.read(os.path.join(self.get_clientdir(i=client_num), "tahoe.cfg")) local_dir_utf8 = local_dir.encode('utf-8') - ret = re.search("\[magic_folder\]\nenabled = True\nlocal.directory = %s" % (local_dir_utf8,), client_config) - self.failIf(ret is None) + magic_folder_config = "[magic_folder]\nenabled = True\nlocal.directory = %s" % (local_dir_utf8,) + self.failUnlessIn(magic_folder_config, client_config) def create_invite_join_magic_folder(self, nickname, local_dir): nickname_arg = unicode_to_argv(nickname) -- 2.45.2