[Reportbug-commits] [SCM] Reportbug - reports bugs in the Debian distribution branch, master, updated. 4.9-200-gba066d5
Sandro Tosi
morph at debian.org
Sat Jul 30 21:12:30 UTC 2011
The following commit has been merged in the master branch:
commit ba066d58cbc82d281d18339220311eb2f93a7d58
Author: Sandro Tosi <morph at debian.org>
Date: Sat Jul 30 23:11:39 2011 +0200
Rename reportbug/debianbts.py to reportbug/debbugs.py, pre-requisite to use python-debianbts to access BTS via SOAP
diff --git a/bin/querybts b/bin/querybts
index 900120d..a682d5b 100755
--- a/bin/querybts
+++ b/bin/querybts
@@ -35,7 +35,7 @@ from reportbug.exceptions import (
UINotImportable,
NoPackage, NoBugs, NoReport, NoNetwork,
)
-from reportbug import debianbts
+from reportbug import debbugs
from reportbug import urlutils
from reportbug.ui import AVAILABLE_UIS
@@ -79,7 +79,7 @@ def main():
help='Display a bugs list for the given package.')
parser.add_option('-B', '--bts', dest='system',
help='Specify an alternate debbugs BTS; available values: %s ' %
- ', '.join([k for k in debianbts.SYSTEMS if debianbts.SYSTEMS[k].get('btsroot')]))
+ ', '.join([k for k in debbugs.SYSTEMS if debbugs.SYSTEMS[k].get('btsroot')]))
parser.add_option('-m', '--mbox', action='store_true', dest='mbox',
help='generate mbox')
parser.add_option('--proxy', '--http_proxy', dest='http_proxy',
@@ -123,12 +123,12 @@ def main():
ui.initialize ()
# system must be one of those supported
- if options.system not in [k for k in debianbts.SYSTEMS if debianbts.SYSTEMS[k].get('btsroot')]:
+ if options.system not in [k for k in debbugs.SYSTEMS if debbugs.SYSTEMS[k].get('btsroot')]:
parser.error('Allowed arguments to --bts: \n' +
- '\n'.join([' %s (%s)' % (k, debianbts.SYSTEMS[k]['name']) for k in debianbts.SYSTEMS if debianbts.SYSTEMS[k].get('btsroot')]))
+ '\n'.join([' %s (%s)' % (k, debbugs.SYSTEMS[k]['name']) for k in debbugs.SYSTEMS if debbugs.SYSTEMS[k].get('btsroot')]))
else:
# set the system info to those of the one selected
- sysinfo = debianbts.SYSTEMS[options.system]
+ sysinfo = debbugs.SYSTEMS[options.system]
# there should be at least one argument
if len(args) == 0:
@@ -145,9 +145,9 @@ def main():
m = re.match('^#?(\d+)$', package)
if m:
num = int(m.group(1))
- url = debianbts.get_report_url(options.system, num, options.mirrors, options.archived)
+ url = debbugs.get_report_url(options.system, num, options.mirrors, options.archived)
else:
- url = debianbts.get_package_url(options.system, package, options.mirrors, options.source, options.archived)
+ url = debbugs.get_package_url(options.system, package, options.mirrors, options.source, options.archived)
# launch the browser and exit
urlutils.launch_browser(url)
@@ -166,7 +166,7 @@ def main():
queryonly=True, title=VERSION, archived=options.archived,
source=options.source, mbox=options.mbox)
for num in mboxbuglist:
- url = debianbts.get_report_url(options.system, num, options.archived, mbox=True)
+ url = debbugs.get_report_url(options.system, num, options.archived, mbox=True)
try:
report = urlutils.open_url(url, timeout=options.timeout)
sys.stdout.write(report.read())
@@ -174,7 +174,7 @@ def main():
print >> sys.stderr, "Error while accessing mbox report (%s)." % ex
else:
num = int(m.group(1))
- url = debianbts.get_report_url(options.system, num, options.archived, mbox=True)
+ url = debbugs.get_report_url(options.system, num, options.archived, mbox=True)
try:
report = urlutils.open_url(url, timeout=options.timeout)
sys.stdout.write(report.read())
@@ -242,7 +242,7 @@ if __name__ == '__main__':
main()
except KeyboardInterrupt:
print "querybts: exiting due to user interrupt."
- except debianbts.Error, x:
+ except debbugs.Error, x:
print 'error accessing BTS: '+str(x)
except SystemExit:
pass
diff --git a/bin/reportbug b/bin/reportbug
index 9795478..8f8b47c 100755
--- a/bin/reportbug
+++ b/bin/reportbug
@@ -60,7 +60,7 @@ from reportbug.exceptions import (
)
from reportbug import submit
from reportbug import checkversions
-from reportbug import debianbts
+from reportbug import debbugs
from reportbug import checkbuildd
import reportbug.ui.text_ui as ui
@@ -212,7 +212,7 @@ def handle_editing(filename, dmessage, options, sendto, attachments, package,
# cfr Debian BTS #293361
if package == 'wnpp':
- for itp_line in debianbts.itp_template.rsplit('\n'):
+ for itp_line in debbugs.itp_template.rsplit('\n'):
# if the line is not empty and it's in the message the user wrote
if itp_line in message and itp_line != '':
ewrite("Wrong line: %s\n", itp_line)
@@ -336,7 +336,7 @@ def handle_editing(filename, dmessage, options, sendto, attachments, package,
elif x == 't':
newtaglist = []
skip_editing = True
- ntags = debianbts.get_tags(severity, mode)
+ ntags = debbugs.get_tags(severity, mode)
newtaglist = ui.select_multiple(
'Do any of the following apply to this report?', ntags,
'Please select tags: ')
@@ -435,7 +435,7 @@ def get_other_package_name(others):
return None
def get_package_name(bts='debian', mode=MODE_EXPERT):
- others = debianbts.SYSTEMS[bts].get('otherpkgs')
+ others = debbugs.SYSTEMS[bts].get('otherpkgs')
prompt = "Please enter the name of the package in which you have found "\
"a problem"
if others:
@@ -509,7 +509,7 @@ def get_package_name(bts='debian', mode=MODE_EXPERT):
return package
def special_prompts(package, bts, ui, fromaddr, timeout):
- prompts = debianbts.SYSTEMS[bts].get('specials')
+ prompts = debbugs.SYSTEMS[bts].get('specials')
if prompts:
pkgprompts = prompts.get(package)
if pkgprompts:
@@ -788,7 +788,7 @@ def main():
parser.add_option('-C', '--class', action='callback', type='string',
callback=verify_option, dest="klass", metavar='CLASS',
callback_args=('Permitted report classes:',
- debianbts.CLASSLIST),
+ debbugs.CLASSLIST),
help='specify report class for GNATS BTSes')
parser.add_option('-d', '--debug', action='store_true', default=False,
dest='debugmode', help='send report only to yourself')
@@ -867,7 +867,7 @@ def main():
parser.add_option('-T', '--tag', action='callback', dest='tags',
callback=verify_append_option, type='string',
callback_args=('Permitted tags:',
- sorted(debianbts.get_tags().keys())+['none']),
+ sorted(debbugs.get_tags().keys())+['none']),
help='add the specified tag to the report')
parser.add_option('--http_proxy', '--proxy', help='use this proxy for '
'HTTP accesses')
@@ -910,11 +910,11 @@ def main():
parser.add_option('-B', '--bts', action='callback', dest='bts',
callback=verify_option, type='string',
callback_args=('Valid bug tracking systems',
- debianbts.SYSTEMS.keys()),
+ debbugs.SYSTEMS.keys()),
help='choose BTS to file the report with')
parser.add_option('-S', '--severity', action='callback',
callback=verify_option, type='string', dest='severity',
- callback_args=('Valid severities', debianbts.SEVLIST),
+ callback_args=('Valid severities', debbugs.SEVLIST),
help='identify the severity of the report')
parser.add_option('--template', action='store_true',
help='output a template report only')
@@ -1115,7 +1115,7 @@ class UI(object):
if subject:
subject = subject.decode(charset, 'replace')
bts = self.options.bts or 'debian'
- sysinfo = debianbts.SYSTEMS[bts]
+ sysinfo = debbugs.SYSTEMS[bts]
rtype = self.options.type or sysinfo.get('type')
attachments = self.options.attachments
pgp_addr = self.options.keyid
@@ -1255,7 +1255,7 @@ class UI(object):
# convert it to the source package if we are reporting for src
package = utils.get_source_name(package)
- others = debianbts.SYSTEMS[bts].get('otherpkgs')
+ others = debbugs.SYSTEMS[bts].get('otherpkgs')
if package == 'other' and others:
package = get_other_package_name(others)
@@ -1604,16 +1604,16 @@ class UI(object):
if self.options.bts:
bts = self.options.bts
ewrite("Will send report to %s (per request).\n",
- debianbts.SYSTEMS[bts].get('name', bts))
+ debbugs.SYSTEMS[bts].get('name', bts))
elif origin:
if origin.lower() == bts:
ewrite("Package originates from %s.\n", vendor or origin)
reportinfo = None
- elif origin.lower() in debianbts.SYSTEMS.keys():
+ elif origin.lower() in debbugs.SYSTEMS.keys():
ewrite("Package originates from %s; overriding your system "
"selection.\n", vendor or origin)
bts = origin.lower()
- sysinfo = debianbts.SYSTEMS[bts]
+ sysinfo = debbugs.SYSTEMS[bts]
elif reportinfo:
ewrite("Unknown origin %s; will send to %s.\n", origin,
reportinfo[1])
@@ -1630,10 +1630,10 @@ class UI(object):
lsbr = commands.getoutput('lsb_release -si 2>/dev/null')
if lsbr:
distro = lsbr.strip().lower()
- if distro in debianbts.SYSTEMS:
+ if distro in debbugs.SYSTEMS:
bts = distro
ewrite("Will send report to %s (per lsb_release).\n",
- debianbts.SYSTEMS[bts].get('name', bts))
+ debbugs.SYSTEMS[bts].get('name', bts))
if rtype == 'mailto':
rtype = 'debbugs'
@@ -1874,32 +1874,32 @@ For more details, please see: http://www.debian.org/devel/wnpp/''')
listcc += ui.get_multiline('Enter any additional addresses this report should be sent to; press ENTER after each address.')
if severity and rtype:
- severity = debianbts.convert_severity(severity, rtype)
+ severity = debbugs.convert_severity(severity, rtype)
klass = self.options.klass
if not notatty and not (exinfo or self.options.kudos):
if not severity:
if rtype == 'gnats':
- severities = debianbts.SEVERITIES_gnats
+ severities = debbugs.SEVERITIES_gnats
default = 'non-critical'
else:
- severities = debianbts.SEVERITIES
+ severities = debbugs.SEVERITIES
if mode < MODE_STANDARD:
ewrite("Removing release critical severities, since running in \'%s\' mode.\n" % utils.MODELIST[mode])
for sev in ['critical', 'grave', 'serious', 'does-not-build']:
del severities[sev]
default = 'normal'
- while not severity or severity not in debianbts.SEVLIST:
+ while not severity or severity not in debbugs.SEVLIST:
severity = ui.menu("How would you rate the severity of this "
"problem or report?", severities,
'Please select a severity level: ',
- default=default, order=debianbts.SEVLIST)
+ default=default, order=debbugs.SEVLIST)
if rtype == 'gnats':
# Class of report
klass = ui.menu("What sort of problem are you reporting?",
- debianbts.CLASSES, 'Please select a class: ',
- default='sw-bug', order=debianbts.CLASSLIST)
+ debbugs.CLASSES, 'Please select a class: ',
+ default='sw-bug', order=debbugs.CLASSLIST)
severity = severity or 'normal'
@@ -1909,7 +1909,7 @@ For more details, please see: http://www.debian.org/devel/wnpp/''')
justification = ui.menu(
'You are reporting a ' +severity+' bug; which of the '
'following criteria does it meet?',
- debianbts.JUSTIFICATIONS[severity],
+ debbugs.JUSTIFICATIONS[severity],
'Please select the impact of the bug: ', default='unknown')
elif severity == 'serious':
justification = ui.get_string(
@@ -1962,7 +1962,7 @@ For more details, please see: http://www.debian.org/devel/wnpp/''')
not (notatty or self.options.kudos or exinfo) and
package not in ('wnpp', 'ftp.debian.org', 'release.debian.org') and
mode > MODE_NOVICE and self.options.tagsmenu):
- tags = debianbts.get_tags(severity, mode)
+ tags = debbugs.get_tags(severity, mode)
taglist = ui.select_multiple(
'Do any of the following apply to this report?', tags,
@@ -2151,5 +2151,5 @@ if __name__ == '__main__':
main()
except KeyboardInterrupt:
ewrite("\nreportbug: exiting due to user interrupt.\n")
- except debianbts.Error, x:
+ except debbugs.Error, x:
ewrite('error accessing BTS: %s\n' % x)
diff --git a/debian/changelog b/debian/changelog
index 587010e..2f10728 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -4,8 +4,10 @@ reportbug (5.1.2) UNRELEASED; urgency=low
- don't try to convert the package to a source one if we are in 'override'
selection of 'ftp.debian.org'; thanks to Luk Claes for the report;
Closes: #620849
+ * Rename reportbug/debianbts.py to reportbug/debbugs.py, pre-requisite to use
+ python-debianbts to access BTS via SOAP
- -- Sandro Tosi <morph at debian.org> Wed, 11 May 2011 22:56:39 +0200
+ -- Sandro Tosi <morph at debian.org> Sat, 30 Jul 2011 23:10:50 +0200
reportbug (5.1.1) unstable; urgency=low
diff --git a/reportbug/__init__.py b/reportbug/__init__.py
index 12750f9..642158f 100644
--- a/reportbug/__init__.py
+++ b/reportbug/__init__.py
@@ -23,7 +23,7 @@ ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
SOFTWARE."""
__all__ = ['bugreport', 'utils', 'urlutils', 'checkbuildd', 'checkversions',
- 'debianbts', 'exceptions', 'submit', 'tempfile']
+ 'debbugs', 'exceptions', 'submit', 'tempfile']
VERSION_NUMBER = "5.1.1"
diff --git a/reportbug/bugreport.py b/reportbug/bugreport.py
index 8bfa5e7..ac87ce6 100644
--- a/reportbug/bugreport.py
+++ b/reportbug/bugreport.py
@@ -25,7 +25,7 @@
import os
import utils
-import debianbts
+import debbugs
import commands
from exceptions import *
@@ -136,7 +136,7 @@ class bugreport(object):
report = "Followup-For: Bug #%d\n%s: %s\n%s\n" % (
self.followup, reportto, self.package, headers)
- infofunc = debianbts.SYSTEMS[self.system].get('infofunc', debianbts.generic_infofunc)
+ infofunc = debbugs.SYSTEMS[self.system].get('infofunc', debbugs.generic_infofunc)
if infofunc:
debinfo += infofunc()
diff --git a/reportbug/debianbts.py b/reportbug/debbugs.py
similarity index 99%
rename from reportbug/debianbts.py
rename to reportbug/debbugs.py
index 4b6ef88..9ad3892 100644
--- a/reportbug/debianbts.py
+++ b/reportbug/debbugs.py
@@ -1,5 +1,5 @@
#
-# debianbts.py - Routines to deal with BTS web pages
+# debbugs.py - Routines to deal with BTS web pages
#
# Written by Chris Lawrence <lawrencc at debian.org>
# (C) 1999-2008 Chris Lawrence
@@ -23,7 +23,7 @@
#
# Version ##VERSION##; see changelog for revision history
#
-# $Id: debianbts.py,v 1.24.2.15 2008-04-18 05:38:27 lawrencc Exp $
+# $Id: debbugs.py,v 1.24.2.15 2008-04-18 05:38:27 lawrencc Exp $
import utils
import sys
diff --git a/reportbug/submit.py b/reportbug/submit.py
index eb3bcea..c64e1a5 100644
--- a/reportbug/submit.py
+++ b/reportbug/submit.py
@@ -42,7 +42,6 @@ from email.Header import Header
import mimetypes
from __init__ import VERSION, VERSION_NUMBER
-import debianbts
from tempfiles import TempFile, open_write_safe, tempfile_prefix
from exceptions import (
NoMessage,
diff --git a/reportbug/ui/gtk2_ui.py b/reportbug/ui/gtk2_ui.py
index c86dd2d..b2e74a2 100644
--- a/reportbug/ui/gtk2_ui.py
+++ b/reportbug/ui/gtk2_ui.py
@@ -48,7 +48,7 @@ import threading
import textwrap
from reportbug.exceptions import NoPackage, NoBugs, NoNetwork, NoReport
-from reportbug import debianbts
+from reportbug import debbugs
from reportbug.urlutils import launch_browser
ISATTY = True
@@ -368,7 +368,7 @@ class BugPage (gtk.EventBox, threading.Thread):
# Start the progress bar
gobject.timeout_add (10, self.pulse)
- info = debianbts.get_report (int (self.number), self.timeout,
+ info = debbugs.get_report (int (self.number), self.timeout,
self.bts, mirrors=self.mirrors,
http_proxy=self.http_proxy, archived=self.archived)
if not info:
@@ -430,7 +430,7 @@ class BugPage (gtk.EventBox, threading.Thread):
self.show_all ()
def on_open_browser (self, button):
- launch_browser (debianbts.get_report_url (self.bts, int (self.number), self.archived))
+ launch_browser (debbugs.get_report_url (self.bts, int (self.number), self.archived))
def on_reply (self, button):
# Return the bug number to reportbug
@@ -883,7 +883,7 @@ class HandleBTSQueryPage (TreePage):
if queryonly:
self.page_type = gtk.ASSISTANT_PAGE_CONFIRM
- sysinfo = debianbts.SYSTEMS[bts]
+ sysinfo = debbugs.SYSTEMS[bts]
root = sysinfo.get('btsroot')
if not root:
# do we need to make a dialog for this?
@@ -894,15 +894,15 @@ class HandleBTSQueryPage (TreePage):
if source:
pkgname += ' (source)'
- progress_label = 'Querying %s bug tracking system for reports on %s' % (debianbts.SYSTEMS[bts]['name'], pkgname)
+ progress_label = 'Querying %s bug tracking system for reports on %s' % (debbugs.SYSTEMS[bts]['name'], pkgname)
else:
- progress_label = 'Querying %s bug tracking system for reports %s' % (debianbts.SYSTEMS[bts]['name'], ' '.join([str(x) for x in package]))
+ progress_label = 'Querying %s bug tracking system for reports %s' % (debbugs.SYSTEMS[bts]['name'], ' '.join([str(x) for x in package]))
self.application.run_once_in_main_thread (self.assistant.set_progress_label, progress_label)
try:
- (count, sectitle, hierarchy) = debianbts.get_reports (
+ (count, sectitle, hierarchy) = debbugs.get_reports (
package, timeout, bts, mirrors=mirrors, version=version,
http_proxy=http_proxy, archived=archived, source=source)
diff --git a/reportbug/ui/text_ui.py b/reportbug/ui/text_ui.py
index c760c65..a790a69 100644
--- a/reportbug/ui/text_ui.py
+++ b/reportbug/ui/text_ui.py
@@ -37,7 +37,7 @@ try:
except ImportError:
readline = None
-from reportbug import debianbts, hiermatch
+from reportbug import debbugs, hiermatch
from reportbug.exceptions import (
NoReport, NoPackage, NoBugs, NoNetwork,
InvalidRegex,
@@ -113,7 +113,7 @@ def _launch_mbox_reader(mbox_reader_cmd, bts, bugs, number, mirrors, archived,
if number not in bugs and 1 <= number <= len(bugs):
number = bugs[number-1]
reportbug.utils.launch_mbox_reader(mbox_reader_cmd,
- debianbts.get_report_url(
+ debbugs.get_report_url(
bts, number, mirrors, archived, mbox), http_proxy,
timeout)
except ValueError:
@@ -405,12 +405,12 @@ def menu(par, options, prompt, default=None, title=None, any_ok=False,
def show_report(number, system, mirrors,
http_proxy, timeout, screen=None, queryonly=False, title='',
archived='no', mbox_reader_cmd=None):
- sysinfo = debianbts.SYSTEMS[system]
+ sysinfo = debbugs.SYSTEMS[system]
ewrite('Retrieving report #%d from %s bug tracking system...\n',
number, sysinfo['name'])
try:
- info = debianbts.get_report(number, timeout, system, mirrors=mirrors,
+ info = debbugs.get_report(number, timeout, system, mirrors=mirrors,
followups=1,
http_proxy=http_proxy, archived=archived)
except:
@@ -484,12 +484,12 @@ def show_report(number, system, mirrors,
elif x == 'q':
raise NoReport
elif x == 'b':
- launch_browser(debianbts.get_report_url(
+ launch_browser(debbugs.get_report_url(
system, number, mirrors, archived))
skip_pager = True
elif x == 'e':
reportbug.utils.launch_mbox_reader(mbox_reader_cmd,
- debianbts.get_report_url(
+ debbugs.get_report_url(
system, number, mirrors, archived, True), http_proxy,
timeout)
skip_pager = True
@@ -505,10 +505,10 @@ def handle_bts_query(package, bts, timeout, mirrors=None, http_proxy="",
queryonly=False, title="", screen=None, archived='no',
source=False, version=None, mbox=False, buglist=None,
mbox_reader_cmd=None):
- root = debianbts.SYSTEMS[bts].get('btsroot')
+ root = debbugs.SYSTEMS[bts].get('btsroot')
if not root:
ewrite('%s bug tracking system has no web URL; bypassing query\n',
- debianbts.SYSTEMS[bts]['name'])
+ debbugs.SYSTEMS[bts]['name'])
return
srcstr = ""
@@ -517,15 +517,15 @@ def handle_bts_query(package, bts, timeout, mirrors=None, http_proxy="",
if isinstance(package, basestring):
long_message('Querying %s BTS for reports on %s%s...\n',
- debianbts.SYSTEMS[bts]['name'], package, srcstr)
+ debbugs.SYSTEMS[bts]['name'], package, srcstr)
else:
long_message('Querying %s BTS for reports on %s%s...\n',
- debianbts.SYSTEMS[bts]['name'],
+ debbugs.SYSTEMS[bts]['name'],
' '.join([str(x) for x in package]), srcstr)
bugs = []
try:
- (count, title, hierarchy)=debianbts.get_reports(
+ (count, title, hierarchy)=debbugs.get_reports(
package, timeout, bts, mirrors=mirrors, version=version,
source=source, http_proxy=http_proxy, archived=archived)
@@ -597,7 +597,7 @@ def handle_bts_query(package, bts, timeout, mirrors=None, http_proxy="",
mbox_reader_cmd)
except (IOError, NoNetwork):
- ewrite('Unable to connect to %s BTS; ', debianbts.SYSTEMS[bts]['name'])
+ ewrite('Unable to connect to %s BTS; ', debbugs.SYSTEMS[bts]['name'])
res = select_options('continue', 'yN',
{'y': 'Keep going.',
'n': 'Abort.'})
diff --git a/reportbug/ui/urwid_ui.py b/reportbug/ui/urwid_ui.py
index a3b6da7..56b453e 100644
--- a/reportbug/ui/urwid_ui.py
+++ b/reportbug/ui/urwid_ui.py
@@ -494,17 +494,17 @@ def select_multiple(par, options, prompt, title=None, order=None, extras=None):
def show_report(number, system, mirrors,
http_proxy, timeout, screen=None, queryonly=False, title='',
archived='no'):
- from reportbug import debianbts
+ from reportbug import debbugs
ui = screen
if not ui:
ui = initialize_urwid_ui()
- sysinfo = debianbts.SYSTEMS[system]
+ sysinfo = debbugs.SYSTEMS[system]
display_message('Retrieving report #%d from %s bug tracking system...',
number, sysinfo['name'], title=title, ui=ui)
- info = debianbts.get_report(number, timeout, system, mirrors=mirrors,
+ info = debbugs.get_report(number, timeout, system, mirrors=mirrors,
http_proxy=http_proxy, archived=archived)
if not info:
long_message('Bug report #%d not found.', number, title=title, ui=ui)
@@ -527,16 +527,16 @@ def show_report(number, system, mirrors,
elif r == 'm':
return number
- launch_browser(debianbts.get_report_url(system, number, archived))
+ launch_browser(debbugs.get_report_url(system, number, archived))
return
def handle_bts_query(package, bts, timeout, mirrors=None, http_proxy="",
queryonly=False, screen=None, title="", archived='no',
source=False, version=None, mbox=False, buglist=None,
mbox_reader_cmd=None):
- from reportbug import debianbts
+ from reportbug import debbugs
- sysinfo = debianbts.SYSTEMS[bts]
+ sysinfo = debbugs.SYSTEMS[bts]
root = sysinfo.get('btsroot')
if not root:
ewrite("%s bug tracking system has no web URL; bypassing query.\n",
@@ -553,16 +553,16 @@ def handle_bts_query(package, bts, timeout, mirrors=None, http_proxy="",
pkgname += ' (source)'
display_message('Querying %s bug tracking system for reports on %s',
- debianbts.SYSTEMS[bts]['name'], pkgname,
+ debbugs.SYSTEMS[bts]['name'], pkgname,
ui=ui, title=title)
else:
display_message('Querying %s bug tracking system for reports %s',
- debianbts.SYSTEMS[bts]['name'],
+ debbugs.SYSTEMS[bts]['name'],
' '.join([str(x) for x in package]), ui=ui,title=title)
result = None
try:
- (count, sectitle, hierarchy) = debianbts.get_reports(
+ (count, sectitle, hierarchy) = debbugs.get_reports(
package, timeout, bts, mirrors=mirrors, version=version,
http_proxy=http_proxy, archived=archived, source=source)
@@ -681,9 +681,9 @@ def test():
'Select mailer: ', default='mutt', empty_ok=True)
print >> fp, mailer
- import debianbts
+ import debbugs
- tags = debianbts.get_tags()
+ tags = debbugs.get_tags()
taglist = select_multiple(
'Do any of the following apply to this report?', tags,
diff --git a/reportbug/utils.py b/reportbug/utils.py
index 5c41ff3..c858730 100644
--- a/reportbug/utils.py
+++ b/reportbug/utils.py
@@ -71,8 +71,8 @@ for mode in MODELIST:
del mode
# moved here since it needs the MODE_* vars to be defined
-import debianbts
-# it needs to be imported after debianbts
+import debbugs
+# it needs to be imported after debbugs
import ui.text_ui as ui
from reportbug.ui import AVAILABLE_UIS
@@ -398,12 +398,12 @@ def get_package_status(package, avail=False):
reportinfo = None
if bugs:
- reportinfo = debianbts.parse_bts_url(bugs)
+ reportinfo = debbugs.parse_bts_url(bugs)
elif origin:
- if debianbts.SYSTEMS.has_key(origin):
- vendor = debianbts.SYSTEMS[origin]['name']
- reportinfo = (debianbts.SYSTEMS[origin].get('type', 'debbugs'),
- debianbts.SYSTEMS[origin]['btsroot'])
+ if debbugs.SYSTEMS.has_key(origin):
+ vendor = debbugs.SYSTEMS[origin]['name']
+ reportinfo = (debbugs.SYSTEMS[origin].get('type', 'debbugs'),
+ debbugs.SYSTEMS[origin]['btsroot'])
else:
vendor = origin.capitalize()
else:
@@ -908,7 +908,7 @@ def parse_config_files():
args['sendto'] = token
elif token == 'severity':
token = lex.get_token().lower()
- if token in debianbts.SEVERITIES.keys():
+ if token in debbugs.SEVERITIES.keys():
args['severity'] = token
elif token == 'header':
args['headers'] = args.get('headers', []) + \
@@ -949,7 +949,7 @@ def parse_config_files():
args[token] = arg
elif token == 'bts':
token = lex.get_token().lower()
- if token in debianbts.SYSTEMS.keys():
+ if token in debbugs.SYSTEMS.keys():
args['bts'] = token
elif token == 'mirror':
args['mirrors'] = args.get('mirrors', []) + \
diff --git a/test/test_debbugs.py b/test/test_debbugs.py
new file mode 100644
index 0000000..2ad3a15
--- /dev/null
+++ b/test/test_debbugs.py
@@ -0,0 +1,167 @@
+import unittest2
+
+from nose.plugins.attrib import attr
+
+from reportbug import utils
+from reportbug import debbugs
+
+import urllib
+import re
+
+class TestDebianbts(unittest2.TestCase):
+
+ def test_get_tags(self):
+
+ # for each severity, for each mode
+ self.assertItemsEqual(debbugs.get_tags('critical', utils.MODE_NOVICE).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'security', 'patch'])
+ self.assertItemsEqual(debbugs.get_tags('grave', utils.MODE_NOVICE).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'security', 'patch'])
+ self.assertItemsEqual(debbugs.get_tags('serious', utils.MODE_NOVICE).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'security', 'patch'])
+ self.assertItemsEqual(debbugs.get_tags('important', utils.MODE_NOVICE).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
+ self.assertItemsEqual(debbugs.get_tags('does-not-build', utils.MODE_NOVICE).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
+ self.assertItemsEqual(debbugs.get_tags('normal', utils.MODE_NOVICE).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
+ self.assertItemsEqual(debbugs.get_tags('non-critical', utils.MODE_NOVICE).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
+ self.assertItemsEqual(debbugs.get_tags('minor', utils.MODE_NOVICE).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
+ self.assertItemsEqual(debbugs.get_tags('wishlist', utils.MODE_NOVICE).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
+
+ self.assertItemsEqual(debbugs.get_tags('critical', utils.MODE_STANDARD).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'security', 'patch'])
+ self.assertItemsEqual(debbugs.get_tags('grave', utils.MODE_STANDARD).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'security', 'patch'])
+ self.assertItemsEqual(debbugs.get_tags('serious', utils.MODE_STANDARD).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'security', 'patch'])
+ self.assertItemsEqual(debbugs.get_tags('important', utils.MODE_STANDARD).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
+ self.assertItemsEqual(debbugs.get_tags('does-not-build', utils.MODE_STANDARD).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
+ self.assertItemsEqual(debbugs.get_tags('normal', utils.MODE_STANDARD).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
+ self.assertItemsEqual(debbugs.get_tags('non-critical', utils.MODE_STANDARD).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
+ self.assertItemsEqual(debbugs.get_tags('minor', utils.MODE_STANDARD).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
+ self.assertItemsEqual(debbugs.get_tags('wishlist', utils.MODE_STANDARD).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
+
+ self.assertItemsEqual(debbugs.get_tags('critical', utils.MODE_ADVANCED).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'security', 'squeeze', 'experimental', 'wheezy'])
+ self.assertItemsEqual(debbugs.get_tags('grave', utils.MODE_ADVANCED).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'security', 'squeeze', 'experimental', 'wheezy'])
+ self.assertItemsEqual(debbugs.get_tags('serious', utils.MODE_ADVANCED).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'security', 'squeeze', 'experimental', 'wheezy'])
+ self.assertItemsEqual(debbugs.get_tags('important', utils.MODE_ADVANCED).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
+ self.assertItemsEqual(debbugs.get_tags('does-not-build', utils.MODE_ADVANCED).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
+ self.assertItemsEqual(debbugs.get_tags('normal', utils.MODE_ADVANCED).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
+ self.assertItemsEqual(debbugs.get_tags('non-critical', utils.MODE_ADVANCED).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
+ self.assertItemsEqual(debbugs.get_tags('minor', utils.MODE_ADVANCED).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
+ self.assertItemsEqual(debbugs.get_tags('wishlist', utils.MODE_ADVANCED).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
+
+ self.assertItemsEqual(debbugs.get_tags('critical', utils.MODE_EXPERT).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'security', 'squeeze', 'experimental', 'wheezy'])
+ self.assertItemsEqual(debbugs.get_tags('grave', utils.MODE_EXPERT).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'security', 'squeeze', 'experimental', 'wheezy'])
+ self.assertItemsEqual(debbugs.get_tags('serious', utils.MODE_EXPERT).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'security', 'squeeze', 'experimental', 'wheezy'])
+ self.assertItemsEqual(debbugs.get_tags('important', utils.MODE_EXPERT).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
+ self.assertItemsEqual(debbugs.get_tags('does-not-build', utils.MODE_EXPERT).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
+ self.assertItemsEqual(debbugs.get_tags('normal', utils.MODE_EXPERT).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
+ self.assertItemsEqual(debbugs.get_tags('non-critical', utils.MODE_EXPERT).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
+ self.assertItemsEqual(debbugs.get_tags('minor', utils.MODE_EXPERT).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
+ self.assertItemsEqual(debbugs.get_tags('wishlist', utils.MODE_EXPERT).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
+
+
+class TestInfofunc(unittest2.TestCase):
+
+ def test_dpkg_infofunc(self):
+ info = debbugs.dpkg_infofunc()
+ self.assertIn('Architecture:', info)
+
+ def test_debian_infofunc(self):
+ info = debbugs.debian_infofunc()
+ self.assertIn('Architecture:', info)
+
+ def test_ubuntu_infofunc(self):
+ info = debbugs.ubuntu_infofunc()
+ self.assertIn('Architecture:', info)
+
+ def test_generic_infofunc(self):
+ info = debbugs.generic_infofunc()
+ self.assertIn('Architecture:', info)
+
+class TestMiscFunctions(unittest2.TestCase):
+
+ def test_yn_bool(self):
+ self.assertEqual(debbugs.yn_bool(None), 'no')
+ self.assertEqual(debbugs.yn_bool('no'), 'no')
+ self.assertEqual(debbugs.yn_bool('yes'), 'yes')
+ self.assertEqual(debbugs.yn_bool('dummy string'), 'yes')
+
+ def test_convert_severity(self):
+
+ # lists of bts systems, severity and the expected value in return
+ sevs = [('debbugs', 'critical', 'critical'),
+ ('debbugs', 'non-critical', 'normal'),
+ (None, 'dummy', 'dummy'),
+ ('gnats', 'important', 'serious'),
+ ('gnats', 'dummy', 'dummy')]
+
+ for type, severity, value in sevs:
+ self.assertEqual(debbugs.convert_severity(severity, type), value)
+
+ @attr('network') #marking the test as using network
+ @unittest2.skip("Need to talk with dondelelcaro about make them sync")
+ def test_pseudopackages_in_sync(self):
+
+ dictparse = re.compile(r'([^\s]+)\s+(.+)',re.IGNORECASE)
+
+ bdo_list = {}
+ pseudo = urllib.urlopen('http://bugs.debian.org/pseudopackages/pseudo-packages.description')
+ for l in pseudo:
+ m = dictparse.search(l)
+ bdo_list[m.group(1)] = m.group(2)
+
+ self.maxDiff = None
+ self.assertEqual(debbugs.debother, bdo_list)
+
+
+class TestGetReports(unittest2.TestCase):
+
+ @attr('network') #marking the test as using network
+ def test_get_cgi_reports(self):
+
+ data = debbugs.get_cgi_reports('reportbug', timeout=60)
+ self.assertGreater(data[0], 0)
+
+
+ @attr('network') #marking the test as using network
+ def test_get_reports(self):
+
+ data = debbugs.get_reports('reportbug', timeout=60)
+ self.assertGreater(data[0], 0)
+
+ @attr('network') #marking the test as using network
+ def test_get_report(self):
+
+ data = debbugs.get_report(415801, 120)
+ self.assertEqual(data[0],
+ '#415801: reportbug: add support for SOAP interface to BTS')
+
+class TestUrlFunctions(unittest2.TestCase):
+
+ def test_cgi_report_url(self):
+
+ self.assertEqual(debbugs.cgi_report_url('debian', 123),
+ 'http://bugs.debian.org/cgi-bin/bugreport.cgi?' +
+ 'bug=123&archived=False&mbox=no')
+ self.assertIsNone(debbugs.cgi_report_url('default', 123))
+
+ def test_cgi_package_url(self):
+
+ self.assertEqual(debbugs.cgi_package_url('debian', 'reportbug'),
+ 'http://bugs.debian.org/cgi-bin/pkgreport.cgi?' +
+ 'archived=no&pkg=reportbug&repeatmerged=yes')
+ self.assertEqual(debbugs.cgi_package_url
+ ('debian', 'reportbug', source=True),
+ 'http://bugs.debian.org/cgi-bin/pkgreport.cgi?src=' +
+ 'reportbug&archived=no&repeatmerged=yes')
+ self.assertEqual(debbugs.cgi_package_url
+ ('debian', 'reportbug', version='5.0'),
+ 'http://bugs.debian.org/cgi-bin/pkgreport.cgi?archi' +
+ 'ved=no&version=5.0&pkg=reportbug&repeatmerged=yes')
+
+
+ def test_get_package_url(self):
+
+ self.assertEqual(debbugs.get_package_url('debian', 'reportbug'),
+ 'http://bugs.debian.org/cgi-bin/pkgreport.cgi?archi' +
+ 'ved=no&pkg=reportbug&repeatmerged=yes')
+
+ def test_get_report_url(self):
+
+ self.assertEqual(debbugs.get_report_url('debian', 123),
+ 'http://bugs.debian.org/cgi-bin/bugreport.cgi?' +
+ 'bug=123&archived=False&mbox=no')
diff --git a/test/test_debianbts.py b/test/test_debianbts.py
deleted file mode 100644
index ffcb2e0..0000000
--- a/test/test_debianbts.py
+++ /dev/null
@@ -1,167 +0,0 @@
-import unittest2
-
-from nose.plugins.attrib import attr
-
-from reportbug import utils
-from reportbug import debianbts
-
-import urllib
-import re
-
-class TestDebianbts(unittest2.TestCase):
-
- def test_get_tags(self):
-
- # for each severity, for each mode
- self.assertItemsEqual(debianbts.get_tags('critical', utils.MODE_NOVICE).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'security', 'patch'])
- self.assertItemsEqual(debianbts.get_tags('grave', utils.MODE_NOVICE).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'security', 'patch'])
- self.assertItemsEqual(debianbts.get_tags('serious', utils.MODE_NOVICE).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'security', 'patch'])
- self.assertItemsEqual(debianbts.get_tags('important', utils.MODE_NOVICE).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
- self.assertItemsEqual(debianbts.get_tags('does-not-build', utils.MODE_NOVICE).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
- self.assertItemsEqual(debianbts.get_tags('normal', utils.MODE_NOVICE).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
- self.assertItemsEqual(debianbts.get_tags('non-critical', utils.MODE_NOVICE).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
- self.assertItemsEqual(debianbts.get_tags('minor', utils.MODE_NOVICE).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
- self.assertItemsEqual(debianbts.get_tags('wishlist', utils.MODE_NOVICE).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
-
- self.assertItemsEqual(debianbts.get_tags('critical', utils.MODE_STANDARD).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'security', 'patch'])
- self.assertItemsEqual(debianbts.get_tags('grave', utils.MODE_STANDARD).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'security', 'patch'])
- self.assertItemsEqual(debianbts.get_tags('serious', utils.MODE_STANDARD).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'security', 'patch'])
- self.assertItemsEqual(debianbts.get_tags('important', utils.MODE_STANDARD).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
- self.assertItemsEqual(debianbts.get_tags('does-not-build', utils.MODE_STANDARD).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
- self.assertItemsEqual(debianbts.get_tags('normal', utils.MODE_STANDARD).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
- self.assertItemsEqual(debianbts.get_tags('non-critical', utils.MODE_STANDARD).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
- self.assertItemsEqual(debianbts.get_tags('minor', utils.MODE_STANDARD).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
- self.assertItemsEqual(debianbts.get_tags('wishlist', utils.MODE_STANDARD).keys(), ['lfs', 'l10n', 'd-i', 'upstream', 'ipv6', 'patch'])
-
- self.assertItemsEqual(debianbts.get_tags('critical', utils.MODE_ADVANCED).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'security', 'squeeze', 'experimental', 'wheezy'])
- self.assertItemsEqual(debianbts.get_tags('grave', utils.MODE_ADVANCED).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'security', 'squeeze', 'experimental', 'wheezy'])
- self.assertItemsEqual(debianbts.get_tags('serious', utils.MODE_ADVANCED).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'security', 'squeeze', 'experimental', 'wheezy'])
- self.assertItemsEqual(debianbts.get_tags('important', utils.MODE_ADVANCED).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
- self.assertItemsEqual(debianbts.get_tags('does-not-build', utils.MODE_ADVANCED).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
- self.assertItemsEqual(debianbts.get_tags('normal', utils.MODE_ADVANCED).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
- self.assertItemsEqual(debianbts.get_tags('non-critical', utils.MODE_ADVANCED).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
- self.assertItemsEqual(debianbts.get_tags('minor', utils.MODE_ADVANCED).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
- self.assertItemsEqual(debianbts.get_tags('wishlist', utils.MODE_ADVANCED).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
-
- self.assertItemsEqual(debianbts.get_tags('critical', utils.MODE_EXPERT).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'security', 'squeeze', 'experimental', 'wheezy'])
- self.assertItemsEqual(debianbts.get_tags('grave', utils.MODE_EXPERT).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'security', 'squeeze', 'experimental', 'wheezy'])
- self.assertItemsEqual(debianbts.get_tags('serious', utils.MODE_EXPERT).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'security', 'squeeze', 'experimental', 'wheezy'])
- self.assertItemsEqual(debianbts.get_tags('important', utils.MODE_EXPERT).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
- self.assertItemsEqual(debianbts.get_tags('does-not-build', utils.MODE_EXPERT).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
- self.assertItemsEqual(debianbts.get_tags('normal', utils.MODE_EXPERT).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
- self.assertItemsEqual(debianbts.get_tags('non-critical', utils.MODE_EXPERT).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
- self.assertItemsEqual(debianbts.get_tags('minor', utils.MODE_EXPERT).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
- self.assertItemsEqual(debianbts.get_tags('wishlist', utils.MODE_EXPERT).keys(), ['sid', 'lenny', 'l10n', 'd-i', 'ipv6', 'patch', 'lfs', 'upstream', 'squeeze', 'experimental', 'wheezy', 'security'])
-
-
-class TestInfofunc(unittest2.TestCase):
-
- def test_dpkg_infofunc(self):
- info = debianbts.dpkg_infofunc()
- self.assertIn('Architecture:', info)
-
- def test_debian_infofunc(self):
- info = debianbts.debian_infofunc()
- self.assertIn('Architecture:', info)
-
- def test_ubuntu_infofunc(self):
- info = debianbts.ubuntu_infofunc()
- self.assertIn('Architecture:', info)
-
- def test_generic_infofunc(self):
- info = debianbts.generic_infofunc()
- self.assertIn('Architecture:', info)
-
-class TestMiscFunctions(unittest2.TestCase):
-
- def test_yn_bool(self):
- self.assertEqual(debianbts.yn_bool(None), 'no')
- self.assertEqual(debianbts.yn_bool('no'), 'no')
- self.assertEqual(debianbts.yn_bool('yes'), 'yes')
- self.assertEqual(debianbts.yn_bool('dummy string'), 'yes')
-
- def test_convert_severity(self):
-
- # lists of bts systems, severity and the expected value in return
- sevs = [('debbugs', 'critical', 'critical'),
- ('debbugs', 'non-critical', 'normal'),
- (None, 'dummy', 'dummy'),
- ('gnats', 'important', 'serious'),
- ('gnats', 'dummy', 'dummy')]
-
- for type, severity, value in sevs:
- self.assertEqual(debianbts.convert_severity(severity, type), value)
-
- @attr('network') #marking the test as using network
- @unittest2.skip("Need to talk with dondelelcaro about make them sync")
- def test_pseudopackages_in_sync(self):
-
- dictparse = re.compile(r'([^\s]+)\s+(.+)',re.IGNORECASE)
-
- bdo_list = {}
- pseudo = urllib.urlopen('http://bugs.debian.org/pseudopackages/pseudo-packages.description')
- for l in pseudo:
- m = dictparse.search(l)
- bdo_list[m.group(1)] = m.group(2)
-
- self.maxDiff = None
- self.assertEqual(debianbts.debother, bdo_list)
-
-
-class TestGetReports(unittest2.TestCase):
-
- @attr('network') #marking the test as using network
- def test_get_cgi_reports(self):
-
- data = debianbts.get_cgi_reports('reportbug', timeout=60)
- self.assertGreater(data[0], 0)
-
-
- @attr('network') #marking the test as using network
- def test_get_reports(self):
-
- data = debianbts.get_reports('reportbug', timeout=60)
- self.assertGreater(data[0], 0)
-
- @attr('network') #marking the test as using network
- def test_get_report(self):
-
- data = debianbts.get_report(415801, 120)
- self.assertEqual(data[0],
- '#415801: reportbug: add support for SOAP interface to BTS')
-
-class TestUrlFunctions(unittest2.TestCase):
-
- def test_cgi_report_url(self):
-
- self.assertEqual(debianbts.cgi_report_url('debian', 123),
- 'http://bugs.debian.org/cgi-bin/bugreport.cgi?' +
- 'bug=123&archived=False&mbox=no')
- self.assertIsNone(debianbts.cgi_report_url('default', 123))
-
- def test_cgi_package_url(self):
-
- self.assertEqual(debianbts.cgi_package_url('debian', 'reportbug'),
- 'http://bugs.debian.org/cgi-bin/pkgreport.cgi?' +
- 'archived=no&pkg=reportbug&repeatmerged=yes')
- self.assertEqual(debianbts.cgi_package_url
- ('debian', 'reportbug', source=True),
- 'http://bugs.debian.org/cgi-bin/pkgreport.cgi?src=' +
- 'reportbug&archived=no&repeatmerged=yes')
- self.assertEqual(debianbts.cgi_package_url
- ('debian', 'reportbug', version='5.0'),
- 'http://bugs.debian.org/cgi-bin/pkgreport.cgi?archi' +
- 'ved=no&version=5.0&pkg=reportbug&repeatmerged=yes')
-
-
- def test_get_package_url(self):
-
- self.assertEqual(debianbts.get_package_url('debian', 'reportbug'),
- 'http://bugs.debian.org/cgi-bin/pkgreport.cgi?archi' +
- 'ved=no&pkg=reportbug&repeatmerged=yes')
-
- def test_get_report_url(self):
-
- self.assertEqual(debianbts.get_report_url('debian', 123),
- 'http://bugs.debian.org/cgi-bin/bugreport.cgi?' +
- 'bug=123&archived=False&mbox=no')
--
Reportbug - reports bugs in the Debian distribution
More information about the Reportbug-commits
mailing list