aboutsummaryrefslogtreecommitdiffstats
path: root/becommands/show.py
diff options
context:
space:
mode:
Diffstat (limited to 'becommands/show.py')
-rw-r--r--becommands/show.py116
1 files changed, 0 insertions, 116 deletions
diff --git a/becommands/show.py b/becommands/show.py
deleted file mode 100644
index 50bd6eb..0000000
--- a/becommands/show.py
+++ /dev/null
@@ -1,116 +0,0 @@
-# Copyright (C) 2005-2009 Aaron Bentley and Panometrics, Inc.
-# Chris Ball <cjb@laptop.org>
-# Thomas Gerigk <tgerigk@gmx.de>
-# Thomas Habets <thomas@habets.pp.se>
-# W. Trevor King <wking@drexel.edu>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-"""Show a particular bug"""
-import sys
-from libbe import cmdutil, bugdir
-__desc__ = __doc__
-
-def execute(args, manipulate_encodings=True):
- """
- >>> import os
- >>> bd = bugdir.SimpleBugDir()
- >>> os.chdir(bd.root)
- >>> execute (["a",], manipulate_encodings=False) # doctest: +ELLIPSIS
- ID : a
- Short name : a
- Severity : minor
- Status : open
- Assigned :
- Target :
- Reporter :
- Creator : John Doe <jdoe@example.com>
- Created : ...
- Bug A
- <BLANKLINE>
- >>> execute (["--xml", "a"], manipulate_encodings=False) # doctest: +ELLIPSIS
- <?xml version="1.0" encoding="..." ?>
- <bug>
- <uuid>a</uuid>
- <short-name>a</short-name>
- <severity>minor</severity>
- <status>open</status>
- <creator>John Doe &lt;jdoe@example.com&gt;</creator>
- <created>...</created>
- <summary>Bug A</summary>
- </bug>
- >>> bd.cleanup()
- """
- parser = get_parser()
- options, args = parser.parse_args(args)
- cmdutil.default_complete(options, args, parser,
- bugid_args={-1: lambda bug : bug.active==True})
- if len(args) == 0:
- raise cmdutil.UsageError
- bd = bugdir.BugDir(from_disk=True,
- manipulate_encodings=manipulate_encodings)
- if options.XML:
- print '<?xml version="1.0" encoding="%s" ?>' % bd.encoding
- for shortname in args:
- if shortname.count(':') > 1:
- raise cmdutil.UserError("Invalid id '%s'." % shortname)
- elif shortname.count(':') == 1:
- # Split shortname generated by Comment.comment_shortnames()
- bugname = shortname.split(':')[0]
- is_comment = True
- else:
- bugname = shortname
- is_comment = False
- if is_comment == True and options.comments == False:
- continue
- bug = cmdutil.bug_from_shortname(bd, bugname)
- if is_comment == False:
- if options.XML:
- print bug.xml(show_comments=options.comments)
- else:
- print bug.string(show_comments=options.comments)
- else:
- comment = bug.comment_root.comment_from_shortname(
- shortname, bug_shortname=bugname)
- if options.XML:
- print comment.xml(shortname=shortname)
- else:
- if len(args) == 1 and options.only_raw_body == True:
- sys.__stdout__.write(comment.body)
- else:
- print comment.string(shortname=shortname)
- if shortname != args[-1] and options.XML == False:
- print "" # add a blank line between bugs/comments
-
-def get_parser():
- parser = cmdutil.CmdOptionParser("be show [options] ID [ID ...]")
- parser.add_option("-x", "--xml", action="store_true", default=False,
- dest='XML', help="Dump as XML")
- parser.add_option("--only-raw-body", action="store_true",
- dest='only_raw_body',
- help="When printing only a single comment, just print it's body. This allows extraction of non-text content types.")
- parser.add_option("-c", "--no-comments", dest="comments",
- action="store_false", default=True,
- help="Disable comment output. This is useful if you just want more details on a bug's current status.")
- return parser
-
-longhelp="""
-Show all information about the bugs or comments whose IDs are given.
-
-It's probably not a good idea to mix bug and comment IDs in a single
-call, but you're free to do so if you like.
-"""
-
-def help():
- return get_parser().help_str() + longhelp