Mercurial > p > roundup > code
comparison test/test_mysql.py @ 1898:f3d25c512931
Remove duplication:
use a 'extra_config' attribute which is appended to the config file
for testCreation.
| author | Johannes Gijsbers <jlgijsbers@users.sourceforge.net> |
|---|---|
| date | Wed, 05 Nov 2003 21:54:57 +0000 |
| parents | 043e1b699047 |
| children | f255363e6d97 |
comparison
equal
deleted
inserted
replaced
| 1897:3ead7f982792 | 1898:f3d25c512931 |
|---|---|
| 13 # BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS | 13 # BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS |
| 14 # FOR A PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS" | 14 # FOR A PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS" |
| 15 # BASIS, AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE, | 15 # BASIS, AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE, |
| 16 # SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. | 16 # SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. |
| 17 # | 17 # |
| 18 # $Id: test_mysql.py,v 1.3 2003-11-02 08:44:17 richard Exp $ | 18 # $Id: test_mysql.py,v 1.4 2003-11-05 21:54:57 jlgijsbers Exp $ |
| 19 | 19 |
| 20 import unittest, os, shutil, time, imp | 20 import unittest, os, shutil, time, imp |
| 21 | 21 |
| 22 from roundup.hyperdb import DatabaseError | 22 from roundup.hyperdb import DatabaseError |
| 23 from roundup import init, backends | 23 from roundup import init, backends |
| 42 class mysqlSchemaTest(mysqlOpener, SchemaTest): | 42 class mysqlSchemaTest(mysqlOpener, SchemaTest): |
| 43 pass | 43 pass |
| 44 | 44 |
| 45 class mysqlClassicInitTest(ClassicInitTest): | 45 class mysqlClassicInitTest(ClassicInitTest): |
| 46 backend = 'mysql' | 46 backend = 'mysql' |
| 47 | 47 extra_config = ''' |
| 48 def testCreation(self): | |
| 49 ae = self.assertEqual | |
| 50 | |
| 51 # create the instance | |
| 52 init.install(self.dirname, 'templates/classic') | |
| 53 init.write_select_db(self.dirname, self.backend) | |
| 54 f = open(os.path.join(self.dirname, 'config.py'), 'a') | |
| 55 try: | |
| 56 f.write(''' | |
| 57 MYSQL_DBHOST = 'localhost' | 48 MYSQL_DBHOST = 'localhost' |
| 58 MYSQL_DBUSER = 'rounduptest' | 49 MYSQL_DBUSER = 'rounduptest' |
| 59 MYSQL_DBPASSWORD = 'rounduptest' | 50 MYSQL_DBPASSWORD = 'rounduptest' |
| 60 MYSQL_DBNAME = 'rounduptest' | 51 MYSQL_DBNAME = 'rounduptest' |
| 61 MYSQL_DATABASE = (MYSQL_DBHOST, MYSQL_DBUSER, MYSQL_DBPASSWORD, MYSQL_DBNAME) | 52 MYSQL_DATABASE = (MYSQL_DBHOST, MYSQL_DBUSER, MYSQL_DBPASSWORD, MYSQL_DBNAME) |
| 62 ''') | 53 ''' |
| 63 finally: | |
| 64 f.close() | |
| 65 init.initialise(self.dirname, 'sekrit') | |
| 66 | |
| 67 # check we can load the package | |
| 68 instance = imp.load_package(self.dirname, self.dirname) | |
| 69 | |
| 70 # and open the database | |
| 71 db = instance.open() | |
| 72 | |
| 73 # check the basics of the schema and initial data set | |
| 74 l = db.priority.list() | |
| 75 ae(l, ['1', '2', '3', '4', '5']) | |
| 76 l = db.status.list() | |
| 77 ae(l, ['1', '2', '3', '4', '5', '6', '7', '8']) | |
| 78 l = db.keyword.list() | |
| 79 ae(l, []) | |
| 80 l = db.user.list() | |
| 81 ae(l, ['1', '2']) | |
| 82 l = db.msg.list() | |
| 83 ae(l, []) | |
| 84 l = db.file.list() | |
| 85 ae(l, []) | |
| 86 l = db.issue.list() | |
| 87 ae(l, []) | |
| 88 | |
| 89 if hasattr(backends, 'mysql'): | 54 if hasattr(backends, 'mysql'): |
| 90 from roundup.backends import mysql as module | 55 from roundup.backends import mysql as module |
| 91 def tearDown(self): | 56 def tearDown(self): |
| 92 ClassicInitTest.tearDown(self) | 57 ClassicInitTest.tearDown(self) |
| 93 self.module.db_nuke(config) | 58 self.module.db_nuke(config) |
