Mercurial > p > roundup > code
view test/test_init.py @ 6808:375d40a9e730
Add tests to BasicDatabase and merge implementations
test/session_common.py:
add new tests:
* test set with bad __timestamps
* test get on missing item with no default
* test clear() method
* test new lifetime() method
everything below here was needed to get the tests to work across all
db's.
roundup/backends/sessions_dbm.py:
make set() validate __timestamp as float. If invalid and item is new,
set it to time.time(). If invalid and item exists keep original
timestamp.
add lifetime(key_lifetime) method. Given key_lifetime in seconds,
generate a __timestamp that will be deleted after that many seconds.
roundup/backends/sessions_rdbms.py:
make set() behave the same as session_dbm.
add lifetime method as above.
roundup/backends/sessions_sqlite.py:
import session_rdbms::BasicDatabase and override __init__.
rather than cloning all the code. Kept a few logging and sql methods.
roundup/test/memorydb.py:
make get() on a missing key return KeyError
make set() conform to dbm/rdbms implementations.
| author | John Rouillard <rouilj@ieee.org> |
|---|---|
| date | Mon, 25 Jul 2022 21:21:26 -0400 |
| parents | 198b6e810c67 |
| children |
line wrap: on
line source
#-*- encoding: utf-8 -*- import unittest, os, pprint, difflib, textwrap from roundup.init import loadTemplateInfo class TemplateInfoTestCase(unittest.TestCase): def testLoadTemplateInfo(self): path = os.path.join(os.path.dirname(__file__), '../share/roundup/templates/classic') self.maxDiff = None self.assertEqual( loadTemplateInfo(path), { 'description': textwrap.dedent('''\ This is a generic issue tracker that may be used to track bugs, feature requests, project issues or any number of other types of issues. Most users of Roundup will find that this template suits them, with perhaps a few customisations.'''), 'intended-for': 'All first-time Roundup users', 'name': 'classic', 'path': path } ) # vim: set et sts=4 sw=4 :
