Mercurial > p > roundup > code
view test/test_memorydb.py @ 4623:4f9c3858b671
Fix another XSS with the ok- and error message, see issue2550724.
We solve this differently from the proposals in the bug-report by not
allowing *any* html-tags in ok/error messages anymore. Thanks to David
Benjamin for the bug-report and to Ezio Melotti for several proposed
fixes.
| author | Ralf Schlatterbeck <rsc@runtux.com> |
|---|---|
| date | Mon, 14 May 2012 14:17:07 +0200 |
| parents | 6e3e4f24c753 |
| children | 63c79c0992ae |
line wrap: on
line source
import unittest, os, shutil, time from roundup import hyperdb from db_test_base import DBTest, ROTest, SchemaTest, config, setupSchema import memorydb class memorydbOpener: module = memorydb def nuke_database(self): # really kill it self.db = None db = None def open_database(self): if self.db is None: self.db = self.module.Database(config, 'admin') return self.db def setUp(self): self.open_database() setupSchema(self.db, 1, self.module) def tearDown(self): if self.db is not None: self.db.close() # nuke and re-create db for restore def nukeAndCreate(self): self.db.close() self.nuke_database() self.db = self.module.Database(config, 'admin') setupSchema(self.db, 0, self.module) class memorydbDBTest(memorydbOpener, DBTest): pass class memorydbROTest(memorydbOpener, ROTest): def setUp(self): self.db = self.module.Database(config) setupSchema(self.db, 0, self.module) class memorydbSchemaTest(memorydbOpener, SchemaTest): pass from session_common import DBMTest class memorydbSessionTest(memorydbOpener, DBMTest): def setUp(self): self.db = self.module.Database(config, 'admin') setupSchema(self.db, 1, self.module) self.sessions = self.db.sessions def test_suite(): suite = unittest.TestSuite() print 'Including memorydb tests' suite.addTest(unittest.makeSuite(memorydbDBTest)) suite.addTest(unittest.makeSuite(memorydbROTest)) suite.addTest(unittest.makeSuite(memorydbSchemaTest)) suite.addTest(unittest.makeSuite(memorydbSessionTest)) return suite if __name__ == '__main__': runner = unittest.TextTestRunner() unittest.main(testRunner=runner) # vim: set filetype=python ts=4 sw=4 et si
