raise usage.UsageError("An alias must end with a ':' character.")
self.alias = alias[:-1]
self.nickname = nickname
- self.localdir = localdir
+ self.localdir = argv_to_abspath(str(localdir))
if self.nickname and not self.localdir:
raise usage.UsageError("If NICKNAME is specified then LOCALDIR must also be specified.")
node_url_file = os.path.join(self['node-directory'], "node.url")
d.addCallback(lambda x: self.check_joined_config(0, self.upload_dircap))
d.addCallback(lambda x: self.check_config(0, self.local_dir))
return d
+
+ def test_create_invite_join_failure(self):
+ self.basedir = "cli/MagicFolder/create-invite-join-failure"
+ self.set_up_grid()
+ self.local_dir = os.path.join(self.basedir, "magic")
+ self.local_dir = "-" + self.local_dir
+ d = self.do_cli("magic-folder", "create", u"magic:", u"Alice", self.local_dir)
+ def _done((rc,stdout,stderr)):
+ print "rc %s" % (rc,)
+ print "stdout %s" % (stdout,)
+ print "stderr %s" % (stderr,)
+ self.failUnless(rc == 1)
+ return (rc,stdout,stderr)
+ d.addCallback(_done)
+ return d
except UnicodeDecodeError:
raise usage.UsageError("Argument %s cannot be decoded as %s." %
(quote_output(s), io_encoding))
+ if local_dir.startswith('-'):
+ raise usage.UsageError("Argument %s cannot start with a -." % (quote_output(s),))
def argv_to_abspath(s, **kwargs):
"""