You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
2.0 KiB
52 lines
2.0 KiB
import unittest
|
|
|
|
from reportbug import utils
|
|
from reportbug import debbugs
|
|
from reportbug.bugreport import bugreport
|
|
from nose.plugins.attrib import attr
|
|
import debianbts
|
|
|
|
|
|
class TestBugreport(unittest.TestCase):
|
|
# TODO: differentiate for all possible cases? f.e. sysinfo True/False and then change if 'System Information' in self.text?
|
|
|
|
def test_bugreport(self):
|
|
self.body = 'test'
|
|
self.package = 'reportbug'
|
|
self.report = bugreport(package=self.package, body=self.body)
|
|
self.text = self.report.__unicode__()
|
|
|
|
self.assertIn(self.body, self.text)
|
|
self.assertIn(self.package, self.text)
|
|
self.assertIn(utils.NEWBIELINE, self.text)
|
|
|
|
# verify that for special packages, we don't add the report template
|
|
def test_bts643785(self):
|
|
for package in list(debbugs.SYSTEMS['debian'].get('specials', {}).keys()):
|
|
self.report = bugreport(package=package, mode=utils.MODE_NOVICE)
|
|
self.text = self.report.__unicode__()
|
|
self.assertNotIn(utils.NEWBIELINE, self.text)
|
|
|
|
@attr('network') # marking the test as using network
|
|
def test_followup(self):
|
|
self.body = 'test'
|
|
self.package = 'reportbug'
|
|
self.report = bugreport(package=self.package, body=self.body,
|
|
followup=123456)
|
|
self.text = self.report.__unicode__()
|
|
|
|
self.assertIn('Followup-For: Bug #123456', self.text)
|
|
self.assertNotIn('Severity: ', self.text)
|
|
|
|
# test also a bugreport instance, and a datatype unconvertible to int
|
|
bug = debianbts.get_status(123456)[0]
|
|
self.report = bugreport(package=self.package, body=self.body,
|
|
followup=bug)
|
|
self.text = self.report.__unicode__()
|
|
|
|
self.assertIn('Followup-For: Bug #123456', self.text)
|
|
self.assertNotIn('Severity: ', self.text)
|
|
|
|
with self.assertRaises(TypeError):
|
|
self.report = bugreport(package=self.package, body=self.body,
|
|
followup={'123456': 654321})
|
|
|