Mercurial > p > roundup > code
view test/test_admin.py @ 5732:0e6ed3d72f92
Rest rate limiting code first commit. It is a bit rough and turned off
by default.
The current code is lossy. If client connections are fast enough, the
rate limiting code doesn't count every connection. So the client can
get more connections than configured if they are fast enough.
5-20% of the connections are not recorded.
| author | John Rouillard <rouilj@ieee.org> |
|---|---|
| date | Sat, 25 May 2019 16:50:25 -0400 |
| parents | 95dfdbaf5aa6 |
| children | b76be13e027e |
line wrap: on
line source
# # Copyright (C) 2007 Stefan Seefeld # All rights reserved. # For license terms see the file COPYING.txt. # from __future__ import print_function import unittest, os, shutil, errno, sys, difflib, cgi, re from roundup.admin import AdminTool from . import db_test_base from .test_mysql import skip_mysql from .test_postgresql import skip_postgresql class AdminTest(object): backend = None def setUp(self): self.dirname = '_test_admin' def tearDown(self): try: shutil.rmtree(self.dirname) except OSError as error: if error.errno not in (errno.ENOENT, errno.ESRCH): raise def testInit(self): import sys self.admin=AdminTool() sys.argv=['main', '-i', '_test_admin', 'install', 'classic', self.backend] ret = self.admin.main() print(ret) self.assertTrue(ret == 0) self.assertTrue(os.path.isfile(self.dirname + "/config.ini")) self.assertTrue(os.path.isfile(self.dirname + "/schema.py")) class anydbmAdminTest(AdminTest, unittest.TestCase): backend = 'anydbm' @skip_mysql class mysqlAdminTest(AdminTest, unittest.TestCase): backend = 'mysql' class sqliteAdminTest(AdminTest, unittest.TestCase): backend = 'sqlite' @skip_postgresql class postgresqlAdminTest(AdminTest, unittest.TestCase): backend = 'postgresql'
