Mercurial > p > roundup > code
view test/test_anydbm.py @ 4878:f6e76a03b502
HTML* classes for cgi are now all new-style
Add regression test for old behaviour: Lookup of a value of a
HTMLProperty was possibly via getitem -- for old-style classes this
worked because __getattr__ returned the __getitem__ of a newly created
HTMLItem object, this does no longer work for new-style classes as these
look up special method only on the class not the instance.
| author | Ralf Schlatterbeck <rsc@runtux.com> |
|---|---|
| date | Sat, 29 Mar 2014 10:52:20 +0100 |
| parents | 6e3e4f24c753 |
| children | 63c79c0992ae |
line wrap: on
line source
# # Copyright (c) 2001 Bizar Software Pty Ltd (http://www.bizarsoftware.com.au/) # This module is free software, and you may redistribute it and/or modify # under the same terms as Python, so long as this copyright message and # disclaimer are retained in their original form. # # IN NO EVENT SHALL BIZAR SOFTWARE PTY LTD BE LIABLE TO ANY PARTY FOR # DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING # OUT OF THE USE OF THIS CODE, EVEN IF THE AUTHOR HAS BEEN ADVISED OF THE # POSSIBILITY OF SUCH DAMAGE. # # BIZAR SOFTWARE PTY LTD SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, # BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS # FOR A PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS" # BASIS, AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE, # SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. import unittest, os, shutil, time from roundup.backends import get_backend from db_test_base import DBTest, ROTest, SchemaTest, ClassicInitTest, config from db_test_base import HTMLItemTest class anydbmOpener: module = get_backend('anydbm') def nuke_database(self): shutil.rmtree(config.DATABASE) class anydbmDBTest(anydbmOpener, DBTest): pass class anydbmROTest(anydbmOpener, ROTest): pass class anydbmSchemaTest(anydbmOpener, SchemaTest): pass class anydbmClassicInitTest(ClassicInitTest): backend = 'anydbm' class anydbmHTMLItemTest(HTMLItemTest): backend = 'anydbm' from session_common import DBMTest class anydbmSessionTest(anydbmOpener, DBMTest): pass def test_suite(): suite = unittest.TestSuite() print 'Including anydbm tests' suite.addTest(unittest.makeSuite(anydbmDBTest)) suite.addTest(unittest.makeSuite(anydbmROTest)) suite.addTest(unittest.makeSuite(anydbmSchemaTest)) suite.addTest(unittest.makeSuite(anydbmClassicInitTest)) suite.addTest(unittest.makeSuite(anydbmHTMLItemTest)) suite.addTest(unittest.makeSuite(anydbmSessionTest)) return suite if __name__ == '__main__': runner = unittest.TextTestRunner() unittest.main(testRunner=runner) # vim: set filetype=python ts=4 sw=4 et si
