annotate test_bugzilla.py @ 12:d8db9b733a12

added superclass constructor for BugzillaObject
author Atul Varma <avarma@mozilla.com>
date Tue, 13 Apr 2010 17:37:33 -0700
parents 29efa19d959a
children 798f8f33c418
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
9
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
1 import os
7
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
2 import doctest
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
3 import unittest
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
4
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
5 from minimock import Mock
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
6 import bugzilla
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
7
9
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
8 TEST_CFG_WITH_LOGIN = {'api_server': 'http://foo/latest',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
9 'username': 'bar',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
10 'password': 'baz'}
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
11
11
29efa19d959a Added bzgetpatch.py and bugzilla.User class
Atul Varma <avarma@mozilla.com>
parents: 9
diff changeset
12 TEST_USER = {
29efa19d959a Added bzgetpatch.py and bugzilla.User class
Atul Varma <avarma@mozilla.com>
parents: 9
diff changeset
13 u'email': u'avarma@mozilla.com', u'real_name': u'Atul Varma [:atul]',
29efa19d959a Added bzgetpatch.py and bugzilla.User class
Atul Varma <avarma@mozilla.com>
parents: 9
diff changeset
14 u'can_login': u'1', u'name': u'avarma@mozilla.com',
29efa19d959a Added bzgetpatch.py and bugzilla.User class
Atul Varma <avarma@mozilla.com>
parents: 9
diff changeset
15 u'id': u'298253'
29efa19d959a Added bzgetpatch.py and bugzilla.User class
Atul Varma <avarma@mozilla.com>
parents: 9
diff changeset
16 }
29efa19d959a Added bzgetpatch.py and bugzilla.User class
Atul Varma <avarma@mozilla.com>
parents: 9
diff changeset
17
29efa19d959a Added bzgetpatch.py and bugzilla.User class
Atul Varma <avarma@mozilla.com>
parents: 9
diff changeset
18 TEST_USER_SEARCH_RESULT = {
29efa19d959a Added bzgetpatch.py and bugzilla.User class
Atul Varma <avarma@mozilla.com>
parents: 9
diff changeset
19 u'users': [TEST_USER]
29efa19d959a Added bzgetpatch.py and bugzilla.User class
Atul Varma <avarma@mozilla.com>
parents: 9
diff changeset
20 }
29efa19d959a Added bzgetpatch.py and bugzilla.User class
Atul Varma <avarma@mozilla.com>
parents: 9
diff changeset
21
9
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
22 TEST_ATTACHMENT_WITHOUT_DATA = {
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
23 u'is_obsolete': u'0',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
24 u'description': u'test upload', u'encoding': u'base64',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
25 u'file_name': u'contents.txt', u'is_patch': u'0',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
26 u'creation_time': u'2010-04-13T18:02:00Z',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
27 u'bug_id': u'536619',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
28 u'last_change_time': u'2010-04-13T18:02:00Z',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
29 u'content_type': u'text/plain',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
30 u'attacher': {u'name': u'avarma'}, u'is_url': u'0',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
31 u'id': u'438797', u'is_private': u'0',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
32 u'size': u'8'
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
33 }
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
34
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
35 TEST_ATTACHMENT_WITH_DATA = {
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
36 u'is_obsolete': u'0',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
37 u'description': u'test upload', u'encoding': u'base64',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
38 u'file_name': u'contents.txt', u'is_patch': u'0',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
39 u'creation_time': u'2010-04-13T18:02:00Z',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
40 u'data': u'dGVzdGluZyE=', u'bug_id': u'536619',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
41 u'last_change_time': u'2010-04-13T18:02:00Z',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
42 u'content_type': u'text/plain',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
43 u'attacher': {u'name': u'avarma'}, u'is_url': u'0',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
44 u'id': u'438797', u'is_private': u'0',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
45 u'size': u'8'
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
46 }
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
47
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
48 TEST_BUG = {
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
49 u'attachments':
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
50 [{u'is_obsolete': u'0',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
51 u'description': u'here is a description',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
52 u'file_name': u'traceback-on-package-exception',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
53 u'is_patch': u'1', u'creation_time': u'2010-04-11T19:16:00Z',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
54 u'last_change_time': u'2010-04-11T19:16:59Z',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
55 u'bug_id': u'558680', u'content_type': u'text/plain',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
56 u'attacher': {u'name': u'asqueella'},
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
57 u'id': u'438381', u'size': u'1320'}],
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
58 u'summary': u'Here is a summary',
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
59 u'id': u'558680'
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
60 }
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
61
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
62 DOCTEST_EXTRA_GLOBS = {
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
63 'Mock': Mock
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
64 }
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
65
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
66 for globname in globals().keys():
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
67 if globname.startswith('TEST_'):
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
68 DOCTEST_EXTRA_GLOBS[globname] = globals()[globname]
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
69 del globname
7
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
70
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
71 class Tests(unittest.TestCase):
9
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
72 # TODO: Add unit tests here.
7
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
73 pass
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
74
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
75 def get_tests_in_module(module):
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
76 tests = []
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
77
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
78 loader = unittest.TestLoader()
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
79 suite = loader.loadTestsFromModule(module)
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
80 for test in suite:
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
81 tests.append(test)
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
82
8
993fc3b27263 made whitespace better
Atul Varma <avarma@mozilla.com>
parents: 7
diff changeset
83 optionflags = (doctest.NORMALIZE_WHITESPACE |
993fc3b27263 made whitespace better
Atul Varma <avarma@mozilla.com>
parents: 7
diff changeset
84 doctest.REPORT_UDIFF)
7
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
85 finder = doctest.DocTestFinder()
9
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
86 doctests = finder.find(module, extraglobs=DOCTEST_EXTRA_GLOBS)
7
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
87 for test in doctests:
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
88 if len(test.examples) > 0:
8
993fc3b27263 made whitespace better
Atul Varma <avarma@mozilla.com>
parents: 7
diff changeset
89 tests.append(doctest.DocTestCase(test,
993fc3b27263 made whitespace better
Atul Varma <avarma@mozilla.com>
parents: 7
diff changeset
90 optionflags=optionflags))
7
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
91
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
92 return tests
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
93
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
94 def run_tests(verbosity=2):
9
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
95 modules = [filename[:-3] for filename in os.listdir('.')
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
96 if filename.endswith('.py')
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
97 and filename not in ['minimock.py']]
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
98 tests = []
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
99 for modulename in modules:
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
100 module = __import__(modulename)
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
101 tests.extend(get_tests_in_module(module))
295c54288dd1 Added Bug and Attachment classes.
Atul Varma <avarma@mozilla.com>
parents: 8
diff changeset
102
7
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
103 suite = unittest.TestSuite(tests)
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
104 runner = unittest.TextTestRunner(verbosity=verbosity)
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
105 runner.run(suite)
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
106
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
107 if __name__ == '__main__':
7a04d148ead6 Added tests
Atul Varma <avarma@mozilla.com>
parents:
diff changeset
108 run_tests()