BIND 10 trac930, updated. 7a682a158e383cd2b11f1ba49b7d80c05cb4d733 [trac930] refactor unittests - remove time.sleep from various unittests and add in the "run" method in ThreadingServerManager - adjust the sleep time (TIMEOUT_SEC) - join some small unittests (test_start_with_err, test_command_status, test_command_shutdown)
BIND 10 source code commits
bind10-changes at lists.isc.org
Wed Aug 3 03:22:33 UTC 2011
The branch, trac930 has been updated
via 7a682a158e383cd2b11f1ba49b7d80c05cb4d733 (commit)
from fee53aeaaf8c953c856f12ae3388a61abc47d2f9 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 7a682a158e383cd2b11f1ba49b7d80c05cb4d733
Author: Naoki Kambe <kambe at jprs.co.jp>
Date: Wed Aug 3 11:41:05 2011 +0900
[trac930] refactor unittests
- remove time.sleep from various unittests and add in the "run" method in
ThreadingServerManager
- adjust the sleep time (TIMEOUT_SEC)
- join some small unittests
(test_start_with_err, test_command_status, test_command_shutdown)
-----------------------------------------------------------------------
Summary of changes:
src/bin/stats/tests/b10-stats-httpd_test.py | 7 -------
src/bin/stats/tests/b10-stats_test.py | 23 ++++++++++++-----------
src/bin/stats/tests/test_utils.py | 6 ++++--
3 files changed, 16 insertions(+), 20 deletions(-)
-----------------------------------------------------------------------
diff --git a/src/bin/stats/tests/b10-stats-httpd_test.py b/src/bin/stats/tests/b10-stats-httpd_test.py
index e1c05da..870e6b9 100644
--- a/src/bin/stats/tests/b10-stats-httpd_test.py
+++ b/src/bin/stats/tests/b10-stats-httpd_test.py
@@ -78,7 +78,6 @@ class TestHttpHandler(unittest.TestCase):
self.assertTrue(type(self.stats_httpd.httpd) is list)
self.assertEqual(len(self.stats_httpd.httpd), 0)
statshttpd_server.run()
- time.sleep(TIMEOUT_SEC*8)
client = http.client.HTTPConnection(address, port)
client._http_vsn_str = 'HTTP/1.0\n'
client.connect()
@@ -175,7 +174,6 @@ class TestHttpHandler(unittest.TestCase):
statshttpd_server.run()
self.assertTrue(self.stats_server.server.running)
self.stats_server.shutdown()
- time.sleep(TIMEOUT_SEC*2)
self.assertFalse(self.stats_server.server.running)
statshttpd.cc_session.set_timeout(milliseconds=TIMEOUT_SEC/1000)
client = http.client.HTTPConnection(address, port)
@@ -213,7 +211,6 @@ class TestHttpHandler(unittest.TestCase):
lambda cmd, args: \
isc.config.ccsession.create_answer(1, "I have an error.")
)
- time.sleep(TIMEOUT_SEC*5)
client = http.client.HTTPConnection(address, port)
client.connect()
@@ -244,7 +241,6 @@ class TestHttpHandler(unittest.TestCase):
self.stats_httpd = statshttpd_server.server
self.stats_httpd.load_config({'listen_on' : [{ 'address': address, 'port' : port }]})
statshttpd_server.run()
- time.sleep(TIMEOUT_SEC*5)
client = http.client.HTTPConnection(address, port)
client.connect()
client.putrequest('HEAD', stats_httpd.XML_URL_PATH)
@@ -423,7 +419,6 @@ class TestStatsHttpd(unittest.TestCase):
self.statshttpd_server = ThreadingServerManager(MyStatsHttpd)
self.statshttpd_server.server.load_config({'listen_on' : [{ 'address': '127.0.0.1', 'port' : 65454 }]})
self.statshttpd_server.run()
- time.sleep(TIMEOUT_SEC)
self.stats_httpd.load_config({'listen_on' : [{ 'address': '127.0.0.1', 'port' : 65454 }]})
self.assertRaises(stats_httpd.HttpServerError, self.stats_httpd.open_httpd)
self.statshttpd_server.shutdown()
@@ -434,7 +429,6 @@ class TestStatsHttpd(unittest.TestCase):
self.stats_httpd = self.statshttpd_server.server
self.stats_httpd.load_config({'listen_on' : [{ 'address': '127.0.0.1', 'port' : 65455 }]})
self.statshttpd_server.run()
- time.sleep(TIMEOUT_SEC*2)
self.assertTrue(self.stats_httpd.running)
self.statshttpd_server.shutdown()
self.assertFalse(self.stats_httpd.running)
@@ -461,7 +455,6 @@ class TestStatsHttpd(unittest.TestCase):
statshttpd = statshttpd_server.server
statshttpd.load_config({'listen_on' : [{ 'address': address, 'port' : port }]})
statshttpd_server.run()
- time.sleep(TIMEOUT_SEC*2)
statshttpd_server.shutdown()
def test_open_template(self):
diff --git a/src/bin/stats/tests/b10-stats_test.py b/src/bin/stats/tests/b10-stats_test.py
index f8830eb..b2c1b7f 100644
--- a/src/bin/stats/tests/b10-stats_test.py
+++ b/src/bin/stats/tests/b10-stats_test.py
@@ -189,28 +189,28 @@ class TestStats(unittest.TestCase):
stats.SPECFILE_LOCATION = orig_spec_location
def test_start(self):
+ # start without err
statsserver = ThreadingServerManager(MyStats)
- stats = statsserver.server
- self.assertFalse(stats.running)
+ statsd = statsserver.server
+ self.assertFalse(statsd.running)
statsserver.run()
- time.sleep(TIMEOUT_SEC)
- self.assertTrue(stats.running)
+ self.assertTrue(statsd.running)
statsserver.shutdown()
- self.assertFalse(stats.running)
+ self.assertFalse(statsd.running)
- def test_start_with_err(self):
+ # start with err
statsd = stats.Stats()
statsd.update_statistics_data = lambda x,**y: ['an error']
self.assertRaises(stats.StatsError, statsd.start)
- def test_config_handler(self):
+ def test_handlers(self):
+ # config_handler
self.assertEqual(self.stats.config_handler({'foo':'bar'}),
isc.config.create_answer(0))
- def test_command_handler(self):
+ # command_handler
statsserver = ThreadingServerManager(MyStats)
statsserver.run()
- time.sleep(TIMEOUT_SEC*4)
self.base.boss.server._started.wait()
self.assertEqual(
send_command(
@@ -352,12 +352,13 @@ class TestStats(unittest.TestCase):
self.assertEqual(self.stats.update_statistics_data(owner='Dummy', foo='bar'),
['unknown module name: Dummy'])
- def test_command_status(self):
+ def test_commands(self):
+ # status
self.assertEqual(self.stats.command_status(),
isc.config.create_answer(
0, "Stats is up. (PID " + str(os.getpid()) + ")"))
- def test_command_shutdown(self):
+ # shutdown
self.stats.running = True
self.assertEqual(self.stats.command_shutdown(),
isc.config.create_answer(0))
diff --git a/src/bin/stats/tests/test_utils.py b/src/bin/stats/tests/test_utils.py
index a793dc6..f9ab969 100644
--- a/src/bin/stats/tests/test_utils.py
+++ b/src/bin/stats/tests/test_utils.py
@@ -15,9 +15,9 @@ import stats
import stats_httpd
# TODO: consider appropriate timeout seconds
-TIMEOUT_SEC = 0.01
+TIMEOUT_SEC = 0.05
-def send_command(command_name, module_name, params=None, session=None, nonblock=False, timeout=TIMEOUT_SEC*2):
+def send_command(command_name, module_name, params=None, session=None, nonblock=False, timeout=TIMEOUT_SEC):
if not session:
cc_session = isc.cc.Session()
else:
@@ -53,6 +53,8 @@ class ThreadingServerManager:
def run(self):
self.server._thread.start()
self.server._started.wait()
+ # waiting for the server's being ready for listening
+ time.sleep(TIMEOUT_SEC)
def shutdown(self):
self.server.shutdown()
More information about the bind10-changes
mailing list