Mercurial > p > roundup > code
view test/test_jinja2.py @ 8440:254f70dfc585
bug, refactor, test: make pragma history_length work interactively
history_length could be set interactively, but it was never used to set
readline/pyreadline3's internal state. Using the pragma setting on the
roundup-admin command line did set readline's state.
Also refactored 2 calls to self.readline.get_current_history_length()
into one call and storing in a variable. Also changed method for
creating history strings for printing.
Tests added for history_length pragma on cli and interactive use.
Added test for exiting roundup-admin with EOF on input.
Added test for 'readline nosuchdirective' error case.
Added test to readline with a command directive to set an internal
variable. This last one has no real test to see if it was successful
because I can't emulate a real keyboard/tty which is needed to test.
| author | John Rouillard <rouilj@ieee.org> |
|---|---|
| date | Sun, 31 Aug 2025 20:59:04 -0400 |
| parents | d26921b851c3 |
| children |
line wrap: on
line source
#-*- encoding: utf-8 -*- """ Testing the jinja2 templating engine of roundup-tracker. Copyright: 2016 Intevation GmbH. Author: Bernhard E. Reiter <bernhard@intevation.de> This module is Free Software under the Roundup licensing of 1.5, see the COPYING.txt file coming with Roundup. Just a test file template for now. """ import shutil # only, needed for tearDown. TODO: Remove when refactored. import unittest from . import db_test_base TESTSUITE_IDENTIFIER='jinja2' class TestCase_Zero(unittest.TestCase): def test_zero(self): self.assertEqual(True, True) class Jinja2Test(object): """Sets up and tears down an instance with database contents. Setup and teardown modelled after the use of db_test_base by several modules like test_xmlrpc and test_userauditor. TODO: Should probably be moved to a base case in db_test_base.py. """ backend = None # can be used to create tests per backend, see test_xmlrpc def setUp(self): self.dirname = '_test_' + TESTSUITE_IDENTIFIER self.instance = db_test_base.setupTracker(self.dirname, self.backend) self.db = self.instance.open('admin') def tearDown(self): self.db.close() try: shutil.rmtree(self.dirname) except OSError as error: if error.errno not in (errno.ENOENT, errno.ESRCH): raise def test_zero(self): """Do nothing just make sure that setup and teardown works.""" pass # only using one database backend for now, not sure if doing all # backends will keep the test focussed enough to be useful for the used # computing time. Would be okay to change in the future. class anydbmJinja2Test(Jinja2Test, unittest.TestCase): backend = 'anydbm' # vim: ts=4 et sts=4 sw=4 ai :
