annotate test/test_init.py @ 1677:d4e615fcbe04

Made subject_re an attribute of MailGW... ...so that it can be easily overridden in an instance's interfaces.MailGW, and wrote subject_re as a re.VERBOSE, with a couple of comments.
author Jean Jordaan <neaj@users.sourceforge.net>
date Mon, 23 Jun 2003 08:37:15 +0000
parents 4074e2336eed
children 84b6d5b07626
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
213
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 205
diff changeset
1 #
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 205
diff changeset
2 # Copyright (c) 2001 Bizar Software Pty Ltd (http://www.bizarsoftware.com.au/)
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 205
diff changeset
3 # This module is free software, and you may redistribute it and/or modify
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 205
diff changeset
4 # under the same terms as Python, so long as this copyright message and
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 205
diff changeset
5 # disclaimer are retained in their original form.
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 205
diff changeset
6 #
214
18134bffab37 stupid typo
Richard Jones <richard@users.sourceforge.net>
parents: 213
diff changeset
7 # IN NO EVENT SHALL BIZAR SOFTWARE PTY LTD BE LIABLE TO ANY PARTY FOR
213
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 205
diff changeset
8 # DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 205
diff changeset
9 # OUT OF THE USE OF THIS CODE, EVEN IF THE AUTHOR HAS BEEN ADVISED OF THE
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 205
diff changeset
10 # POSSIBILITY OF SUCH DAMAGE.
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 205
diff changeset
11 #
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 205
diff changeset
12 # BIZAR SOFTWARE PTY LTD SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 205
diff changeset
13 # BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 205
diff changeset
14 # FOR A PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS"
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 205
diff changeset
15 # BASIS, AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE,
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 205
diff changeset
16 # SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 205
diff changeset
17 #
1592
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1528
diff changeset
18 # $Id: test_init.py,v 1.23 2003-04-17 06:51:44 richard Exp $
203
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
19
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
20 import unittest, os, shutil, errno, imp, sys
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
21
742
b105b46f6324 'I must run unit tests before committing\n' * 100
Richard Jones <richard@users.sourceforge.net>
parents: 718
diff changeset
22 from roundup import init
203
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
23
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
24 class MyTestCase(unittest.TestCase):
205
da2e5d340e14 Added tests for instance initialisation
Richard Jones <richard@users.sourceforge.net>
parents: 203
diff changeset
25 count = 0
da2e5d340e14 Added tests for instance initialisation
Richard Jones <richard@users.sourceforge.net>
parents: 203
diff changeset
26 def setUp(self):
da2e5d340e14 Added tests for instance initialisation
Richard Jones <richard@users.sourceforge.net>
parents: 203
diff changeset
27 MyTestCase.count = MyTestCase.count + 1
718
e10c37f53efd fixed SCRIPT_NAME in ZRoundup for instances not at top level of Zope
Richard Jones <richard@users.sourceforge.net>
parents: 332
diff changeset
28 self.dirname = '_test_init_%s'%self.count
205
da2e5d340e14 Added tests for instance initialisation
Richard Jones <richard@users.sourceforge.net>
parents: 203
diff changeset
29 try:
da2e5d340e14 Added tests for instance initialisation
Richard Jones <richard@users.sourceforge.net>
parents: 203
diff changeset
30 shutil.rmtree(self.dirname)
da2e5d340e14 Added tests for instance initialisation
Richard Jones <richard@users.sourceforge.net>
parents: 203
diff changeset
31 except OSError, error:
332
1fe356fc3d3e Fixed ENOENT/WindowsError thing, thanks Juergen Hermann
Richard Jones <richard@users.sourceforge.net>
parents: 255
diff changeset
32 if error.errno not in (errno.ENOENT, errno.ESRCH): raise
205
da2e5d340e14 Added tests for instance initialisation
Richard Jones <richard@users.sourceforge.net>
parents: 203
diff changeset
33
203
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
34 def tearDown(self):
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
35 try:
205
da2e5d340e14 Added tests for instance initialisation
Richard Jones <richard@users.sourceforge.net>
parents: 203
diff changeset
36 shutil.rmtree(self.dirname)
203
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
37 except OSError, error:
332
1fe356fc3d3e Fixed ENOENT/WindowsError thing, thanks Juergen Hermann
Richard Jones <richard@users.sourceforge.net>
parents: 255
diff changeset
38 if error.errno not in (errno.ENOENT, errno.ESRCH): raise
203
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
39
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
40 class ClassicTestCase(MyTestCase):
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
41 backend = 'anydbm'
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
42 def testCreation(self):
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
43 ae = self.assertEqual
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
44
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
45 # create the instance
1592
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1528
diff changeset
46 init.install(self.dirname, 'templates/classic')
1483
ca3e0e2320be fixes to unit tests
Richard Jones <richard@users.sourceforge.net>
parents: 1198
diff changeset
47 init.write_select_db(self.dirname, self.backend)
742
b105b46f6324 'I must run unit tests before committing\n' * 100
Richard Jones <richard@users.sourceforge.net>
parents: 718
diff changeset
48 init.initialise(self.dirname, 'sekrit')
203
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
49
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
50 # check we can load the package
205
da2e5d340e14 Added tests for instance initialisation
Richard Jones <richard@users.sourceforge.net>
parents: 203
diff changeset
51 instance = imp.load_package(self.dirname, self.dirname)
203
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
52
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
53 # and open the database
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
54 db = instance.open()
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
55
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
56 # check the basics of the schema and initial data set
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
57 l = db.priority.list()
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
58 ae(l, ['1', '2', '3', '4', '5'])
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
59 l = db.status.list()
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
60 ae(l, ['1', '2', '3', '4', '5', '6', '7', '8'])
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
61 l = db.keyword.list()
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
62 ae(l, [])
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
63 l = db.user.list()
905
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 858
diff changeset
64 ae(l, ['1', '2'])
203
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
65 l = db.msg.list()
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
66 ae(l, [])
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
67 l = db.file.list()
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
68 ae(l, [])
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
69 l = db.issue.list()
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
70 ae(l, [])
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
71
718
e10c37f53efd fixed SCRIPT_NAME in ZRoundup for instances not at top level of Zope
Richard Jones <richard@users.sourceforge.net>
parents: 332
diff changeset
72 class bsddbClassicTestCase(ClassicTestCase):
e10c37f53efd fixed SCRIPT_NAME in ZRoundup for instances not at top level of Zope
Richard Jones <richard@users.sourceforge.net>
parents: 332
diff changeset
73 backend = 'bsddb'
e10c37f53efd fixed SCRIPT_NAME in ZRoundup for instances not at top level of Zope
Richard Jones <richard@users.sourceforge.net>
parents: 332
diff changeset
74
e10c37f53efd fixed SCRIPT_NAME in ZRoundup for instances not at top level of Zope
Richard Jones <richard@users.sourceforge.net>
parents: 332
diff changeset
75 class bsddb3ClassicTestCase(ClassicTestCase):
e10c37f53efd fixed SCRIPT_NAME in ZRoundup for instances not at top level of Zope
Richard Jones <richard@users.sourceforge.net>
parents: 332
diff changeset
76 backend = 'bsddb3'
e10c37f53efd fixed SCRIPT_NAME in ZRoundup for instances not at top level of Zope
Richard Jones <richard@users.sourceforge.net>
parents: 332
diff changeset
77
855
335b49965293 Forgot to add to init tests
Richard Jones <richard@users.sourceforge.net>
parents: 759
diff changeset
78 class metakitClassicTestCase(ClassicTestCase):
335b49965293 Forgot to add to init tests
Richard Jones <richard@users.sourceforge.net>
parents: 759
diff changeset
79 backend = 'metakit'
335b49965293 Forgot to add to init tests
Richard Jones <richard@users.sourceforge.net>
parents: 759
diff changeset
80
1528
96cd422532ef bye bye gadfly - you served your purpose well [SF#701127]
Richard Jones <richard@users.sourceforge.net>
parents: 1483
diff changeset
81 class mysqlClassicTestCase(ClassicTestCase):
96cd422532ef bye bye gadfly - you served your purpose well [SF#701127]
Richard Jones <richard@users.sourceforge.net>
parents: 1483
diff changeset
82 backend = 'mysql'
1111
a7a1f6098263 test gadfly init
Richard Jones <richard@users.sourceforge.net>
parents: 1094
diff changeset
83
1165
14467c765167 sqlite backend!
Richard Jones <richard@users.sourceforge.net>
parents: 1111
diff changeset
84 class sqliteClassicTestCase(ClassicTestCase):
14467c765167 sqlite backend!
Richard Jones <richard@users.sourceforge.net>
parents: 1111
diff changeset
85 backend = 'sqlite'
14467c765167 sqlite backend!
Richard Jones <richard@users.sourceforge.net>
parents: 1111
diff changeset
86
203
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
87 def suite():
858
2dd862af72ee all storage-specific code (ie. backend) is now implemented by the backends
Richard Jones <richard@users.sourceforge.net>
parents: 856
diff changeset
88 l = [
2dd862af72ee all storage-specific code (ie. backend) is now implemented by the backends
Richard Jones <richard@users.sourceforge.net>
parents: 856
diff changeset
89 unittest.makeSuite(ClassicTestCase, 'test'),
2dd862af72ee all storage-specific code (ie. backend) is now implemented by the backends
Richard Jones <richard@users.sourceforge.net>
parents: 856
diff changeset
90 ]
2dd862af72ee all storage-specific code (ie. backend) is now implemented by the backends
Richard Jones <richard@users.sourceforge.net>
parents: 856
diff changeset
91
1198
1c5bc0e2ed7d *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1165
diff changeset
92 from roundup import backends
1c5bc0e2ed7d *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1165
diff changeset
93 if hasattr(backends, 'bsddb'):
718
e10c37f53efd fixed SCRIPT_NAME in ZRoundup for instances not at top level of Zope
Richard Jones <richard@users.sourceforge.net>
parents: 332
diff changeset
94 l.append(unittest.makeSuite(bsddbClassicTestCase, 'test'))
1198
1c5bc0e2ed7d *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1165
diff changeset
95 if hasattr(backends, 'bsddb3'):
759
dc05d4531f81 enabled testing of bsddb in test_init
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
96 l.append(unittest.makeSuite(bsddb3ClassicTestCase, 'test'))
1198
1c5bc0e2ed7d *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1165
diff changeset
97 if hasattr(backends, 'metakit'):
855
335b49965293 Forgot to add to init tests
Richard Jones <richard@users.sourceforge.net>
parents: 759
diff changeset
98 l.append(unittest.makeSuite(metakitClassicTestCase, 'test'))
1528
96cd422532ef bye bye gadfly - you served your purpose well [SF#701127]
Richard Jones <richard@users.sourceforge.net>
parents: 1483
diff changeset
99 if hasattr(backends, 'mysql'):
96cd422532ef bye bye gadfly - you served your purpose well [SF#701127]
Richard Jones <richard@users.sourceforge.net>
parents: 1483
diff changeset
100 l.append(unittest.makeSuite(mysqlClassicTestCase, 'test'))
1198
1c5bc0e2ed7d *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1165
diff changeset
101 if hasattr(backends, 'sqlite'):
1165
14467c765167 sqlite backend!
Richard Jones <richard@users.sourceforge.net>
parents: 1111
diff changeset
102 l.append(unittest.makeSuite(sqliteClassicTestCase, 'test'))
1111
a7a1f6098263 test gadfly init
Richard Jones <richard@users.sourceforge.net>
parents: 1094
diff changeset
103
203
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
104 return unittest.TestSuite(l)
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
105
23bc73d13edf added tests for roundup.init
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
106 # vim: set filetype=python ts=4 sw=4 et si

Roundup Issue Tracker: http://roundup-tracker.org/