diff --git a/test/test_init.py b/test/test_init.py
index 15280239e5ac468d99ee0da54a2335676d951e2e..b58d0cefa04a993467f1eb5881ff7e57faf48a68 100644 (file)
--- a/test/test_init.py
+++ b/test/test_init.py
# BASIS, AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE,
# SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
#
-# $Id: test_init.py,v 1.9 2002-05-23 04:26:05 richard Exp $
+# $Id: test_init.py,v 1.22 2003-03-18 00:50:24 richard Exp $
import unittest, os, shutil, errno, imp, sys
ae = self.assertEqual
# create the instance
- init.install(self.dirname, 'classic', self.backend)
+ init.install(self.dirname, 'classic')
+ init.write_select_db(self.dirname, self.backend)
init.initialise(self.dirname, 'sekrit')
# check we can load the package
l = db.keyword.list()
ae(l, [])
l = db.user.list()
- ae(l, ['1'])
+ ae(l, ['1', '2'])
l = db.msg.list()
ae(l, [])
l = db.file.list()
l = db.issue.list()
ae(l, [])
-class ExtendedTestCase(MyTestCase):
- backend = 'anydbm'
- def testCreation(self):
- ae = self.assertEqual
-
- # create the instance
- init.install(self.dirname, 'extended', self.backend)
- init.initialise(self.dirname, 'sekrit')
-
- # check we can load the package
- instance = imp.load_package(self.dirname, self.dirname)
-
- # and open the database
- db = instance.open()
-
- # check the basics of the schema and initial data set
- l = db.priority.list()
- ae(l, ['1', '2', '3', '4'])
- l = db.status.list()
- ae(l, ['1', '2', '3', '4', '5', '6', '7', '8'])
- l = db.keyword.list()
- ae(l, [])
- l = db.user.list()
- ae(l, ['1'])
- l = db.msg.list()
- ae(l, [])
- l = db.file.list()
- ae(l, [])
- l = db.issue.list()
- ae(l, [])
- l = db.support.list()
- ae(l, [])
- l = db.rate.list()
- ae(l, ['1', '2', '3'])
- l = db.source.list()
- ae(l, ['1', '2', '3', '4'])
- l = db.platform.list()
- ae(l, ['1', '2', '3'])
- l = db.timelog.list()
- ae(l, [])
-
class bsddbClassicTestCase(ClassicTestCase):
backend = 'bsddb'
-class bsddbExtendedTestCase(ExtendedTestCase):
- backend = 'bsddb'
class bsddb3ClassicTestCase(ClassicTestCase):
backend = 'bsddb3'
-class bsddb3ExtendedTestCase(ExtendedTestCase):
- backend = 'bsddb3'
+
+class metakitClassicTestCase(ClassicTestCase):
+ backend = 'metakit'
+
+class mysqlClassicTestCase(ClassicTestCase):
+ backend = 'mysql'
+
+class sqliteClassicTestCase(ClassicTestCase):
+ backend = 'sqlite'
def suite():
- l = [unittest.makeSuite(ClassicTestCase, 'test'),
- unittest.makeSuite(ExtendedTestCase, 'test')]
- try:
- import bsddb
- l.append(unittest.makeSuite(bsddbClassicTestCase, 'test'))
- l.append(unittest.makeSuite(bsddbExtendedTestCase, 'test'))
- except:
- print 'bsddb module not found, skipping bsddb DBTestCase'
+ l = [
+ unittest.makeSuite(ClassicTestCase, 'test'),
+ ]
-# try:
-# import bsddb3
-# l.append(unittest.makeSuite(bsddb3ClassicTestCase, 'test'))
-# l.append(unittest.makeSuite(bsddb3ExtendedTestCase, 'test'))
-# except:
-# print 'bsddb3 module not found, skipping bsddb3 DBTestCase'
+ from roundup import backends
+ if hasattr(backends, 'bsddb'):
+ l.append(unittest.makeSuite(bsddbClassicTestCase, 'test'))
+ if hasattr(backends, 'bsddb3'):
+ l.append(unittest.makeSuite(bsddb3ClassicTestCase, 'test'))
+ if hasattr(backends, 'metakit'):
+ l.append(unittest.makeSuite(metakitClassicTestCase, 'test'))
+ if hasattr(backends, 'mysql'):
+ l.append(unittest.makeSuite(mysqlClassicTestCase, 'test'))
+ if hasattr(backends, 'sqlite'):
+ l.append(unittest.makeSuite(sqliteClassicTestCase, 'test'))
return unittest.TestSuite(l)
-#
-# $Log: not supported by cvs2svn $
-# Revision 1.8 2002/05/15 03:27:16 richard
-# . fixed SCRIPT_NAME in ZRoundup for instances not at top level of Zope
-# (thanks dman)
-# . fixed some sorting issues that were breaking some unit tests under py2.2
-# . mailgw test output dir was confusing the init test (but only on 2.2 *shrug*)
-#
-# fixed bug in the init unit test that meant only the bsddb test ran if it
-# could (it clobbered the anydbm test)
-#
-# Revision 1.7 2001/10/28 22:51:38 richard
-# Fixed ENOENT/WindowsError thing, thanks Juergen Hermann
-#
-# Revision 1.6 2001/09/29 23:48:06 richard
-# Bug fix for test_init on Windows.
-# More documenation!!
-#
-# Revision 1.5 2001/08/29 06:23:59 richard
-# Disabled the bsddb3 module entirely in the unit testing. See CHANGES for
-# details.
-#
-# Revision 1.4 2001/08/07 00:24:43 richard
-# stupid typo
-#
-# Revision 1.3 2001/08/07 00:15:51 richard
-# Added the copyright/license notice to (nearly) all files at request of
-# Bizar Software.
-#
-# Revision 1.2 2001/08/05 07:45:27 richard
-# Added tests for instance initialisation
-#
-# Revision 1.1 2001/08/05 07:07:58 richard
-# added tests for roundup.init - but they're disabled until I can figure _if_
-# we can run them (import problems).
-#
-#
-#
# vim: set filetype=python ts=4 sw=4 et si