diff options
Diffstat (limited to 'libbe/command/assign.py')
-rw-r--r-- | libbe/command/assign.py | 31 |
1 files changed, 16 insertions, 15 deletions
diff --git a/libbe/command/assign.py b/libbe/command/assign.py index 241c815..6cf74bc 100644 --- a/libbe/command/assign.py +++ b/libbe/command/assign.py @@ -30,24 +30,25 @@ class Assign (libbe.command.Command): >>> import libbe.bugdir >>> bd = libbe.bugdir.SimpleBugDir(memory=False) >>> cmd = Assign() + >>> cmd._storage = bd.storage >>> cmd._setup_io = lambda i_enc,o_enc : None >>> cmd.stdout = sys.stdout >>> bd.bug_from_uuid('a').assigned is None True - >>> ret = cmd.run(bd.storage, bd, {'user-id':u'Fran\xe7ois'}, ['-', '/a']) + >>> ret = cmd.run({'user-id':u'Fran\xe7ois'}, ['-', '/a']) >>> bd.flush_reload() >>> bd.bug_from_uuid('a').assigned u'Fran\\xe7ois' - >>> ret = cmd.run(bd.storage, bd, args=['someone', '/a', '/b']) + >>> ret = cmd.run(args=['someone', '/a', '/b']) >>> bd.flush_reload() >>> bd.bug_from_uuid('a').assigned 'someone' >>> bd.bug_from_uuid('b').assigned 'someone' - >>> ret = cmd.run(bd.storage, bd, args=['none', '/a']) + >>> ret = cmd.run(args=['none', '/a']) >>> bd.flush_reload() >>> bd.bug_from_uuid('a').assigned is None True @@ -57,10 +58,9 @@ class Assign (libbe.command.Command): def __init__(self, *args, **kwargs): libbe.command.Command.__init__(self, *args, **kwargs) - self.requires_bugdir = True self.args.extend([ libbe.command.Argument( - name='assignee', metavar='ASSIGNEE', default=None, + name='assigned', metavar='ASSIGNED', default=None, completion_callback=libbe.command.util.complete_assigned), libbe.command.Argument( name='bug-id', metavar='BUG-ID', default=None, @@ -68,27 +68,28 @@ class Assign (libbe.command.Command): completion_callback=libbe.command.util.complete_bug_id), ]) - def _run(self, storage, bugdir, **params): - assignee = params['assignee'] - if assignee == 'none': - assignee = None - elif assignee == '-': - assignee = params['user-id'] + def _run(self, **params): + assigned = params['assigned'] + if assigned == 'none': + assigned = None + elif assigned == '-': + assigned = self._get_user_id() + bugdir = self._get_bugdir() for bug_id in params['bug-id']: bug,dummy_comment = \ libbe.command.util.bug_comment_from_user_id(bugdir, bug_id) - if bug.assigned != assignee: - bug.assigned = assignee + if bug.assigned != assigned: + bug.assigned = assigned return 0 def _long_help(self): return """ Assign a person to fix a bug. -Assignees should be the person's Bugs Everywhere identity, the same +Assigneds should be the person's Bugs Everywhere identity, the same string that appears in Creator fields. -Special assignee strings: +Special assigned strings: "-" assign the bug to yourself "none" un-assigns the bug """ |